웹서버에서 Django Application 호출하기 위해선, WSGI 서버가 필요하고, (python manage.py runserver할수는 없자나..)
Gunicorn은 WSGI 서버의 한 종류이다.
(또 다른 WSGI 서버로 uwsgi도 있는데, Gunicorn성능이 매우 좋아져서 대부분 이걸 사용!)
* Web Server와 WAS 프레임워크
- Web Server는 정적인 HTML 페이지를 반환 (Apache, Nginx)..
- Web Server가 동적으로 데이터를 반환하도록 하기 위해서는 WAS프레임워크가 필요. (flask, django, rails, node.js)
- WAS: Web Server위에서 동작하는 서버 운영프로그램
*WSGI (위스키)가 뭐야?
- WSGI (Web Server Gateway Interface) 는 Web Server와 Web Application과 대화할 수 있는 인터페이스
즉, python script가 Web Server와 통신할 수 있도록 하는 것.
- 주요 기능
1) 웹서버의 환경정보와 콜백함수를 파이썬 스크립트에 전달해주는 기능
2) 앱에서 요청을 처리한 결과를 콜백함수를 통해 웹 서버에 전달해주는 기능
*Gunicorn
Python WSGI HTTP server의 한 종류. (WSGI 동작을 지원하는 Middleware)
구현이 심플하고 서버 리소스가 적으며, 빠른 속도로 동작
Http Proxy server로 Nginx를 쓰기를 권장함.
'Django' 카테고리의 다른 글
[Django]AWS Cloud9에서 Django 프로젝트 생성하기(2/2) (0) | 2022.10.12 |
---|---|
[Django] AWS Cloud9에서 Django 프로젝트 생성하기(1/2) (0) | 2022.10.12 |