저는 현재 Ajax를 초당 약 4 번 실행하는 응용 프로그램을 만들고 있습니다. PHP 파일은 Ajax가 해고 될 때마다 MongoDB에 연결해야합니다. 때때로 라이브 서버 로그에 따라 추가로 3 개의 mongo 연결을 설정하게됩니다. PHP 세션 중에 새 세션을 설정하지 않고 어떻게 하나의 연결을 설정해야합니까?PHP 세션에서 몽고 연결
답변
실제로 연결 수는 문제가되지 않습니다. 드라이버는 실제로 연결 풀을 설정합니다. 복제본 세트 및 분할 클러스터에는 관리 연결도 있습니다. 여러 개의 연결을 갖는 것은 문제가되지 않습니다.
MongoDB에 대해 많은 것을 알고 있지만 저는 PHP 전문가가 아닙니다. 그러나 내가 아는 한 PHP에는 응용 프로그램 수준 변수가 없습니다. 그래서 afaik, 응용 프로그램 수준에서 연결 (풀)을 저장할 수있는 방법이 없습니다.
PHP 파일에서 연결을 열면 서버 쪽 커서가 여전히 연결에 연결되어 있기 때문에 어떤 이유로이 연결이 서버에 의해 계속 열려 있습니다. 이러한 고아 연결을 호출 해 보겠습니다. 이러한 고아 연결은 10 분 후에 서버에 의해 제거됩니다.
mongod/mongos 인스턴스가 취할 수있는 연결 제한은 20.000입니다. 그래서 당신이 사용할 수있는 많은 연결이 있습니다. 그럼에도 불구하고 당신은 당신도 그 커서를 배출 (후가 자동으로 찢어진) 또는 기능/방법/소스 파일의 끝에
$cursor->reset();
에 수동으로 해체 있는지 확인해야합니다. 그렇지 않으면 응용 프로그램에 많은 사용자가있을 때 문제가 발생할 수 있습니다.
수 없습니다. 스크립트는 serialize()
과 비슷한 형식으로 파일에 기록되며 스크립트가 종료 될 때 (또는 session_write_close()
를 호출 할 때) 데이터베이스 연결과 같이 PHP resource objects을 저장할 수 없습니다.
요청 당 여러 Mongo 연결이 표시되는 경우 PHP MongoDB 확장의 현재 버전이 실행되지 않은 것일 수 있습니다. 현재 버전 (1.3 이상)은 요청간에 자동으로 연결을 풀링합니다. 현재 버전의 드라이버로 업데이트하면 더 이상 작업 할 필요가 없습니다.
- 1. 몽고 복제 세트로 PHP 연결 오류가 발생했습니다.
- 2. 몽고 이드 관계 연결
- 3. NHibernate 세션에서 객체 연결 해제
- 4. 플러그 연결 또는 세션에서 KeyError
- 5. symfony 세션에서 PHP 세션
- 6. PHP 세션에서 값 검색
- 7. PHP 세션에서 쿠키를 설정합니까?
- 8. PHP 세션에서 오류 발생
- 9. PHP 세션에서 배열 저장
- 10. PHP 세션에서 XMLHttpRequest 사용하기
- 11. 몽고 PHP 확장은 맥
- 12. 몽고 replset phg에서 매우 느린 연결
- 13. 현재 세션에서 이름을 얻으십시오. PHP
- 14. PHP 세션에서 값을 저장하지 않습니다.
- 15. PHP 세션에서 jQuery 변수 저장
- 16. 여러 PHP 세션은 다른 세션에서
- 17. PHP 세션에서 업로드 IMG을 저장
- 18. PHP 세션에서 다중 값 저장
- 19. PHP 세션에서 도메인 모델 저장
- 20. memcache가 PHP 세션에서 작동하지 않습니다.
- 21. 몽고 DB의 PHP 드라이버 클래스
- 22. PHP 몽고 세션 핸들러와 샤딩
- 23. 연결 - 몽고 모듈은 I 연결 - 몽고 MongoDB를에 저장 세션에 모듈을 사용하고
- 24. PHP 몽고 : 공지 사항 : 몽고 :: __ 구조() : 분석 서버
- 25. lldb가 ssh 세션에서 OS X의 프로세스에 연결
- 26. 연결 - 몽고 모듈의 인스턴스는 아무 것도하지 않습니다.
- 27. 몽고 이드 : 양식으로 연결 콜백을 올바르게 사용하십시오.
- 28. 몽고 (몽고) 동급 PyMongo/몽고 엔진
- 29. 몽고
- 30. 몽고