이동식 저장소

Flask, uWSGI, nginx 본문

Tertiary/Backend

Flask, uWSGI, nginx

해스끼 2022. 9. 15. 14:55

WSGI?

Flask 서버를 debug 모드로 실행하면 다음의 경고문이 뜬다.

WARNING: This is a development server. Do not use it in a production deployment. 
Use a production WSGI server instead.

서버를 실제로 배포할 때는 WSGI 서버를 사용하라고 한다. WSGI란 무엇인가?

 

WSGI는 Web Server Gateway Interface의 약자이다. WSGI를 사용하면 Apache나 Nginx 등의 서버 소프트웨어와 애플리케이션(파이썬 프로그램)을 연결할 수 있다. 서버와 애플리케이션 사이에 있다는 뜻에서 미들웨어라고 부르기도 한다. uWSGI는 대충 WSGI의 구현체 정도 되는 모양.

 

물론 내 서버는 Flask 파일 하나뿐이긴 하지만, 연습해서 나쁠 거 없잖아?

nginx??

Nginx는 비동기 이벤트 기반의 웹 서버 소프트웨어로, apache2 대비 메모리 사용량이 적다. 엔진엑스라고 읽는다.

합하면

  • nginx: 클라이언트와 직접 통신하는 웹 서버
  • uWSGI: 서버와 파이썬 애플리케이션 사이를 연결
  • Flask: 클라이언트의 요청을 처리하여 적절한 응답을 반환하는 파이썬 라이브러리

각자의 역할을 다하는 멋진 웹 서버가 만들어진다. 서버를 구성하는 자세한 방법은 다음 글에서 설명하겠다.

 

Flask + uWSGI + nginx 환경 설정하기

지난 글에서 Flask를 정식으로 구동하기 위한 방법에 대해 공부했다. Flask는 단순히 애플리케이션일 뿐, 실제로 서버를 구현하려면 uWSGI와 nginx를 함께 사용해야 한다. Flask, uWSGI, nginx WSGI? Flask 서버

thinking-face.tistory.com

 

Comments