Подтвердить что ты не робот

Развертывание Django (fastcgi, apache mod_wsgi, uwsgi, gunicorn)

Может кто-нибудь объяснить разницу между apache mod_wsgi в режиме демона и django fastcgi в режиме с резьбой. Думаю, они используют потоки для concurrency. Предположим, что я использую nginx как front end для apache mod_wsgi.

UPDATE:

Я сравниваю django, встроенный в fastcgi (./manage.py method = threaded maxchildren = 15) и mod_wsgi в режиме "демона" (пример WSGIDaemonProcess threads = 15). Они оба используют потоки и приобретают GIL, я прав?

UPDATAE 2:

Итак, если оба они похожи, есть ли преимущества apache mod_wsgi от fastcgi. Я вижу такие плюсы fastcgi:

  • нам не нужен apache
  • мы потребляем меньше оперативной памяти
  • Я заметил, что fastcgi имеет меньшие накладные расходы

UPDATAE 3:

Теперь я доволен nginx + uwsgi.

UPDATAE 4:

Теперь я доволен nginx + gunicorn:)

4b9b3361

Ответ 1

Ни один из них не должен использовать потоки, чтобы иметь возможность обрабатывать параллельные запросы. Это зависит от того, как вы их настраиваете. Вы можете использовать несколько процессов, в которых каждый из них является одиночным, если хотите.

Подробнее о моделях mod_wsgi/потоках см. ниже:

http://code.google.com/p/modwsgi/wiki/ProcessesAndThreading

Модели аналогичны, хотя mod_wsgi обрабатывает сам процесс. Что происходит в FASTCGI, поскольку управление процессами зависит от того, какой механизм хостинга FASTCGI вы используете, и вы не говорите, что это такое.

Еще одно отличие заключается в том, что FASTCGI по-прежнему нуждается в отдельном мосте FASTCGI для WSGI, таком как flup, где mod_wsgi не нуждается ни в каком мосте, поскольку он реализует интерфейс WSGI изначально.

Наконец, процесс FASTCGI представляет собой exec/fork какого-либо процесса супервизора или веб-сервера, зависящего от механизма хостинга. В mod_wsgi процессы являются fork только для родительского процесса Apache. В общем, это не имеет большого значения, но имеет некоторые последствия.

Существуют и другие различия, но они возникают больше, потому что mod_wsgi предлагает гораздо больше функциональности и настраиваемости, чем механизм хостинга FASTCGI.

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