2011-11-17 3 views
2

웹 서비스를 개발 중입니다. 내 시스템은 다음과 같이이다 :분리 된 웹 서버 및 응용 프로그램 서버?

클라이언트 요청 -> 웹 서버 (아파치) -> 응용 프로그램 서버 (파이썬)

나는 아파치와 파이썬 간의 통신을 위해 WSGI를 사용했다.

내 질문 어떻게 웹 서버와 응용 프로그램 서버를 분리 할 수 ​​있습니까? 지금은 같은 서버에서 실행해야합니다.

답변

3

WSGI는 네트워크 프로토콜이 아니므로 WSGI 컨테이너로만 작동하는 경우에도 응용 프로그램 앞에 웹 서버를 실행해야합니다. mod_proxy를 사용하여 주 웹 서버에서 WSGI 컨테이너로의 프록시 연결.

1

+1 이그나시오의 답변입니다.

또한 WSGI 앱을 서버에서 분리하면 WSGI의 주요 이점 중 하나가 사라집니다 (서버가 wsgi 앱을 직접 호출 함). 또한 WSGI 응용 프로그램에는 서버와 직접 통신하기위한 응답 콜백이 있습니다.

서버를 앱에서 분리하는 대신, 페어링 된 페어를 함께 유지하고 nginx 및/또는 haproxy를 사용하여 여러 서버/앱 쌍에 복제하여로드 및로드 균형 조정 요청을 복제하는 방법을 고려 했습니까? 나는이 문제를 로딩하는 일반적인 해결책이라고 생각한다.

관련 문제