当前位置: 首页 > 工具软件 > Tornado-Minos > 使用案例 >

tornado---简单的tornado:

巩子实
2023-12-01

简单的tornado:

一:

# tornado的基础web框架模块
# tornado核心io循环模块,封装了linux的epoll和kqueue,是tornado高效的基础
import tornado.web
import tornado.ioloo

# 类似于django中的视图
class AAA(tornado.web.RequestHandler):
    # 处理get请求
    def get(self, *args, **kwargs):
        # 给浏览器响应信息
        self.write("aaaaaaa")
        
if __name__ == "__main__":
    # 实例化一个app对象
    # application是tornadoweb框架的核心应用类,是与服务器对应的接口
    app = tornado.web.Application([
        (r"/", AAA)
    ])
    
    #app里面的listen会创建一个服务,在绑定对应的端口
    app.listen(11111)
    
    # IOLoop.current():返回当前线程的IOLoop实例
    # IOLoop.start():启动IOLoop实例的I/O循环,同时开启监听
    tornado.ioloop.IOLoop.current().start()

二:

# tornado的基础web框架模块
# tornado核心io循环模块,封装了linux的epoll和kqueue,是tornado高效的基础
import tornado.web
import tornado.ioloop
import tornado.httpserver


# 类似于django中的视图
class AAA(tornado.web.RequestHandler):
    # 处理get请求
    def get(self, *args, **kwargs):
        # 给浏览器响应信息
        self.write("aaaaaaa")


if __name__ == "__main__":
    # 实例化一个app对象
    # application是tornadoweb框架的核心应用类,是与服务器对应的接口
    app = tornado.web.Application([
        (r"/", AAA)
    ])

    # 先创建一个服务,再去绑定端口
    httpServer = tornado.httpserver.HTTPServer(app)
    httpServer.listen(11111)

    # IOLoop.current():返回当前线程的IOLoop实例
    # IOLoop.start():启动IOLoop实例的I/O循环,同时开启监听
    tornado.ioloop.IOLoop.current().start()


三:

# tornado的基础web框架模块
# tornado核心io循环模块,封装了linux的epoll和kqueue,是tornado高效的基础
import tornado.web
import tornado.ioloop
import tornado.httpserver


# 类似于django中的视图
class AAA(tornado.web.RequestHandler):
    # 处理get请求
    def get(self, *args, **kwargs):
        # 给浏览器响应信息
        self.write("aaaaaaa")


if __name__ == "__main__":
    # 实例化一个app对象
    # application是tornadoweb框架的核心应用类,是与服务器对应的接口
    app = tornado.web.Application([
        (r"/", AAA)
    ])

    # 先创建一个服务,再去绑定端口
    httpServer = tornado.httpserver.HTTPServer(app)
    httpServer.bind(11111)
    # 开启的进程数
    httpServer.start(3)

    # IOLoop.current():返回当前线程的IOLoop实例
    # IOLoop.start():启动IOLoop实例的I/O循环,同时开启监听
    tornado.ioloop.IOLoop.current().start()

比较:

一和二都是开启一个进程,但是一里面用的是app.listen,用的app里面的listen,他会自动创建一个服务然后监听对应的端口。而二里面是创建一个服务,再用这个服务里的listen去监听对应的端口。

二和三,都是先创建一个服务,再去监听端口,但是二是单进程,三是多进程。

这三种缺点:把端口等写死了。

 类似资料: