PHP и Django: Nginx, FastCGI и Зеленый Единорог? - PullRequest
4 голосов
/ 22 марта 2010

Мне любопытно ... Мне нужна действительно эффективная настройка для моего среза для клиента.Я не специалист по серверам и поэтому ищу хорошие надежные ресурсы, чтобы помочь мне настроить это ... Мне было рекомендовано, чтобы использование FastCGI для PHP, Green Unicorn (gunicorn) для Django и Nginx для медиа было хорошимкомбинация, чтобы PHP и Django работали на одном и том же слайсе / сервере.Это необходимо из-за наличия основного веб-сайта и администратора Django, а также наличия там форума по PHP.

Может ли кто-нибудь подтолкнуть меня к некоторым полезным ресурсам, которые помогут мне настроить это на моем слайсе?Или, по крайней мере, какие-либо мнения или комментарии по этой конкретной настройке?

Ответы [ 4 ]

2 голосов
/ 22 марта 2010

Я думаю, что одним из решений может быть использование комбинации PHP в качестве модуля apache или через FastCGI и использование модуля ap_ mod_proxy для создания обратного прокси-сервера для доступа к вашему приложению администрирования, работающему с gunicorn

Вы можете настроить как:

  • Передний HTTP-сервер Apache на порту 80: www.host.com:80
  • Backend HTTP Server gunicorn на другом порту: other.host.com:8080 или localhost: 8080 общедоступный через mod_proxy и URL, например www.host.com/admin/
  • Media HTTP Server: media.host.com, если он должен быть в той же системе, вы можете использовать mod_proxy и запустить сервер NGINX на другом TCP-порту.

Обратите внимание, что вы не сможете добиться максимальной производительности с NGINX в качестве медиа-сервера, скрытого за Apache с mod_proxy.

Эта часть настройки основана на возможности иметь более одного публичного IP-адреса в этом срезе.

1 голос
/ 31 марта 2011

Я нашел этот вопрос и почти сам пошел по пути использования Зеленого Единорога. Просто отметим, что uWSGI, похоже, дает значительно лучшую производительность, чем Green Unicorn, см. набор тестов здесь .

У Linode есть отличный способ для настройки uWSGI с Nginx в Ubuntu (он прекрасно работает и в Debian).

Я сейчас использую эту настройку и до сих пор очень доволен ею.

0 голосов
/ 02 апреля 2010

Я пытался запустить django за nginx с модулем WSGI . Он работает нормально и довольно быстро. Вам придется скомпилировать свой собственный nginx, но он действительно безболезненный.

0 голосов
/ 22 марта 2010

Для части PHP рассмотрите возможность установки любого ускорителя PHP, например eAccelerator или любого другого кэша байт-кода.
Эта является более общей статьей, но можети быть интересным для вас.
Что касается Django, я понятия не имею / опыт.

...