搜索

pdf文档 Tornado 6.2 Documentation

1.06 MB 260 页 0 下载 142 浏览 0 评论 0 收藏
语言 格式 评分
英语
.pdf
3
摘要
Tornado 6.2文档介绍了Tornado框架的更新内容,包括对异步网络库的优化、对WSGI支持的限制、WebSocket协议的改进以及各个模块的具体更新。文档强调了Tornado在处理长轮询和实时应用中的优势,并详细说明了与异步I/O和非阻塞网络通信相关的改进。此外,文档还提到了对WebSocket协议的支持以及与第三方框架和服务器的集成。
AI总结
《Tornado 6.2 文档总结》 Tornado 是一个高性能的 Python Web 框架和异步网络库,最初由 FriendFeed 开发。它通过非阻塞网络 I/O 实现了对成千上万条连接的支持,特别适合长轮询、WebSocket 和需要长时间保持连接的应用场景。 ### 核心组件 1. **Web 框架**:提供 `RequestHandler` 类用于创建 Web 应用,支持多种辅助类。 2. **HTTP 服务器和客户端**:包含 `HTTPServer` 和 `AsyncHTTPClient`,实现客户端和服务器端的 HTTP 支持。 3. **异步网络库**:基于 `IOLoop` 和 `IOStream` 提供异步网络功能,可构建其他协议。 ### 异步与非阻塞 I/O Tornado 使用单线程事件循环模型,避免了传统同步服务器为每个用户分配一个线程的高资源消耗问题。所有应用代码应尽量异步化,以充分利用单线程的高效性。 ### 主要更新(6.2 版本) 1. **WSGI 支持**:Tornado 提供 `WSGIContainer` 用于运行其他 WSGI 框架,但其性能和扩展性不如多线程 WSGI 服务器(如 gunicorn)。 2. **类型注解与兼容性**: - 引入了与 mypy 兼容的类型注解,提升代码可维护性和工具支持。 - 内部使用原生协程,性能更优。 3. **WebSocket 支持**: - 更新至最新协议(RFC 6455),支持子协议选择。 - 新增 `WebSocketHandler.write_message` 的 `binary` 参数,支持二进制消息。 4. **模块更新**: - `tornado.auth`:移除回调参数,推荐使用协outine 接口。 - `tornado.concurrent`:移除 `callback` 参数,推荐使用 future。 - `tornado.httpclient`:改进错误处理,`raise_error=False` 现在仅抑制非 200 状态码的错误。 - `tornado.httputil`:改进 `HTTPServerRequest.write` 方法,推荐使用 `request.connection` 方法。 - `tornado.ioloop`:修复多线程打开和关闭 IOLoop 时的 `KeyError`。 5. **其他改进**: - 提升异常处理能力,支持捕获 `Task` 中的异常。 - 支持 GNU Hurd 系统。 - 提升 Twisted 兼容性,支持 Twisted 11.1.0。 ### 总结 Tornado 6.2 在异步网络处理、WebSocket 支持和模块兼容性方面均有显著提升,适合需要高性能实时 Web 应用的场景。建议开发者充分利用其异步框架和 HTTP 服务器,避免使用 WSGI 容器以获得最佳性能。
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余 253 页请下载阅读 -
文档评分
请文明评论,理性发言.