【python 异步框架tornado】10分钟学习下Tornado

Tornado 在很大程度上与 Flask 一样简单,但有一个主要区别:Tornado 是专门为处理异步进程而构建的。Tornado 是一个支持异步的Web框架,通过使用非阻塞 I/O 流,它可以支撑成千上万的开放连接,效率非常高,下面我们介绍下它的安装方式。

pip install  tornado

第一个tornado程序
创建一个简单的helloworld.py


# -*- encoding=utf-8 -*-
import tornado.ioloop
import tornado.web

class MainHandler(tornado.web.RequestHandler):
    def get(self):
        self.write("Hello, world")

def make_app():
    return tornado.web.Application([(r"/", MainHandler),])

if __name__ == "__main__":
    app = make_app()
    app.listen(8888)
    tornado.ioloop.IOLoop.current().start()

在这里插入图片描述

Tornado我还是比较喜欢,可惜除了web框架之外,数据库或者其他几乎都是阻塞的。Tornado与Flask的函数形式的写法不一样,Tornado 属于class形式的写法.

既然Tornado这么好用,性能又高,为什么好像还没有Flask受欢迎呢?因为Web开发虽然看起来就是分析一下请求,给一下响应,但是远 不是这么简单,还需要和数据库打交道,Tornado自身可以写出非阻塞的代码,但是连数据库,想用ORM的时候却不行,所以也不是特别方便。因此很多人选择使用Flask或者是Django.

tornado的基础web框架模块RequestHandler封装了请求和响应。

Application核心应用类,类似于flask的app,是和服务器对接的接口,保存了路由信息,

listen方法绑定端口创建http服务器实例,但并未监听,与socket的listen不同/

1、 Tornado的优势

轻量级web框架

异步非阻塞IO处理方式

出色的抗负载能力

优异的处理性能,不依赖多进程/多线程,一定程度上解决C10K问题

WSGI全栈替代产品,推荐同时使用其web框架和HTTP服务器

2.Tornado VS Django

Django:重量级web框架,功能大而全,注重高效开发

内置管理后台

内置封装完善的ORM操作

session功能

后台管理

缺陷:高耦合

Tornado:轻量级web框架,功能少而精,注重性能优越

HTTP服务器

异步编程

WebSocket

缺陷:入门门槛较高

跟多内容:官方翻译文档请参考:http://shouce.jb51.net/tornado/index.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

东华果汁哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值