您的位置:首页 > 理论基础 > 计算机网络

Tornado官方文档,中文翻译(一)

2014-11-03 15:12 543 查看


Tornado是一种异步的Python网络框架,源自FriendFeed。得利于对非阻塞的运用,Tornado可以处理数以千计的连接,非常适合需要长连接的应用程序。

 

传送门

下载4.0.2版本:tornado-4.0.2.tar.gz发布日志
源码(github)
邮件列表:讨论声明
Stack Overflow
Wiki

 

入门——HelloWorld

让我们从一个简单的“Hello World”例程开始:

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很重要的特点——异步,想了解更多,请查看使用了异步的例程——简单聊天室

 

安装


自动安装

pip install tornado


Tornado已经列入了PyPi,你可以使用pip或者easy_install方便地安装它。注意,这种安装方式不会得到Tornado源码发布包里的示例程序(demo),如果希望得到示例程序,请参见下面的方法。


手动安装

下载:tornado-4.0.2.tar.gz

tar xvzf tornado-4.0.2.tar.gz
cd tornado-4.0.2
python setup.py build
sudo python setup.py install


Tornado的源码是托管在GitHub上的。

 


前提

Tornado支持的版本包括:Python 2.6,2.7,3.2,3.3和3.4;
在所有的版本上,需要certifi包;
在Python 2.X版本上,需要backports.ssl_match_hostname包(如果使用pipeasy_install安装,这些依赖包都将被自动安装)
一些Tornado的功能可能还需要下面这些可选的依赖包:

unittest2,测试套件,Python 2.6版本需要安装,2.6以后的版本中就不用安装了。
concurrent.futures,Tornado建议使用的线程池,其中包含ThreadedResolver,Python 2.X版本需要安装,Python 3.X已经存在于标准库中了。
pycurl,包含以使用tornado.curl_httpclient,最低使用7.18.2版本,建议使用不低于7.21.2的版本。
Twisted,如果使用了tornado.platform.twisred,需包含;
pycares,可选的非阻塞DNS解析器,当使用线程不方便使用的时候可以考虑它;
Monotime,扩展单调时钟功能,如果经常要改变时钟,使用它可提高安全性。Python3.3版本中不再需要。


 运行环境
Tornado可以运行在所有类Unix操作系统上,不过为了更好的性能表现和可扩展性,我们建议部署在Linux(使用了epoll)或者BSD(使用了kqueue)Mac
OS虽然是BSD的衍生版本,但他的网络性能通常较差,部署在Mac OS不是我们建议的。Tornado同样可以运行于Windows系列的操作系统上,但这也不是我们建议的部署方案。

 译者:小怪博士,(大二计科系学生,通过翻译文档学习英语和技术,水平有限,如文中有误请谅解并指出,O(∩_∩)O谢谢大家)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息