Назад | Перейти на главную страницу

Причины использовать обратный прокси на веб-сайте, не обслуживающем статический контент (Django)?

Для веб-сайта, который я разрабатываю, весь мой статический контент размещается за пределами сайта в комбинации S3 / Cloudfront. Я просмотрел множество руководств по развертыванию приложения Django в производственной среде, и многие из них рекомендуют комбинацию Nginx (обратный прокси) + Apache. Это заявлено в предположении, что Ngnix будет использоваться для обслуживания статического содержимого, а Apache возьмет на себя всю тяжелую работу. Есть ли другие причины для использования обратного прокси, когда у меня нет статического содержимого для обслуживания? Или в этом случае можно упростить настройку сервера и просто использовать Apache?

Nginx также поможет в вашем случае. Как правило, как и любой обратный прокси-сервер, он помогает более оптимально использовать ресурсы сервера с помощью двух основных методов:

  1. Как вы правильно заметили, он обслуживает статический контент, освобождая тяжелый веб-сервер от этого.
  2. Но он также решает проблему «медленных клиентов», то есть тех клиентов, которые используют медленные соединения (коммутируемые или мобильные). Поскольку Apache довольно быстро генерирует динамическую страницу, Nginx получает ее, сохраняет во временный файл и передает его клиенту со скоростью клиента (так же, как он будет обслуживать статический контент), освобождая Apache для обслуживания другого запроса.