Я прошу прощения за ответ на старый вопрос, но я наткнулся на этот вопрос и удивился, почему на него не было больше ответов.Чтобы ответить на вопрос Барта J:
Я бы хотел проанализировать RSS-каналы в приложении Tornado.Считаете ли вы, что это довольно интенсивно в вычислительном отношении?
Ну, это зависит от того, какой анализ вы делаете и на каком оборудовании :) Долгое время - это долгое время, так что если ваше приложение занимает больше, чем говорятПолсекунды, чтобы ответить, это покажется вялым - профилируйте ваше приложение.
Ключ к быстрым системам - это отличная архитектура, не столько в специфике, сколько, например, в том, какую платформу вы используете (Twisted, Tornado,Apache + PHP).У Торнадо есть асинхронный стиль обработки, и это действительно то, к чему многие сводятся, по моему мнению.Node.js, Twisted и Yaws являются примерами других асинхронных веб-серверов, которые очень хорошо масштабируются благодаря легковесному подходу и асинхронному стилю обработки.
Итак:
Когда следует использовать Tornado?
Когда он бесполезен?
Tornado хорош для обработки большого количества соединений, поскольку он может отвечать на входящий клиент, отправлять обработчик запросов и не думать оэтот клиент, пока результат обратного вызова не будет помещен в очередь событий.Так что для этого конкретного качества следует использовать Tornado, если вы хотите хорошо масштабировать при обработке большого количества запросов.Асинхронная обработка облегчает функциональную развязку и доступ к данным без совместного использования.Это действительно хорошо сочетается с дизайном без сохранения состояния, таким как REST или другими сервис-ориентированными архитектурами s.Вам также не нужно сталкиваться с порождающими потоками или процессами с чрезмерной нагрузкой, и вы можете избежать некоторых проблем с блокировкой / IPC.
Tornado не будет иметь большого значения, с другойстороны, если ваш сервер и / или хранилище данных занимает много времени для обработки запросов.Это помогает делать параллельные проекты и веб-сервисы в частности.Параллельная архитектура облегчает масштабирование вашего проекта и поддерживает низкую связь.Это мой опыт работы с Торнадо, по крайней мере.