인터넷에서 wsgi에 대한 몇 가지 소개를 읽었는데 기본적으로 wsgi가 무엇인지에 대해 이야기했지만 wsgi가 구체적으로 어떻게 작동하는지 설명하지 않았습니다.
간단히 말하면 django+apache로 구축된 웹 서버에서 apache가 클라이언트로부터 요청을 받으면 해당 요청을 django 코드로 전달하는 방법을 알고 싶습니다.
django 코드가 apache 프로세스에서 실행되나요, 아니면 자체 프로세스가 있고 어떤 방식으로든 통신하나요?
아파치 프로세스에서 실행되면 새로운 아파치 프로세스가 생성될 때마다 장고 코드가 다시 로드되나요?
사실, 위에서 언급한 것처럼 http를 사용할 수도 있습니다. WSGI가 더 나은 성능을 보이는 것 같습니다. 현재로서는 uwsgi.Java를 사용하고 있습니다. HTTPServer와 애플리케이션 컨테이너 간에는 유사한 통신 프로토콜이 있습니다. 두 가지 격리의 기본 장점은 httpServer 서비스를 사용하여 정적 파일을 직접 제공할 수 있다는 것입니다.
httpServer와 컨테이너는 완전히 독립적인 프로세스입니다. 정확히 말하면 2개 이상이 있을 수 있습니다. 원하는 만큼 uwsgi를 열 수 있습니다. 예를 들어 4~6개의 uwsgi 서비스 프로세스를 동시에 열 수 있습니다. 컨테이너 서비스를 제공할 시간입니다.
Apache
将请求直接转发给Django
,和直接访问Django
차이가 없습니다공식 문서
https://docs.djangoproject.com/en/1.7/howto/deployment/wsgi/modwsgi/