tornado--启动
-
1 from tornado import web 2 from tornado import ioloop 3 from tornado.httpserver import HTTPServer # 非阻塞服务器 4 from tornado.options import define, options 5 6 define('port', 8080, help='run port', type=int) # 自定义类型 7 8 9 class Index(web.RequestHandler): 10 def get(self): 11 self.write("hello world") 12 13 14 application = web.Application( 15 handlers=[ 16 ('/', Index) 17 ] 18 ) 19 20 21 def main(): 22 options.parse_command_line() # 打印请求信息 23 HttpServer = HTTPServer(application) # 导入非阻塞服务器 24 HttpServer.listen(options.port) # 改用服务器进行监听 25 ioloop.IOLoop.current().start() 26 27 28 if __name__ == '__main__': 29 main()
这段代码跟上次的不同之处在于新添加了两个模块,并应用起来
- HTTPServer:是一个非阻塞的,单线程的Http 服务器。一般地,应用程序很少与HttpServer类直接交互,除非在进程开始时启动服务时(甚至在使用tornado.web.Applicaiton.listen时也是间接与HttpServer交互)。
- 实例化一个HttpServer对象,将创建的app传入进去,在用实例的对象进行端口监听
- options.parse_command_line:将请求信息在控制台打印出来
- define,自定义一些配置,上面自定义了一个端口信息,第一个参数传一个字符串,需要使用的改端口的时候直接调用options.该字符串即可。