This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages) The topic of this article may not meet Wikipedia's notability guidelines for products and services. Please help to demonstrate the notability of the topic by citing reliable secondary sources that are independent of the topic and provide significant coverage of it beyond a mere trivial mention. If notability cannot be shown, the article is likely to be merged, redirected, or deleted.Find sources: "Tornado" web server – news · newspapers · books · scholar · JSTOR (March 2019) (Learn how and when to remove this template message) This article may rely excessively on sources too closely associated with the subject, potentially preventing the article from being verifiable and neutral. Please help improve it by replacing them with more appropriate citations to reliable, independent, third-party sources. (March 2019) (Learn how and when to remove this template message) (Learn how and when to remove this template message)
Tornado
Original author(s)FriendFeed
Developer(s)Ben Darnell, Meta, Bret Taylor
Initial release2009; 13 years ago (2009)
Stable release
6.2.0[1] Edit this on Wikidata / 3 July 2022; 4 months ago (3 July 2022)
RepositoryTornado Repository
Written inPython
Operating systemCross-platform
Available inEnglish
TypeWeb server
LicenseApache licence 2.0
Websitewww.tornadoweb.org Edit this on Wikidata

Tornado is a scalable, non-blocking web server and web application framework written in Python.[2] It was developed for use by FriendFeed; the company was acquired by Facebook in 2009 and Tornado was open-sourced soon after.[3]

Performance

Tornado is noted for its high performance. Its design enables handling a large number of concurrent connections (i.e., tries to solve the "C10k problem").

Modules

Example

The following code shows a simple web application that displays "Hello World!" when visited:[4]

import asyncio

import tornado.web

class MainHandler(tornado.web.RequestHandler):
    def get(self):
        self.write("Hello, world")

def make_app():
    return tornado.web.Application([(r"/", MainHandler),])

async def main():
    app = make_app()
    app.listen(8888)
    await asyncio.Event().wait()

if __name__ == "__main__":
    asyncio.run(main())

See also

References

  1. ^ "Release v6.2.0: What's new in Tornado 6.2.0".
  2. ^ "Home - tornado - GitHub". GitHub. Retrieved 2009-09-10.
  3. ^ "Facebook open-sources real-time FriendFeed facet". CNet. Retrieved 2009-09-10.
  4. ^ "Hello, world". Retrieved 2022-09-14.