Back to questions
Junior — Middle
65
Какую роль выполняет Gunicorn в развертывании Python-приложений и зачем он необходим?
Companies where asked
TechCore
Answer from AI
sobes.tech AI
Gunicorn — это WSGI HTTP сервер для Python-приложений. Его основная роль — принимать HTTP-запросы от клиентов и передавать их Python-приложению, работая как промежуточный слой между веб-сервером (например, Nginx) и самим приложением.
Зачем он нужен:
- Python-приложения, особенно написанные с использованием фреймворков вроде Django или Flask, не предназначены для прямой работы с интернетом и многопоточностью.
- Gunicorn запускает несколько рабочих процессов (workers), которые обрабатывают запросы параллельно, что повышает производительность и устойчивость.
- Он управляет жизненным циклом приложения, перезапускает воркеры при сбоях.
Пример запуска Flask-приложения через Gunicorn:
gunicorn myapp:app --workers 3
Здесь myapp — модуль с приложением, app — объект Flask. Gunicorn создаст 3 рабочих процесса для обработки запросов.