Tornado 就是我们在 FriendFeed 的 Web 服务器及其常用工具的开源版本。Tornado 和现在的主流 Web 服务器框架(包括大多数 Python 的框架)有着明显的区别:它是非阻塞式服务器,而且速度相当快。得利于其 非阻塞的方式和对 epoll 的运用,Tornado 每秒可以处理数以千计的连接,因此 Tornado 是实时 Web 服务的一个 理想框架。
源码结构
application类
__init__ #application类的构造方法
self.add_handlers #生成路由规则
listen #application类的方法
HTTPServer类
__init__ #HTTPServer类的构造方法pass
listen #HTTPServer类里没有listen方法,父类TCPServer有
TCPServer类
listen
bind_sockets #绑定socket,返回一个socket列表
add_sockets(sockets) #
Tornado 的 Web 程序会将 URL 或者 URL 范式映射到 tornado.web.RequestHandler 的子类上去。在其子类中定义了 get() 或 post() 方法,用以处理不同的 HTTP 请求。
重写 RequestHandler 的方法initialize
在RequestHandler中initialize是一个空方法,
原文地址:http://lxb994.blog.51cto.com/9805112/1766728