这个笔记是看Introduction.to.Tornado 一书时总结的。
Tornado适合创建可灵活扩展的社区程序、实时的分析引擎,以及REST风格的API。由Bret Taylor等人为FriendFeed开发,后被Facebook收购。
多数的社区程序实时更新显示新消息,状态更改以及用户提示,需要客户端一直保持连接用来等待服务器的响应。使用线程模式的服务器如apache及其comet实现很容易因为达到线程池最大值,而无法接受新的请求。
相对于使用线程模式管理缓冲池的方式,Tornado使用异步方式可以解决线程式服务器的限制。使用异步模式的服务器包括Node.js、lighttpd以及Tornado使用合作的多任务方式来平滑地扩展,以解决不断增加的负载。
一个异步的服务器在当前请求等待数据时,暂停当前的执行,并显式地交接控制权给正在等待状态中的其他请求;当数据就绪可以使用回调并返回结果。
【待续】
时间: 2024-10-10 20:19:38