Tornado web server 是使用Python编写出來的一个极轻量级、高可伸缩性和非阻塞IO的Web服务器软件,著名的 Friendfeed 网站就是使用它搭建的。
Tornado 跟其他主流的Web服务器框架(主要是Python框架)不同是采用epoll非阻塞IO,响应快速,可处理数千并发连接,特别适用用于实时的Web服务。
要使用它,必须按照以下套件:
1)Python(建议使用Python 2.5 / Python 2.6)
2)Simplejson(建议使用simplejson 2.0.9)
3)cURL(建议使用curl 7.19.7或以上版本)
4)Pycurl(建议使用pycurl 7.16.2.1)
5)Tornado Web Server(这才是主角,版本就照官網上最新的安裝吧)
一个最简单的服务:
import tornado.ioloop
import tornado.web
class 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()
Tornado 2.0 最大的改变:
1. 自动对模板输出进行转义(escaped),这会导致向后兼容的问题
2. 默认的 AsyncHTTPClient 实现改为 simple_httpclient
3. 支持 Python 3.2
另外 Tornado 2.0 完全不兼容以前的 1.x 版本,详细列表请看:
http://www.tornadoweb.org/documentation/releases/v2.0.0.html
下载 Tornado 2.0:tornado-2.0.tar.gz