Tornado is a Python web framework andasynchronous networking library, originally developed at FriendFeed. By using non-blocking network I/O, Tornadocan scale to tens of thousands of open connections, making it ideal forlong polling,WebSockets, and otherapplications that require a long-lived connection to each user.
Here is a simple “Hello, world” example web app for Tornado:
import tornado.ioloopimport tornado.webclass MainHandler(tornado.web.RequestHandler): def get(self): self.write("Hello, world")application = tornado.web.Application([ (r"/", MainHandler),])if __name__ == "__main__": application.listen(8888) tornado.ioloop.IOLoop.instance().start()
This example does not use any of Tornado’s asynchronous features; forthat see this simple chat room.
Automatic installation:
pip install tornado
Tornado is listed in PyPI andcan be installed with pip or easy_install. Note that thesource distribution includes demo applications that are not presentwhen Tornado is installed in this way, so you may wish to download acopy of the source tarball as well.
Manual installation: Download tornado-4.1.tar.gz:
tar xvzf tornado-4.1.tar.gzcd tornado-4.1python setup.py buildsudo python setup.py install
The Tornado source code is hosted on GitHub.
Prerequisites: Tornado runs on Python 2.6, 2.7, 3.2, 3.3, and 3.4. Itrequires the certifi packageon all Python versions, and the backports.ssl_match_hostname packageon Python 2. These will be installed automatically when usingpip or easy_install). Some Tornado features mayrequire one of the following optional libraries:
Platforms: Tornado should run on any Unix-like platform, althoughfor the best performance and scalability only Linux (with epoll)and BSD (with kqueue) are recommended for production deployment(even though Mac OS X is derived from BSD and supports kqueue, itsnetworking performance is generally poor so it is recommended only fordevelopment use). Tornado will also run on Windows, although thisconfiguration is not officially supported and is recommended only fordevelopment use.
This documentation is also available in PDF and Epub formats.
You can discuss Tornado on the Tornado developer mailing list, and report bugs onthe GitHub issue tracker. Links to additionalresources can be found on the Tornado wiki. New releases areannounced on the announcements mailing list.
Tornado is one of Facebook’s open source technologies. It is available underthe Apache License, Version 2.0.
This web site and all documentation is licensed under CreativeCommons 3.0.
联系客服