나는 User라고 불리는 클래스를 가지고 있는데, 하나는 "login"이고 다른 하나는 "register"이다. "로그인"과 "등록"모두 db를 연결해야합니다. 매번 db에 연결할 필요가 있습니까 ?? db 연결 시간을 줄이기 위해 한 번만 연결할 수 있습니까? 고맙습니다.PHP에서 매번 db를 연결해야합니까?
답변
데이터베이스에 대한 연결을 열어두면 웹 서버와 데이터베이스 서버 모두에 전용 리소스가 필요하며 사용 가능한 열린 연결 수는 매우 제한적입니다 (100 범위 내). 연결 프로세스는 일반적으로 매우 빠르며 문제가되어서는 안됩니다. 최대한 빨리 연결을 열거 나 제거하면 일반적으로 확장 할 수 있습니다.
언제나처럼 간단하고 가벼운 방법을 시도해보십시오 (매번 연결될 수 있고 가능한 빨리 연결을 끊을 수 있음). 거기에서 실제로 문제가 있는지를 측정 할 수 있습니다.
예 선생님. 사용자가 로그인 액션을 수행하기 위해 애플리케이션에 연결할 때마다 o 등록 작업 DB에 대한 연결은 마지막에 열리고 닫아야합니다. Keep Alive 옵션을 사용하면 서버가 종료됩니다.
예 예 때마다 연결할 필요가 있습니다. 하지만 실제로는 사용자 이름, 호스트 및 비밀번호가 동일하면 mysql_pconnect()를 사용하여 연결 부하를 줄일 수 있습니다. 동일한 연결 DSN을 가진 활성 자원이 있는지 여부를 확인합니다. 발견되면 새로운 연결을 생성하는 대신 살아있는 한 동일한 객체를 반환합니다.
희망이 있습니다.
클래스 사용자는 생성자에서 제공되는 DB 연결 개체를 사용해야합니다. 그러면 생성자가이를 로컬 변수로 저장해야하며 login() 및 register() 메서드는이 변수에 유효한 연결 객체가 포함될 것으로 예상합니다.
그리고 이전 mysql_*
방법 대신 PDO을 사용하십시오. 이렇게하면 DB 연결이 필요한 모든 클래스간에 공유 할 수있는 연결 개체가 제공됩니다.
- 1. PHP에서 mysql에 다시 연결해야합니까?
- 2. Ruby/Rails - 매번 DB를 치지 않고 중첩 된 블록?
- 3. PHP에서 문자열을 표시하고 db를 정렬하여 제품을 표시합니다.
- 4. 맞춤 DTD에 바로 연결해야합니까?
- 5. DB를
- 6. 먼저 어떤 memcache 서버에 연결해야합니까?
- 7. 이제 Android 3.0 라이브러리에 연결해야합니까?
- 8. grails 도메인 클래스를 데이터베이스에 연결해야합니까?
- 9. DB를 테이블
- 10. 세션 변수가 포함 된 PHP 페이지를 연결해야합니까?
- 11. 어떻게 여러 컨트롤에 하나의 asp.net 검사기를 연결해야합니까?
- 12. ListBox 항목을 목록에있는 항목과 어떻게 연결해야합니까?
- 13. MySQL 서버에 자주 연결을 끊고 다시 연결해야합니까?
- 14. StringBuilder를 사용하여 두 개의 큰 문자열을 연결해야합니까?
- 15. iPhone Dev 인증서로 Xcode 3.2를 연결해야합니까?
- 16. ExpandableListView 목록 항목 "press"비헤이비어를 개발자가 연결해야합니까?
- 17. 내 안드로이드 앱이 Exchange 서버에 어떻게 연결해야합니까?
- 18. iPhone 도메인 개체의 SQLite 연결 - 매번 닫으시겠습니까?
- 19. Assembly.Load는 매번 동일한 어셈블리를로드합니까?
- 20. asp.net에서 매번 UserControl 스타일로드
- 21. 관련 레코드는 매번 삽입됩니다.
- 22. 조건을 매번 확인하십시오.
- 23. 매번 주소를 찾는 방법
- 24. 매번 PDO :: ATTR_PERSISTENT를 사용해야합니까?
- 25. Silverlight XAP이 매번 다운로드됩니다.
- 26. PHP에서 객체 지속성
- 27. sqlite DB를 csv로 내보내기
- 28. db를 메일에 저장해야합니까?
- 29. 자동 증가/다른 DB를
- 30. DB를 변경하는 Rspec 작업
+1 영구 연결을 사용할 때의 리소스 제한에 대한 경고. 가능하다면 이걸 피하려고 노력해야합니다. – wimvds
+1 멋지고 균형 잡힌 관점. – anubhava