WSGI

  • Web Server Gateway Interface의 약자
  • 파이썬 웹 앱을 실행하기 위한 웹서버측 구현
역사
  • 1990년대 Grisha Trubetskoy가 개발한 mod_python 모듈을 통해 파이썬 코드를 웹서버에서 실행. 단순히 파이썬 코드를 실행하기 위한 것.
  • mod_python의 개발이 정체되고 보안상 취약점이 발견되면서 표준화된 인터페이스를 만들자는 논의가 시작.
  • PEP3333 표준에 정의한 대로 WSGI서버는 그냥 WSGI 기반 앱의 Callable Object를 부르는 형태.
WSGI의 목적
  • 유연성: 웹서버와 프레임웍 선택의 제약사항을 해소.
  • 스케일링: WSGI 서버
WSGI 컨테이너는 웹서버와 다른 포트를 사용하면서 실행되는 별도 프로세스. 웹 서버가 요청을 받아서 WSGI 컨테이너로 요청을 보낸다.


WebFrameWork: Django, Flask, Bottle
웹 서버: Green Unicorn, uWSGI, mod_wsgi, gevent


PEP-0333: WSGI v 1.0 standard http://www.python.org/dev/peps/pep-0333/

PEP-3333: WSGI v 1.0.1standard http://www.python.org/dev/peps/pep-3333/


Web Server Configuration templates

https://github.com/mattmakai/underwear/tree/master/underwear/roles/web/templates


나쁜 코드로 부터 배우기


1. 그 부분의 코드가 왜 싫은지 정확히 찾아내자 (WHY)

2. 어떻게 하면 개선할 수 있을지를 고민. (HOW)

3. 좋은 코드 읽기 -나쁜 코드를 인식할 수 있게 해주는 배경지식이 된다.


https://www.fluentcpp.com/2017/11/21/using-bad-code-learn-write-great-code


+ Recent posts