Tornado web server 是使用Python编写出來的一个极轻量级、高可伸缩性和非阻塞IO的Web服务器软件,著名的 Friendfeed 网站就是使用它搭建的.
Tornado 跟其他主流的Web服务器框架(主要是Python框架)不同是采用epoll非阻塞IO,响应快速,可处理数千并发连接,特别适用用于实时的Web服务.
下载和安装
1.自动安装:可使用easy_install自动安装, 不赘述
2.手动安装:tornado-2.3.tar.gz:http://pan.baidu.com/s/1dDxfksh 密码:faq3
tornado-3.2.tar.gz:http://pan.baidu.com/s/1o6uKYl8 密码:j5ex
(各版本间区别后续将单写一篇来介绍)
tar xvzf tornado-2.3.tar.gz cd tornado-2.3 python setup.py build python setup.py install
安装过程中警告可忽略, 如不出现error, 基本都会安装成功, 可在python环境中import tornado来验证是否安装成功, 如导入模块报错则表示安装成功; 如出现ImportError: No module named tornado, 则说明安装失败
使用入门
首先你要有python基础, 我们来开始经典的"hello world"吧
1 #! -*-coding:utf-8 -*- 2 #/usr/bin/env python 3 4 ''' 5 Created on 2014-03-10 16:28:08 6 @author: leaf 7 @summary: test tornado web server "hello world" 8 ''' 9 10 import tornado.httpserver 11 import tornado.ioloop 12 import tornado.options 13 import tornado.web 14 15 from tornado.options import define, options 16 17 define( "port", default = 12580, help = "run on the given port", type = int ) 18 19 class TestHandler( tornado.web.RequestHandler ): 20 def get(self): 21 self.write("Hello world!") 22 23 class Application( tornado.web.Application ): 24 def __init__(self): 25 handlers = [( r"/", TestHandler )] 26 27 tornado.web.Application.__init__(self, handlers) 28 29 if __name__ == "__main__": 30 tornado.options.parse_command_line() 31 http_server = tornado.httpserver.HTTPServer( Application() ) 32 http_server.listen( options.port ) 33 tornado.ioloop.IOLoop.instance().start()
启动程序python hello_world.py
在浏览器中输入127.0.0.1:12580/ , 看到可爱的"hello world", 完成