nginx - gunicorn - django

nginx - gunicorn - django

·

1 min read

Django

Django는 runserver 명령어로 로컬에서 서버를 실행할 수 있지만, 이는 개발환경에서만 사용

Django는 자체적으로 웹서버 역할을 하지 않기 때문에, 배포할 때는 Gunicorn 같은
웹 애플리케이션 서버가 필요하다.

Gunicorn

Gunicorn은 Django 애플리케이션을 실행하는 서버

사용자가 웹 사이트에 요청을 보내면 Gunicorn은 이를 받아 Django와 소통하여 요청을 처리

Gunicorn은 Django와 웹브라우저 사이에서 요청과 응답을 주고받는 역할을 한다.

Nginx

Nginx는 사용자가 보낸 요청을 처음 받아들이는 실제 웹서버

Nginx는 이 요청을 Gunicorn으로 전달하고, Gunicorn은 Django에게 이 요청을 보내
처리하게 한다.

그 후, Django가 처리한 결과를 다시 Nginx로 보내면, Nginx는 이 결과를 사용자에게 반환한다.


Django : 웹 애플리케이션

Gunicorn : WSGI 서버로, Django와 같은 웹애플리케이션을 웹서버와 연결해주는 역할

Nginx : 실제 웹서버