Выбор ответа Junior HTTP, WSGI и ASGI спрашивают часто обновлено
Зачем nginx перед gunicorn
Вопрос
Зачем ставить nginx перед gunicorn или uvicorn?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: TLS, статика, буферизация медленных клиентов, балансировка, лимиты. Сервер приложений умеет HTTP, но нерационально тратить Python-воркер на медленного мобильного клиента, отдачу картинок или TLS. nginx буферизует запрос и ответ, отдаёт статику, завершает TLS, ограничивает размер тела и частоту запросов,…
Варианты ответа
- Без nginx Python-приложение не может принимать HTTP-запросы
- TLS, статика, буферизация медленных клиентов, балансировка, лимитыправильный ответ
- nginx выполняет Python-код быстрее gunicorn через встроенный модуль
- nginx заменяет базу данных для кеша сессий и ответов приложения
Разбор
Сервер приложений умеет HTTP, но нерационально тратить Python-воркер на медленного мобильного клиента, отдачу картинок или TLS. nginx буферизует запрос и ответ, отдаёт статику, завершает TLS, ограничивает размер тела и частоту запросов, балансирует между инстансами. Python-код он не выполняет, а кеш ответов у него есть, но это не замена БД.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.