Software:Tornado (web server)

From HandWiki
Short description: Python web server and application framework
Tornado
TornadoWebServerLogo.png
Original author(s)FriendFeed
Developer(s)Ben Darnell, Meta, Bret Taylor
Initial release2009; 15 years ago (2009)
RepositoryTornado Repository
Written inPython
Operating systemCross-platform
Available inEnglish
TypeWeb server
LicenseApache licence 2.0

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

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

  • An asynchronous MongoDB driver called Motor.
  • CouchDB drivers called corduroy and trombi.
  • Asynchronous driver for PostgreSQL wrapping psycopg called Momoko

Example

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

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

External links