2009-11-19 10 views
2

Mysql을 사용하는 응용 프로그램을 구축하고 있는데, 실제 MySQL 서버에 대한 연결을 관리하는 가장 좋은 방법이 무엇인지 궁금합니다.C++ MySQL C API 연결 질문

아직 설계 단계에 있지만 현재 모든 쿼리와 연결을 끊기 전에 연결 (또는 오류가있는 경우 오류가 발생 함)을 테스트하기 위해 테스트를 진행하고 있습니다. 코드는 지금까지 작동했습니다.

내 앱이 설정에 따라 5/10/20/30 분마다 약간의 쿼리를 수행 할 수 있으며 그 시간까지는 SQL로는 아무 것도 할 필요가 없습니다.

그래서 응용 프로그램의 수명 동안 존재하는 지속적인 연결 (가능한 경우)을 사용하거나 응용 프로그램을 사용하기 전에 sql에 연결하는 것이 더 도움이되는지 궁금합니다. 그런 다음 연결 해제 하시겠습니까?

답변

2

한 번 연결하여 많은 쿼리를 수행하는 것이 자연히 더 효율적입니다.

그러나 성능이 프로젝트의 주요 관심사가 아닌 경우 코드에서 단순성을 목표로하는 것이 더 나은 옵션 일 수 있습니다 (특히 데이터베이스에 유일한 연결 인 경우).

영리 해지기를 원한다면 필요할 때마다 연결하고 쿼리를 중단 할 때까지 연결을 유지하십시오. 예를 들어 30 초 동안 쿼리가 없거나 그런 식으로 쿼리가없는 경우 연결을 끊습니다.

1

이 응용 프로그램의 얼마나 많은 인스턴스가 MySQL에 연결됩니까? 단지 하나 일 경우 MySQL 연결을 편의상 열어두면 문제가 발생하지 않지만 서버에 대해 열 수있는 MySQL 연결 수에 대한 (구성 가능한) 제한이 있음을 기억하십시오. 이 경우 연결을 열고 실행해야하는 쿼리를 실행 한 다음 닫는 것이 좋습니다. 쿼리 당 연결하면 응용 프로그램에 쿼리를 추가 할 때 오버 헤드가 추가됩니다.