Я пытался определить, какую комбинацию пакетов использовать для службы push-сообщений за веб-сайтом... Моя текущая идея состоит в том, чтобы использовать Tornado + Socket.IO (Tornadio) и ZMQ. Но я также рассматривал возможность участия Mongrel2. Также есть аналогичный проект под названием Brubeck, который берет начало от Tornado, используя ZMQ и Eventlet. Мой главный вопрос заключается в следующем... Я пытаюсь понять, в чем заключалась бы польза от Mongrel2, если бы я использовал Tornado. Нужен ли в таком случае Tornado? В тот момент я подумал, что просто напишу обработчик Python Mongrel2, и все. Я хотел бы сосредоточиться на использовании веб-сокетов/jssockets, поэтому использование Socket.IO было интересным, поскольку он обрабатывает всю обратную совместимость под капотом для вас.
Если рассматриваемые инструменты включают в себя: Python focus, Tornado, Mongrel2, ZMQ, Brubeck и Socket.IO, какие рекомендации вы могли бы дать для лучшего сочетания для поддержки веб-сокетов? Наличие Mongrel2 было действительно привлекательным для идеи масштабируемости и просто включения большего количества обработчиков Python.
Обновление от 01.01.2012
Сначала шел с Tornado + TornadIO + ZeroMQ и имел рабочий сервер. Но в конце концов я выучил Go (www.golang.org) и переписал свой сервер, используя чистый Go со встроенным в параллелизме. В итоге оказался быстрее, чем Python, более чем в 10 раз, даже с большим количеством функций, чем моя версия Python: http://www.justinfx.com/2011/07/28/go-language-for-python-programmers/
Кажется, что он продолжает набирать скорость, поскольку команда Go выпускает больше релизов для Go 1.0.