Tornado是一个 Python Web 框架和异步网络库,最初是在FriendFeed开发的。通过使用非阻塞网络 I/O,Tornado 可以扩展到数万个打开的连接,使其成为 long
polling、 WebSocket和其他需要与每个用户长期连接的应用程序的理想选择。
Tornado大致可分为四个主要组成部分:
- 一个 Web 框架(包括RequestHandler创建 Web 应用程序的子类,以及各种支持类)
- HTTPServerHTTP(和 AsyncHTTPClient)的客户端和服务器端实现
- 一个异步网络库,包括类IOLoop 和IOStream,它们充当 HTTP 组件的构建块,也可用于实现其他协议
- 一个协程库 ( tornado.gen),它允许以比链接回调更直接的方式编写异步代码。这类似于 Python 3.5 ( ) 中引入的原生协程功能。如果可用,建议使用本机协程代替模块。async deftornado.gen
Tornado Web 框架和 HTTP 服务器一起提供了WSGI的全栈替代方案。WSGIContainer虽然可以将Tornado HTTP 服务器用作其他 WSGI 框架的容器