ciclón es un conjunto de herramientas de bajo nivel de red, que proporciona soporte para HTTP 1.1 en una API muy similar a la implementada por el servidor & nbsp web Tornado; - que fue desarrollado por FriendFeed y posteriormente liberado como código abierto / software libre por parte de Facebook .
Principales diferencias entre el ciclón y Tornado
- Cyclone se basa en Twisted, por lo tanto, puede utilizarse como un protocolo de servicio web para la interconexión con cualquier otro protocolo implementado en Twisted.
- La localización se basa en el estándar Gettext en lugar de la aplicación CSV en el original de Tornado. Además, es compatible con la pluralización exactamente como Tornado hace.
- Viene con un cliente HTTP asincrónico basado en TwistedWeb, sin embargo, es totalmente compatible con una proporcionada por Tornado - que se basa en pycurl. (El código del servidor HTTP no se basa en TwistedWeb, por varias razones)
- Soporte nativo para XMLRPC y JSONRPC. (Ver la demo rpc)
- Clase de protocolo WebSocket es igual que cualquier otro Protocolo Twisted (es decir: LineReceiver; ver la demo WebSocket)
- Soporte para el envío de e-mail basado en Twisted Mail, con autenticación y TLS, además de una manera fácil de crear mensajes de texto o HTML sin formato y datos adjuntos. (Ver la demo e-mail)
- El soporte integrado para Redis, basado en txredisapi. Por lo general, necesitamos un servidor de almacenamiento en caché en memoria como memcache para aplicaciones web. Sin embargo, preferimos redis más memcache ya que admite más operaciones como pubsub, varios tipos de datos como conjuntos, hashes (dict python), y el almacenamiento persistente. Ver la demo redis para más detalles.
- Soporte para la autenticación HTTP. Vea la demostración de autenticación para los detalles
Ventajas de ser un Protocolo Twisted
- Fácil despliegue de aplicaciones, utilizando twistd.
- Apoyo RDBM vía: twisted.enterprise.adbapi.
- NoSQL apoyo a MongoDB (TxMongo) y Redis (TxRedisAPI).
- Puede combinar muchos más funcionalidad en el servidor web: envío de correos electrónicos, la comunicación con los intermediarios de mensajes, etc ...
- Se integra en proyectos basados trenzados existentes fácilmente
- Aprovecha todos los protocolos de Twisted
Parámetros
Algunos de los marcos de Python web más populares se han probado con un simple "hola mundo" aplicación con el fin de comparar el rendimiento contra el Ciclón.
Todas las pruebas se realizaron con ApacheBench (ab -n 100.000 -c 25 http: // host). Todos los servidores de proceso fueron un único subproceso, sin proxies intermedios. Django también se puso a prueba, utilizando tanto mod_python y WSGI - pero los resultados no se publican porque tal vez nos perdimos configuraciones adicionales o sintonía que condujeron a un mal desempeño
Requisitos :.
- Python
Comentarios que no se encuentran