socket을 이용해서 구축할 수 있으나, low level이므로 많은 자원과 시간 소요된다
web application 서버를 구축하기 위해서 "wsgi" 인터페이스를 이용하는 "gunicorn"이나 "uwsgi"와 같은 서비스를 사용한다.
웹서버로 들어오는 request를 python 작성된 web application으로 전달해주는 인터페이스
web application의 구현을 돕는 "Flask"나 "Django"와 같은 프레임워크는 template, view를 제공하며, 자체적으로 "wsgi"를 소유하여 비교적 수가 적은 사용자 처리를 할 수 있는 서버를 갖고 있다.
하지만 web application을 depoly하게 되면 보다 많은 사용자에 대한 처리를 해야하며 그에 따라 gunicorn/uwsgi를 사용한다.
추가적으로 proxy server(reverse proxy)를 사용하여 보다 많은 request처리와 보안성을 높인다. (ex: NGiNX, Apache)
CGI (Common Gateway Interface, 웹 서버와 외부 프로그램 사이에서 정보를 주고받는 방법/규약) 중 하나로,
Python App과 웹서버(Apache, Gginx) 간의 통신 방식의 표준을 정의한 것
wsgi서버 중 하나 (대표적으로 flup, gunicorn, uswgi)
: web server와 프레임워크 (Django), 어플리케이션을 비동기로 연결해주는 Python의 표준 인터페이스
-참고-
https://www.youtube.com/watch?v=5rjhJRyu8s8&feature=youtu.be
https://velog.io/@tn841/WSGI-uWSGI-mod-wsgi
https://velog.io/@seanlion/cgi
많은 도움이 되었습니다!