Хороший многопоточный веб-сервер на Python? - PullRequest
13 голосов
/ 17 октября 2008

Я ищу веб-сервер Python, который является многопоточным, а не многопроцессорным (как в случае mod_python для Apache). Я хочу, чтобы он был многопоточным, потому что я хочу иметь кэш объектов в памяти, который будет использоваться различными http-потоками. Мой веб-сервер делает много дорогих вещей и вычисляет несколько больших массивов, которые необходимо кэшировать в памяти для будущего использования, чтобы избежать повторного вычисления. Это невозможно в многопроцессорной среде веб-сервера. Хранение этой информации в memcache также не очень хорошая идея, так как массивы большие, и хранение их в memcache приведет к десериализации данных, поступающих из memcache, помимо дополнительных издержек IPC.

Я реализовал простой веб-сервер с использованием BaseHttpServer, он дает хорошую производительность, но застревает через несколько часов. Мне нужен более зрелый веб-сервер. Можно ли настроить apache для использования mod_python в потоковой модели, чтобы я мог выполнять кэширование некоторых объектов?

Ответы [ 11 ]

0 голосов
/ 18 октября 2008

Просто чтобы указать на что-то отличное от обычных подозреваемых ...

Несколько лет назад, когда я использовал Zope 2.x, я прочитал о Medusa , поскольку это был веб-сервер, используемый для платформы. Они объявили, что он хорошо работает при большой нагрузке, и он может предоставить вам требуемую функциональность.

...