Tornabo学习笔记(1)-程序入口

在跟别人探讨关于现在流行使用的python web框架来说,目前多数人比较使用频次比较高的可能还是:
django ,flask,Tornabo,Falcon,bottle等
鉴于Tornabo有别于其他框架,有它特殊使用场景和应对场景,所以打算学习一下。

简介

不想介绍的太多,只需要知道它是一个强大的、可扩展的Web服务器兼Web应用框架即可!

特点

Tornabo学习笔记(1)-程序入口_第1张图片
image.png

在windows上安装

步骤
1:下载tornado包
2:解压后的文件夹放到python所在的根目录下
3:将文档名字改变成“tornado”
4:打开CMD上,进入tornado目录,运行命令python setup.py install
5:python import tornado验证是否安装成功

入口类测试验证test.py:

import tornado.httpserver
import tornado.ioloop
import tornado.options
import tornado.web

from tornado.options import define, options
define("port", default=8000, help="run on the given port", type=int)

class IndexHandler(tornado.web.RequestHandler):
    def get(self):
        greeting = self.get_argument('greeting', 'Hello')
        self.write(greeting + ', friendly user!')

if __name__ == "__main__":
    tornado.options.parse_command_line()
    app = tornado.web.Application(handlers=[(r"/", IndexHandler)])
    http_server = tornado.httpserver.HTTPServer(app)
    http_server.listen(options.port)
    tornado.ioloop.IOLoop.instance().start()

然后直接的:python test.py
或 指定端口启动 :python test.py --port=8890
使用默认的8000端口启动:

image.png

入口类中一些介绍:

导入模块说明:

tornado.httpserver — 一个无阻塞HTTP服务器的实现
tornado.ioloop — 核心的I/O循环
tornado.options — 解析终端参数
tornado.web — 包含web框架的大部分主要功能,包含RequestHandler和Application两个重要的类

options说明:

from tornado.options import define, options
define("port", default=8000, help="run on the given port", type=int)
从命令行中读取配置参数信息:
如上它可以让我们特别指定HTTP服务端口port参数信息,如没有指定,其默认值为8000

关于help:
如果用户运行程序时使用--help选项,程序将打印出所有你定义的选项(‘port’)以及你在define函数的help参数中指定的文本

比如我还可以自定义其他的参数信息:

define("port", default=8000, help="程序运行的端口port为:", type=int)
define("xxxx", default='xiaozhong', help="自定义的参数信息为:", type=str)

使用:$ python test2.py --help 运行程序


Tornabo学习笔记(1)-程序入口_第2张图片
image.png

关于IndexHandler:

我们的tornado的请求处理函数类,当处理一个请求时,会将这个类实例化,并调取与HTTP请求方式对应的方法,可以理解为是对应的路由:
如上例子是定义了get方法

httpserver说明:

然后创建了一个Tornado的Application类的实例,并且handlers定义了根路径的路由和处理函数之间的映

你可能感兴趣的:(Tornabo学习笔记(1)-程序入口)