Что такое новая платформа Tornado от Facebook?

Facebook только open-sourced структура под названием Tornado.

Что это? Что это помогает сайту?

Я считаю, что Facebook использует структуру LAMP. Это полезно для небольших сайтов, которые написаны в стек LAMP?

Ответы

Ответ 1

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

Он был разработан для поддержки 10000 совместимых пользователей.

Структура отличается от большинства основных рамок веб-сервера (и конечно, большинство инфраструктур Python) потому что он не блокирует и достаточно быстро. Потому что это неблокирующий и использует epoll, он может обрабатывать тысячи одновременных постоянные соединения, что означает идеально подходит для веб-сервисов реального времени. Мы специально создали веб-сервер для обработки FriendFeed в режиме реального времени функции - каждый активный пользователь FriendFeed поддерживает открытый подключение к серверам FriendFeed. (Для получения дополнительной информации о масштабировании серверов для поддержки тысяч клиенты, см. проблему C10K.)

Он будет работать в стек LMP, но он заменяет Apache.

См. проблему C10K.

Ответ 2

Он имеет 'database' module с блокировкой запросов. Возможно, они запускают несколько экземпляров этого сервера, чтобы свести к минимуму проблемы с блокировкой, и, возможно, они не используются для полного взаимодействия друг с другом, только в некоторых частях, связанных с поведением в реальном времени (я слышал, что HTTP-соединения остаются открытыми для проверки обновлений, а поведение потоков плохо для этого).

Я не думаю, что он может использоваться в качестве универсальной структуры для любых веб-приложений.

Ответ 3

Tornado - простой, быстрый веб-сервер python и веб-инфраструктура. Он предоставляет базовую структуру для написания динамического веб-сайта. Его очень легко изучить и расширить, чтобы удовлетворить специфическую потребность в сложном веб-приложении, поскольку оно не мешает вам. Лучшая часть использования Tornado - это не создание потока на запрос, поэтому он очень хорошо подходит для большого количества запросов. Я использую его для одного из моих проектов и люблю его.