![]()
1,服务器socket 加入到 linux ioloop 之中,A 步骤
2,客户端socket连接到服务器socket
3,IOLoop 通过不断询问linux ioloop 拿到这个请求数据
4, 根据请求数据进行拆包(将网络层协议转换成代码,相当于uwsgi),根据路由拿到应用程序数据
5,将应用程序数据转换成 HTTP数据,并且使用服务器socket 发送到客户端socket
# coding:utf-8
import tornado.web
import tornado.ioloop
import tornado.httpserver # 新引入httpserver模块
class IndexHandler(tornado.web.RequestHandler):
"""主路由处理类"""
def get(self):
"""对应http的get请求方式"""
self.write("Hello tornado!")
if __name__ == "__main__":
app = tornado.web.Application([
(r"/", IndexHandler),
])
#A. 相当于规定了路由格式,以及socket 连接格式!
http_server = tornado.httpserver.HTTPServer(app)
http_server.listen(8000)
# B.tornado.ioloop.IOLoop.current() 表示为linux ioloop提供了代码交流
# 开启一直询问的机制,询问linux ioloop
tornado.ioloop.IOLoop.current().start()