Cherrypy: многопроцессорная обработка

Я запускаю свой код Cherrypy как

python -u myApp.py

Работает нормально. Тем не менее, когда я делаю ps ax | grep myApp Я могу увидеть 21 копию python -u myApp.py Бег. Почему это и для чего это?

1 ответ

CherryPy использует несколько потоков для обработки соединений. Вы можете контролировать, сколько он использует, редактируя настройки ThreadPool.

Есть несколько подробностей о том, как рабочий поток работает в документах WSGI:

  • Прослушивающий поток сервера выполняет очень узкий цикл, вставляя входящие соединения в очередь
  • Рабочие потоки хранятся в пуле и опрашивают очередь, отбрасывая и обрабатывая каждое соединение.
  • Каждое соединение может состоять из произвольного количества запросов и их ответов

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

Другие вопросы по тегам