Основные веб-фреймворки (такие как Django, Pyramid, Rails и т. Д.) Часто работают как постоянные серверы, а отдельный веб-сервер, такой как nginx, служит в качестве внешнего интерфейса. Веб-сервер подключается через протокол, такой как FastCGI или SCGI:
browser --[http]--> nginx --[fastcgi]--> flup -> django
Это кажется мне запутанным; почему запрос конвертируется в совершенно другой протокол, когда сервер может просто запустить свой собственный HTTP-сервер?
browser --[http]--> nginx --[http]--> wsgiref -> django
Этот подход представляется более простым и более гибким, поскольку существует только один транспортный протокол и это RFC.
Тем не менее, я не думаю, что когда-либо видел, что веб-фреймворк поддерживает дизайн только для http, поэтому я предполагаю, что для этого должна быть причина.
Каковы преимущества использования здесь такого протокола, как FastCGI / SCGI?