Tornado(python的web框架)
百科简介:Tornado是一种 Web 服务器软件的开源版本。Tornado 和现在的主流 Web 服务器框架(包括大多数 Python 的框架)有着明显的区别:它是异步非阻塞式服务器,而且速度相当快。
得利于其非阻塞的方式和对epoll的运用,Tornado 每秒可以处理数以千计的连接,因此 Tornado 是实时 Web 服务的一个 理想框架。
特点:
- 轻量级web框架
- 异步非阻塞IO处理方式
- 出色的抗负载能力
- 优异的处理性能,不依赖多进程/多线程
Tornado | Django | |
优点 | `轻量级web框架,功能少而精,注重性能优越 `HTTP服务器 `异步编程 `WebSocket长连接 `解决高并发 | `重量级web框架,功能大而全,注重高效开发,自带orm,template,view `内置管理后台 `内置封装完善的ORM操作 `session功能 `后台管理 |
缺点 | 入门门槛较高 | 高耦合 |
项目不大,简易搭建上手入门即可。
首先命令安装:
pip install tornado
一、创建一个python项目,在此不再赘述
二、1.创建一个TornadoController文件夹,并创建一个python类作为主入口

2.在py文件中进行如下操作:
`首先引入tornado包中的web和ioloop类,这是Tornado程序的基础。
`然后定义处理类型,要实现tornado.web.RequestHandler
`最后要使项目跑起来,要创建一个应用对象,详见贴的代码:
#-*- coding:utf-8 -*-
'''Tornado 主入口'''
import tornado.web
import tornado.ioloop
#自定义Handler处理类型,需要传入tornado.web.RequestHandler
#RequestHandler封装对请求处理的所有信息和处理方法
class TestHandler(tornado.web.RequestHandler):
#添加一个处理get请求方式的方法
#封装对应的请求方式
def get(self):
#向响应中,添加数据,通俗来说可以理解成写的形式写进响应
self.write('Hello,World!')
#运行当前文件
if __name__ == '__main__':
#创建一个应用对象
'''tornado依赖于Application类构造函数中的参数来构建路由映射规则,那这个参数有几个特点:
列表
`每一个列表项都是一个元组
`每一个元组至少包含了两个参数(为什么说至少,是因为其实还可以包含第三个参数)
`元组的第一项是一个正则表达式,用来定义路由的filter
`元组的第二项是一个类,tornado会用这个类的实例来处理相应的路由映射
'''
app = tornado.web.Application([(r'/',TestHandler)])
#绑定一个监听端口
app.listen(8080)
#启动web程序,开始监听端口的连接
'''
tornado.ioloop:核心io循环模块,封装linux的epoll和BSD的kqueue, tornado高性能处理的核心。
current()返回当前线程的IOLoop实例对象
start()启动IOLoop实力对象的IO循环,开启监听
'''
tornado.ioloop.IOLoop.current().start()
3.运行此py文件,在浏览器输入:localhost:8080即可显示程序员最喜欢的文字:Hello,World!
这是最基础,最简单的Tornado入门~