
Python 웹 애플리케이션(Flask 및 Django와 같은 프레임워크로 개발된 애플리케이션)을 서버에서 실행하려면 uwsgi
, wsgi
.. gunicorn
.. 등을 사용하여 배포하고, apache2
& 와 같은 웹 서버 nginx
.
하지만 그냥 실행 python my_app.py
하면 애플리케이션이 다음과 같은 포트를 사용하여 서버에서 작동한다는 것을 알고 있습니다 mywebsite.com:5000
. 그리고 웹 서버의 프록시를 사용하여 내가 mywebsite.com:5000
원하는 곳 test.example.com
이나 원하는 곳으로 리디렉션할 수 있습니다.
그렇다면 두 가지 방법의 차이점은 무엇입니까? 어느 것을 사용해야 합니까?
감사해요.
답변1
모든 프레임워크에 해당되는 것은 아니지만 참조한 dev http 모드에서 실행할 때 django와 플라스크는 단일 스레드일 뿐입니다.
따라서 서버는 한 번에 하나의 연결만 처리할 수 있습니다. 따라서 두 개의 연결이 함께 들어오면 서버는 하나를 처리하고 다른 하나는 기다리게 합니다.
apache/nginx가 앞에 있는 wsgi 서버는 한 번에 많은 연결을 처리합니다.