Sobes.tech
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 рабочих процесса для обработки запросов.