打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Tornado Web Server

?

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.

Hello, world?

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.

Installation?

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:

  • unittest2 is needed to runTornado’s test suite on Python 2.6 (it is unnecessary on more recentversions of Python)
  • concurrent.futures is therecommended thread pool for use with Tornado and enables the use ofThreadedResolver. It is needed only on Python 2;Python 3 includes this package in the standard library.
  • pycurl is used by the optionaltornado.curl_httpclient. Libcurl version 7.18.2 or higher is required;version 7.21.1 or higher is recommended.
  • Twisted may be used with the classes intornado.platform.twisted.
  • pycares is an alternativenon-blocking DNS resolver that can be used when threads are notappropriate.
  • Monotime adds support fora monotonic clock, which improves reliability in environmentswhere clock adjustments are frequent. No longer needed in Python 3.3.

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.

Documentation?

This documentation is also available in PDF and Epub formats.

Discussion and support?

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.

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Tornado Web服务器
Tornado
R语言 | 可以愉快的更新最新版R了!
纯python实现的web: tornado性能测试
9
Compiling cufflinks 0.9.x [Archive]
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服