Я занимаюсь установкой nginx + uWSGI с несколькими приложениями, и мне интересно, должен ли я использовать динамический режим uWSGI, как описано в документе here (в динамических приложениях) или Emperor mode. Я немного склонен использовать режим императора, но, возможно, это не лучший выбор. Каковы плюсы и минусы каждого из них?nginx + uWSGI: dynamic vs emperor mode
ответ
Императорский режим предназначен для обработки сред с несколькими приложениями. Он в основном контролирует каталоги, которые вы указываете для новых приложений & событий, на которые вы хотите, чтобы они отвечали.
Плюсы:
- Вы можете изящно перезагрузить сайт, когда вы обновляете свой код, прикоснувшись файлом вассального.
- Репутация приложений при авариях & перезагрузки.
- Весы очень приятно, если вам нужно добавить несколько серверов
- дроссели ваших вассалов, чтобы предотвратить отказ в обслуживании (DoS)
Против
- Я не уверен, что они есть. Я считаю, что это предпочтительный способ запуска приложений (даже если только один).
Я не уверен на 100%, но я считаю, что запуск с настройками, представленными в документах, приведет к запуску приложения Nginx pass. Есть два вопроса, которые я вижу с этим, вы застряли с Nginx. Не сказать, что это плохо, но если вы хотите поиграть или решили перейти на другой сервер, вам может потребоваться повторить настройку. Кроме того, это не дает никаких преимуществ, о которых я упоминал ранее.
Динамический режим предназначен только для людей, прибывающих с mod_python, mod_perl или mod_wsgi в режиме без демона, которые хотят/нуждаются в аналогичной настройке. Для всех других применений (я бы сказал, 99,9% использования) Император - лучший выбор. Учитывайте, что только плагины perl и python поддерживают динамический режим, а все другие плагины обеспечивают вас императору.
Я вижу. Также режим императора, вероятно, более гибкий, поскольку для каждого приложения есть отдельный мастер-процесс и работники. – clime
Exaclty. Удачи с вашим проектом. – chirinosky