Tornado入门

1.Tornado简介

tornado是一个使用Python编写的兼web框架以及服务器的framework。既能进行web application的开发,同时也内置了高性能处理的web服务器。它在处理严峻的网络流量时表现的足够强劲,但却在创建和编写时有着足够的轻量级。常规操作情况下,tornado开发的应用程序,最好部署在tornado自己的http服务器中以便发挥它最好的处理性能。

安装方式:pip install tornado

官方推荐文档:
http://python.usyiyi.cn/ 一译中文网[大量的python中文文档]
http://www.pythontab.com python中文社区
http://tornado-zh.readthedocs.io/zh/latest/guide.html tornado官方中文文档
http://docs.pythontab.com/tornado/introduction-to-tornado/ tornado一本比较友好的入门级别的书籍

2.第一个Web项目-----hello tornado

"""
    第一个Web项目-----hello tornado
"""
# 引入需要的模块

from tornado.web import RequestHandler, Application
from tornado.ioloop import IOLoop


# 定义视图处理函数

class IndexHandler(RequestHandler):
    # 重写get处理方式
    def get(self):
        # 想客户端发送一个数据
        self.write("

hello,world

") # 程序入口 if __name__ == '__main__': app = Application([ # 定义路由访问 (r'/', IndexHandler), ]) # 监听端口 app.listen(8000) # 启用tornado内置的服务器轮询监听 IOLoop.current().start()

模块解析:

tornado.web.RequestHandler:tornado web

框架核心的一个处理类,主要进行用户请求对象的处理,用户发送的各种请求方式都包含在RequestHandler中进行操作,在实际开发过程中,我们自定义的处理类要继承这个类型,重写它的各种请求处理方式,方便在程序运行过程中可以处理对应的客户端url请求。

tornado.web.Application:tornado web

框架核心的处理类,主要进行web应用程序的包装,将自定义请求处理类结合url地址[路由]可以包装在Application对象中,形成了一个完整的web应用程序[url请求\路由\处理方式(函数/类型)]。

tornado.ioloop.IOLoop:tornado web

服务器的核心处理类,主要进行用户请求的轮询遍历操作,针对客户端发起的多个请求,进行轮询处理过程。

3.tornado应用程序接收命令行参数。

"""
    tornado 应用程序接收命令行参数
"""
# 引入需要的模块
from tornado.web import Application, RequestHandler
from tornado.ioloop import IOLoop
from tornado.httpserver import HTTPServer
from tornado.options import define, options, parse_command_line

# 定义变量,用于保存端口号,这是应用程序启动的端口,默认8000,可以通过--port=8001这样的方式来指定
define("port", default=8000, help="变量保存端口,默认8000")


# 定义视图处理类
class IndexHandler(RequestHandler):
    def get(self):
        self.write("

hello par

") # 定义程序入口 if __name__ == '__main__': # 开始监听命令行数据 parse_command_line() # 构建web项目 app = Application([ (r'/', IndexHandler), ]) # 部署项目 server = HTTPServer(app) server.bind(options.port) server.start() # 轮询监听 IOLoop.current().start()
启动时定义端口号
python demo_XXX.py  --port=8001

你可能感兴趣的:(Tornado入门)