Перейти к содержимому

Nginx

Nginx — это веб-сервер и обратный прокси-сервер с открытым исходным кодом.

Что даёт

Nginx изначально проектировался под проблему C10K (обработка 10 000 одновременных соединений). В отличие от классического Apache, создающего отдельный процесс под каждый запрос, Nginx использует асинхронный событийный цикл (event loop). Один рабочий процесс (worker) обрабатывает тысячи соединений параллельно с мизерным расходом RAM.

Из-за этого Nginx редко ставят в одиночку для сложной динамики — его чаще используют как фронтенд-сервер (reverse proxy). Он принимает весь трафик из интернета, сам отдаёт картинки, CSS и JS, а тяжёлые PHP- или Python-запросы пересылает на бэкенд (Apache, Node.js, Gunicorn, PHP-FPM).

Плюсы в архитектуре:

  • Быстрая статика. Файлы с диска отдаются напрямую через системный вызов sendfile, вообще не загружая интерпретаторы языков.
  • Балансировка и отказоустойчивость. Умеет распределять запросы по пулу бэкендов (round-robin, least_conn, ip_hash) и на лету выводить из строя упавшие ноды.
  • Терминация TLS/SSL. Забирает на себя тяжёлую математику по расшифровке HTTPS-трафика, отдавая бэкенду внутри приватной сети чистый HTTP.
  • Защита бэкенда. Задерживает медленные или корявые запросы (Slowloris), сжимает ответы (gzip, brotli) и лимитирует частоту обращений через limit_req.

Как использовать

В инфраструктуре Nginx закрывает сразу несколько базовых задач.

  1. Обратный прокси и отдаче статики. В конфиге прописывают проксирование динамики через proxy_pass http://backend_upstream;, а статические файлы отдают напрямую из каталога location /static/ { root /var/www/app; }.
  2. Балансировка нагрузки. Через блок upstream задаётся группа серверов приложений. Nginx распределяет входящие запросы между ними и проверяет их доступность.
  3. Кеширование ответов. Через proxy_cache сервер кеширует ответы от бэкенда на диске. Повторные запросы от пользователей даже не доходят до базы данных или приложения.
  • Хостинг для сайта

    Хостинг для сайта

    Мощный и надежный виртуальный хостинг для сайта с поддержкой 24/7
    Подробнее
  • Почта на домене

    Почта на домене

    Позволяет создавать и использовать адреса электронной почты, привязанные к вашему доменному имени, улучшая профессиональный имидж.
    Подробнее
  • Конструктор сайтов

    Конструктор сайтов

    Генерация сайта за считанные минуты
    Подробнее