cyklon er en lav-niveau-netværk værktøjskasse, som yder støtte til HTTP 1.1 i en API meget lig den gennemføres af Tornado webserver & nbsp; - som blev udviklet af FriendFeed og senere udgivet som open source / fri software ved Facebook .
vigtigste forskelle mellem Cyclone og Tornado
- Cyclone er baseret på Twisted, hvorfor det kan anvendes som en Webservice protokol for sammenkobling med en anden protokol implementeret i Twisted.
- Lokalisering er baseret på standard Gettext stedet for CSV gennemførelse i den oprindelige tornado. Desuden understøtter pluralisering nøjagtig som Tornado gør.
- It skibe med en asynkron HTTP-klient baseret på TwistedWeb, men det er fuldt kompatibelt med én fra Tornado - der er baseret på PyCurl. (HTTP-serveren kode er ikke baseret på TwistedWeb, af flere grunde)
- Indbygget understøttelse af XMLRPC og JsonRPC. (Se RPC demo)
- WebSocket protokol klasse er ligesom alle andre Twisted Protocol (ie: LineReceiver, se WebSocket demo)
- Støtte til at sende e-mails baseret på Twisted Mail, med autentificering og TLS, plus en nem måde at skabe almindelig tekst eller HTML-beskeder og vedhæftede filer. (Se e-mail demo)
- Indbygget understøttelse af Redis, baseret på txredisapi. Vi har som regel brug for en in-memory caching server ligesom memcache for web-applikationer. Men vi foretrækker Redis end memcache fordi den understøtter flere operationer som PubSub, forskellige datatyper som sæt, hashes (python dict), og vedvarende lagring. Se Redis demo for detaljer.
- Støtte til HTTP-godkendelse. Se demo-godkendelse for detaljer
Fordele ved at være Twisted protokol
- Let udvikling af applikationer, der bruger twistd.
- RDBM support via: twisted.enterprise.adbapi.
- NoSQL støtte til MongoDB (TxMongo) og Redis (TxRedisAPI).
- Kan kombinere mange flere funktioner inden webserveren: sende e-mails, kommunikere med besked mæglere, osv ...
- Integrerer på eksisterende snoet baserede projekter nemt
- Udnytter alle Twisted protokoller
Benchmarks
Nogle af de mest populære Python web rammer er blevet testet med et simpelt "hej verden" ansøgningen for at sammenligne resultater i forhold til Cyclone.
Alle testene blev udført ved anvendelse af ApacheBench (ab -N 100000 -C 25 http: // host). Alle serverne single-threaded proces, med ingen proxies i mellem. Django blev også testet, ved hjælp af både mod_python og WSGI - men resultaterne er ikke offentliggjort, fordi vi måske forpasset ekstra konfigurationer eller tuning, som førte til dårlig performance
Krav :.
- Python
Kommentarer ikke fundet