多语言展示
当前在线:399今日阅读:60今日分享:41

python高性能异步web框架tornado解读

一、简介:Tornado全称Tornado Web Server,是一个用Python语言写成的Web服务器兼Web应用框架,由FriendFeed公司在自己的网站FriendFeed中使用,被Facebook收购以后框架以开源软件形式开放给大众。二、特点:作为Web框架,是一个轻量级的Web框架,类似于另一个Python web 框架Web.py,其拥有异步非阻塞IO的处理方式。作为Web服务器,Tornado有较为出色的抗负载能力,官方用nginx反向代理的方式部署Tornado和其它Python web应用框架进行对比,结果最大浏览量超过第二名近40%。三、性能:Tornado有着优异的性能。它试图解决C10k问题,即处理大于或等于一万的并发,下表是和一些其他Web框架与服务器的对比:处理器为 AMD Opteron, 主频2.4GHz, 4核服务部署请求/每秒Tornadonginx, 4进程8213Tornado1个单线程进程3353DjangoApache/mod_wsgi2223web.pyApache/mod_wsgi2066CherryPy独立785四、安装步骤:1.开发语言:python 2.7.52.依赖软件(1).安装setuptools下载地址:https://pypi.python.org/pypi/setuptools#wget https://pypi.python.org/packages/xxx/setuptools-xxx.tar.gz#tar xf setuptools-xxx.tar.gz#cd setuptools-xxx#python setup.py install(2).安装pip下载地址:https://pypi.python.org/pypi/pip#wget https://pypi.python.org/packages/xxx/pip-xxx.tar.gz#tar xf pip-xxx.tar.gz#cd pip-xxx#python setup.py install(3).安装tornado#pip install tornado五、代码及效果1.代码分析tornado.options.parse_command_line() # 设置默认命令行解析sockets = tornado.netutil.bind_sockets(options.port) # 绑定端口创建套接字tornado.process.fork_processes(0) # 开启多进程,0表示自动识别CPU核心数http_server = tornado.httpserver.HTTPServer(CustomApplication(configs, urls)) # 创建http服务http_server.add_sockets(sockets) # 将套接字添加到http服务中tornado.ioloop.IOLoop.instance().start() # 启动io事件循环2.启动服务#python index.py #运行脚本启动服务,打开浏览器输入:localhost:9999注:由于我的电脑是8核,所以默认启动8个进程3.代码截图:
推荐信息