¿Cuál es el nuevo marco de Tornado de Facebook?
Pregunta
Facebook simplemente tiene un código abierto un marco denominado Tornado .
¿Qué es? ¿Qué ayuda a hacer un sitio?
Creo que Facebook usa una estructura LAMP. ¿Es útil para sitios más pequeños que están escritos bajo la pila LAMP?
Solución
Parece que es un servidor web optimizado para alta concurrencia y alta escalabilidad, pero hecho para cargas útiles más pequeñas.
Fue diseñado para admitir bien 10,000 usuarios concurrentes.
El marco es distinto de la mayoría frameworks de servidores web (y sin duda la mayoría de los marcos de Python) Porque no es bloqueante y razonablemente rápido Porque es no bloqueante y usa epoll, puede Manejar miles de simultáneas. conexiones de pie, lo que significa que Es ideal para servicios web en tiempo real. Construimos el servidor web específicamente para manejar en tiempo real de FriendFeed características - cada usuario activo de FriendFeed mantiene un abierto Conexión a los servidores de FriendFeed. (Para más información sobre la escala servidores para soportar miles de clientes, vea El problema C10K.)
Se ejecutará en una pila LMP, pero toma el lugar de Apache.
Consulte el problema C10K .
Otros consejos
Tiene módulo de 'base de datos' con consultas de bloqueo . Tal vez ejecutan varias instancias de este servidor para minimizar los problemas de bloqueo y tal vez no se use para la alimentación de amigos completa, solo en algunas partes relacionadas con el comportamiento en tiempo real (escuché que las conexiones HTTP permanecen abiertas para buscar actualizaciones, y el comportamiento de los hilos sería malo por esto).
No creo que sea utilizable como marco de propósito general para ninguna aplicación web.
Tornado es un servidor web Python simple y rápido y un marco de micro web. Su proporciona el marco muy básico para escribir un sitio web dinámico. Es muy fácil de aprender y ampliar para satisfacer las necesidades específicas de una aplicación web exigente, ya que no se interpone en su camino. La mejor parte del uso de Tornado es que no crea un hilo por solicitud, por lo que se escala muy bien para un gran número de solicitudes. Lo estoy usando para uno de mis proyectos y me encanta.