博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

tornado 模块简介

Posted on 2017-10-24 18:31  bw_0927  阅读(451)  评论(0)    收藏  举报

https://weilaihui.gitbooks.io/tornado-web/content/module/index.html

http://www.cnblogs.com/shijingjing07/tag/tornado/

https://www.kancloud.cn/kancloud/introduction_to_tornado/61351

 

 

  • web - HTTP协议实现
  • gen - 异步封装
  • testing - 单元测试
  • template - 模板实现
  • locate - 国际化支持
  • options - 配置工具
  • httpserver - HTTP服务器实现
  • iostream - 非阻塞式socket
  • ioloop - 核心I/O循环
  • httpclient - 非阻塞式HTTP客户端
  • auth - 第三方认证
  • autoreload - 自动重载实现
  • log - 日志
  • wsgi - Web Service Gateway Interface

 

  1. Core web framework

tornado.web - web框架功能模块,包括RequestHandler和Application两个重要的类
tornado.httpserver - 实现了一个无阻塞HTTP服务器
tornado.template - html模板系统(tornado后端和前端交互,构成html页面)
tornado.escape - html,json,urls等的编码解码和一些字符串操作(解决编码问题)
tornado.locale - 国际化支持(如中文,英文等)

2.Asynchronous networking底层模块
tornado.ioloop - 核心的I/O事件循环
tornado.iostream - 对非阻塞的socket的简单封装,以方便常用读写操作
tornado.httpclient - 实现了一个http客户端(支持同步,异步)
tornado.netutil - 网络应用实现,如TCPServer类

3.和其他第三方服务交互模块
tornado.auth - 使用OpenId和Oauth进行第三方登录
tornado.platform.twisted - 在Tornado上运行Twisted实现的代码
tornado.websocket - 实现和浏览器的双向通信
tornado.wsgi - 与其他python网络框架/服务器的相互操作(如flask等)

4.工具类
tornado.autoreload - 生产环境中自动检查代码更新
tormado.gen - 基于生成器的接口,可使代码异步运行
tornado.httputil - 分析http请求内容
tornado.options - 控制台终端参数
tornado.process - 多进程实现的封装
tornado.stack_context - 异步环境中对回调函数的上下文保存,异常处理
tornado.testing - 单元测试

 

 

 

下面给出使用Tornado的一个简单 "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()

  

 =======================================

http://tornado-zh.readthedocs.io/zh/latest/guide/intro.html

Tornado 大体上可以被分为4个主要的部分:

  • web框架 (包括创建web应用的 RequestHandler 类,还有很多其他支持的类).
  • HTTP的客户端和服务端实现 (HTTPServer and AsyncHTTPClient).
  • 异步网络库 (IOLoop and IOStream), 为HTTP组件提供构建模块,也可以用来实现其他协议.
  • 协程库 (tornado.gen) 允许异步代码写的更直接而不用链式回调的方式.