Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

Документы

Медиа

Назад
Вопрос про Django: wsgi, gunicorn

Как работают вместе Django, Gunicorn и Nginx?

Вопрос проверяет понимание продакшн-архитектуры Django-приложений и роли каждого компонента в цепочке обработки запроса.

Короткий ответ

Nginx принимает HTTP-запросы и проксирует их в Gunicorn. Gunicorn — это WSGI-сервер, который запускает Django-приложение и обрабатывает Python-код. Django выполняет бизнес-логику и возвращает ответ. Nginx также может раздавать статику и выполнять балансировку.

Длинный ответ

В production Django обычно не работает напрямую с интернетом — перед ним ставят WSGI-сервер и reverse proxy.

Определение: WSGI-сервер — сервер, который умеет запускать Python-приложение и обрабатывать HTTP-запросы через интерфейс WSGI.

1. Поток запроса

Последовательность:

  1. Клиент → Nginx

  2. Nginx → Gunicorn

  3. Gunicorn → Django

  4. Ответ возвращается обратно тем же путем

2. Роль каждого компонента

Django

Отвечает за:

  • маршрутизацию

  • бизнес-логику

  • ORM

  • сериализацию

Gunicorn

Отвечает за:

  • запуск нескольких worker-процессов

  • управление соединениями

  • обработку WSGI

Пример запуска:

gunicorn project.wsgi:application --workers 4

Nginx

Отвечает за:

  • TLS/HTTPS

  • статику

  • проксирование

  • ограничение соединений

3. Почему нельзя использовать встроенный сервер Django

Встроенный сервер:

  • однопоточный по умолчанию

  • не оптимизирован для production

  • не рассчитан на высокую нагрузку

4. Типичная схема

  1. Nginx слушает порт 80/443

  2. Gunicorn слушает localhost

  3. Django работает внутри Gunicorn

Вывод

Связка Django + Gunicorn + Nginx разделяет ответственность: Django — логика, Gunicorn — выполнение Python, Nginx — сеть и производительность.

Уровень

  • Рейтинг:

    5

  • Сложность:

    6

Навыки

  • Django

    Django

Ключевые слова

#wsgi

#gunicorn

Подпишись на Python Developer в телеграм