2009-03-30 9 views
2

여러 PHP 페이지에서 리소스 링크를 전송 및/또는 공유하는 트릭이 있습니까? 동일한 데이터베이스에서 동일한 사용자에 대한 다른 링크를 얻기 위해 서버가 계속 데이터베이스에 연결되는 것을 원하지 않습니다.여러 PHP 페이지에서 MySQL 데이터베이스 링크 이전

mysql_connect()에서 반환 된 링크는 시작된 스크립트가 실행을 완료 한 후 자동으로 닫힙니다. 그 대신에 각 세션이 종료 될 때 수동으로 닫을 수 있습니까?

답변

4

PHP는 영구적 인 mysql 연결을 허용하지만 there are drawbacks. 가장 중요한 점은 유휴 아파치 아이들이 유휴 데이터베이스 연결을 열어 놓고 앉아 있다는 것입니다. 데이터베이스 연결은 상당한 양의 메모리를 차지하므로 실제 사용할 때만 열려 있어야합니다.

사용자가 1 분마다 한 페이지를 열면 사용하지 않는 매분 59 초 동안 데이터베이스 연결을 닫은 다음 필요시 열어 두는 것보다 훨씬 더 좋습니다 계속.

대신 연결 풀링을 고려해야합니다.

0

다른 무거운 데이터베이스 서버에 비해 MySQL의 장점 중 하나는 연결 비용이 저렴하고 설치가 쉽다는 것입니다.

저장 정보를 검색하는 데 많은 연결이 필요하다면 대신 정보 캐싱이나 디스크에서 정보를 가져 오는 것과 같은 일을 볼 수 있습니다. 평소처럼 숫자의 프로파일 링과 SQL에 대한 호출 유형을 통해 실제로 다음에 수행해야하는 작업을 추측하는 사람보다 훨씬 많은 것을 알 수 있습니다.