Tornado (Webserver)

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen
Tornado

TornadoWebServerLogo.png
Basisdaten

Entwickler Facebook, Bret Taylor
Erscheinungsjahr 2009
Aktuelle Version 6.0.3[1]
(23. Juni 2019)
Betriebssystem plattformunabhängig
Programmiersprache Python
Kategorie Webserver, Webframework
Lizenz Apache-Lizenz 2.0
www.tornadoweb.org

Tornado ist ein freier, nicht-blockender Webserver sowie ein einfaches Mikro-Webframework in Python.[2] Die Entwicklung begann bei FriendFeed und wurde unter einer Open-Source-Lizenz veröffentlicht[3][4], nachdem es zur Übernahme von FriendFeed durch Facebook kam.[5]

Leistung[Bearbeiten | Quelltext bearbeiten]

Anfragen an den Tornado Webserver werden nicht blockend bearbeitet (unter Linux mit epoll, unter BSD mit kqueue)[6] und ermöglicht damit eine sehr große Anzahl an Anfragen gleichzeitig zu bearbeiten und aufrechtzuerhalten. Die Entwicklung erfolgte mit dem Hintergrund des C10K-Problems[7] und Benchmarks zeigen Zahlen von fast 10.000 bearbeiteten Anfragen pro Sekunde.

Performance-Vergleich mit dem AMD Opteron, 2,4 GHz und vier Kernen[8]
Server Setup Anfragen pro Sekunde
Tornado Mit der geläufigen produktiven Umsetzung von 4 Tornadoinstanzen und nginx als Proxy. 8213
Tornado Standalone 3353
Django Apache/mod wsgi 2223
web.py Apache/mod_wsgi 2066
CherryPy Standalone 785

Module[Bearbeiten | Quelltext bearbeiten]

Tornado stellt Mixins für die Authentifizierungssysteme OpenID und OAuth zur Verfügung, mit vereinfachter Anbindung an die Authentifizierungsschnittstellen von Google, Facebook Connect und Twitter.

Mit dem Decorator tornado.web.asynchronous werden Anfragen nicht direkt beendet, sondern aufrechterhalten. Eine Beispielanwendung von Tornado zeigt die Verwendung im FriendFeeds Chatsystem.

Daneben stehen die gängigen Komponenten eines Mikro-Webframeworks zur Verfügung:

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. Release 6.0.3. 23. Juni 2019 (abgerufen am 24. Juni 2019).
  2. Hauptseite des Tornado Projects (englisch) Abgerufen am 5. April 2013.
  3. Liste der OpenSource Projecte von Facebook (englisch) Abgerufen am 5. April 2013.
  4. Talking about Tornado (englisch) 25. September 2009. Abgerufen am 22. Oktober 2013.
  5. Facebook Acquires FriendFeed (englisch) 10. September 2009. Abgerufen am 22. Oktober 2013.
  6. Installationshinweis zu Tornado (englisch) Abgerufen am 5. April 2013.
  7. Dory, Michael, Adam Parrish, and Brendan Berg. Introduction to Tornado. O’Reilly Media, 2012.
  8. Tornado: Facebook’s Real-Time Web Framework for Python (englisch) 11. September 2009. Archiviert vom Original am 23. Dezember 2009. i Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/developers.facebook.com Abgerufen am 22. Oktober 2013.