2013-10-11 2 views
1

내 사무실에서 내부적으로 사용할 수있는 간단한 응용 프로그램을 작성하고 있습니다. 아마 1000 명이 내가 말한다. 세션 처리, 사용자 처리가 없습니다. 이것은 장고의 저장소/뷰 프로세스 일뿐입니다.django with mysql '최대 연결 수'는 무엇입니까?

내가 아는 것이 있습니까?

1) django가 닫히면 각 요청에서 데이터베이스 연결이 다시 열립니다. 2) mysql은 최대 연결 수의 임계 값을 가지고 있습니다.

내 질문은 무엇입니까?

1) 최대 연결 수 -> 10 명의 사용자가 데스크톱 브라우저를 통해 내 URL에 액세스한다고 가정 해 보겠습니다. Django가 요청을 처리하기 위해 10 개의 독립적 인 연결을 생성한다는 것을 의미합니까?

2) 내가 영속성/비 지속성을 사용하는 경우 프로그래머로서 코딩 부분에서주의를 기울여야합니까?. ie : Django와 같은 검사가 필요합니까?

if <Connection is valid> 
then 
    Initiate transaction 

친절하게 제 질문을 명확히합니다. 질문이 아주 기본적인 경우 용서해주십시오.

+0

1,000 명의 사용자가 사용하는 앱의 경우 걱정할 필요가 없습니다. –

+0

답장을 보내 주셔서 감사합니다. 다만 제 이해의 목적으로 만 부탁드립니다. 친절히 조언하나요? – Whoami

답변

1

데이터베이스와 관련된 Django 문서에 따르면 Django는 데이터베이스 쿼리를 처음 만들 때 데이터베이스에 대한 연결을 엽니 다. 이 연결을 계속 유지하고 후속 요청에서 다시 사용합니다. Django는 CONN_MAX_AGE에 의해 정의 된 최대 수명을 초과하거나 더 이상 사용할 수없는 경우 연결을 닫습니다.

CONN_MAX_AGE의 기본값은 0이며, 각 요청이 끝날 때 데이터베이스 연결을 닫는 동작을 유지합니다. 지속적 연결의 경우 CONN_MAX_AGE를 양의 정수 (초)로 설정해야합니다. 무제한 영구 연결의 경우에는 없음으로 설정하십시오.

첫 번째 질문에 대한 대답은 CONN_MAX_AGE 플래그 값 설정에 따라 달라집니다. 10 명의 사용자 각각에 대해 0으로 설정하고 예를 설정하면 10 개의 다른 연결을 사용합니다.

두 번째 질문에 대한 대답은 유효한 연결을 확인하는 데 신경 쓸 필요가 없다는 것입니다. 장고 데이터베이스 레이어가 모든 것을 수행한다고 생각하기 때문입니다.

다음 URL을 살펴보면 모든 것이 설명되어 있습니다. 이 당신을 도울 것입니다

Django Databases

Django Persistent DB connections

희망.

관련 문제