欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Tornado Web服务器多进程启动的2个方法

程序员文章站 2022-05-25 18:47:20
一、tornado简介 tornado 是 friendfeed 的 web 服务器及其常用工具的开源版本。tornado 和现在的主流 web 服务器框架(包括大多数...

一、tornado简介

tornado 是 friendfeed 的 web 服务器及其常用工具的开源版本。tornado 和现在的主流 web 服务器框架(包括大多数 python 的框架)有着明显的区别:它是非阻塞式服务器,而且速度相当快。得利于其 非阻塞的方式和对epoll的运用,tornado 每秒可以处理数以千计的连接,因此 tornado 是实时 web 服务的一个理想框架。

二、多进程启动方法

正常启动方法:

复制代码 代码如下:

server = httpserver(app)
server.listen(8888)
ioloop.instance().start()

多进程、方案1:

复制代码 代码如下:

server = httpserver(app)
server.bind(8888)
server.start(0)  # forks multiple sub-processes
ioloop.instance().start()

多进程、方案2:

复制代码 代码如下:

sockets = tornado.netutil.bind_sockets(8888)
tornado.process.fork_processes(0)
server = httpserver(app)
server.add_sockets(sockets)
ioloop.instance().start()