Как запустить несколько процессов / потоков / внешних интерфейсов Tornado? - PullRequest
5 голосов
/ 02 октября 2009

В документации торнадо они показывают, как они могут иметь очень большую пропускную способность из 4 внешних интерфейсов . Я хотел бы запустить приложение таким же образом и хотел бы, чтобы внешние интерфейсы работали как процессы демона, управляемые сценарием init.d *.

Я довольно новичок в Python, поэтому не знаю, с чего начать. В настоящее время я запускаю сервер Tornado вручную в терминале, каждый раз передавая новый номер порта.

Я пытался использовать пакет python-daemon в сочетании с пакетом lockfile , но в созданных файлах блокировки нет идентификаторов процессов, и я могу ' позже мы увидим, как потом корректно завершить процессы.

Я действительно не знаю, куда идти отсюда, и документы Торнадо оставляют большой кусок в отношении развертывания.

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

Ответы [ 2 ]

6 голосов
/ 02 октября 2009

Попробуйте Супервизор . Это отлично подходит для управления несколькими процессами демона. Вы настраиваете свои приложения в файле supervisord.conf, а сам supervisord запускается из сценария init.d.

1 голос
/ 17 ноября 2009

Я тоже могу поручиться за Супервизора. Мы использовали торнадо в производстве с 4 экземплярами, используя супервизор, и он работает очень гладко

...