使用python编写的网络框架和高性能的异步网络库
适用于大量链接、长轮询、WebSockets应用
微框架、高性能
异步支持
轮子少
不适合复杂的CMS(内容管理系统)应用
适合构建网站或者APP后端微服务
官方文档:Tornado Web Server — Tornado 6.2 documentation
https://github.com/tornadoweb/tornado
《Introduction to Tornado》
pip install tornado
python解释器里,pip install tornado;tornado.version
从github克隆代码git clone https://github.com/tornadoweb/tornado.git
尝试执行hello word
执行时遇到问题
AttributeError: module ‘asyncio‘ has no attribute ‘run‘_XerCis的博客-CSDN博客
python版本低于3.7需要改为
if __name__ == "__main__":
# asyncio.run(main())
asyncio.get_event_loop().run_until_complete(main())
或者在大于python3.7的版本即可运行。
运行起来后,在浏览器输入ip:端口可看到返回值。(注意如果脚本执行在本地则直接可以在浏览器访问,如果脚本执行在开发机,则需要开发机配置nginxip访问本地)
或者使用curl http://9.134.164.230:8888/也可以返回hello world
综上,可以使用curl 或者 web浏览器验证
web框架一般提供http处理,路由转发、表单验证、orm数据库层等。Tornado只提供路由,http、模板渲染。异步httpserve
Tornado.web Application和RequestHandler类处理http请求
tornado.template模板渲染
tornado.routing处理路由