Tornado (web server)
Encyclopedia
Tornado is a scalable, non-blocking web server
Web server
Web server can refer to either the hardware or the software that helps to deliver content that can be accessed through the Internet....

 and web application framework
Web application framework
A web application framework is a software framework that is designed to support the development of dynamic websites, web applications and web services. The framework aims to alleviate the overhead associated with common activities performed in Web development...

. It was developed for use by FriendFeed
FriendFeed
FriendFeed is a real-time feed aggregator that consolidates the updates from social media and social networking websites, social bookmarking websites, blogs and micro-blogging updates, as well as any other type of RSS/ Atom feed...

; the company was acquired by Facebook
Facebook
Facebook is a social networking service and website launched in February 2004, operated and privately owned by Facebook, Inc. , Facebook has more than 800 million active users. Users must register before using the site, after which they may create a personal profile, add other users as...

 in 2009 and Tornado was open-sourced soon after.

Performance

Tornado is noted for its high performance. It tries to solve the C10k problem
C10k problem
The C10k problem refers to the problem of optimising web server software to handle a large number of clients at the same time . The problem of web server optimisation has been studied because a number of factors must be considered to allow a web server to support many clients...

 affecting other servers. The following table shows a benchmark test of Tornado against other servers:
Performance on AMD Opteron, 2.4GHz, 4 Cores
Server Setup Requests per Second
Tornado nginx
Nginx
nginx is a Web server and a reverse proxy server for HTTP, SMTP, POP3 and IMAP protocols, with a strong focus on high concurrency, performance and low memory usage. It is licensed under a BSD-like license and it runs on Unix, Linux, BSD variants, Mac OS X, Solaris, and Microsoft Windows.- Overview...

, 4 frontends
8213
Tornado 1 single threaded frontend 3353
Django Apache/mod wsgi
Mod wsgi
mod_wsgi is an Apache HTTP Server module by Graham Dumpleton that provides a WSGI compliant interface for hosting Python 2.3+ based web applications under Apache. As of version 3.0, mod_wsgi supports Python 2.6 and 3.1...

2223
web.py Apache/mod_wsgi 2066
CherryPy
CherryPy
CherryPy is an object-oriented web application framework using the Python programming language. It is designed for rapid development of web applications by wrapping the HTTP protocol but stays at a low level and does not offer much more than what is defined in RFC .CherryPy can be a web server...

standalone 785

See also

  • Python (programming language)
    Python (programming language)
    Python is a general-purpose, high-level programming language whose design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...

  • Comparison of web server software
    Comparison of web server software
    -Overview:-Features:- Operating system support :...

  • FriendFeed
    FriendFeed
    FriendFeed is a real-time feed aggregator that consolidates the updates from social media and social networking websites, social bookmarking websites, blogs and micro-blogging updates, as well as any other type of RSS/ Atom feed...


External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK