tornado 多进程模式解析

yipeiwu_com6年前Python基础

本文主要研究的是tornado 多进程模式的相关内容,具体如下。

官方文档的helloworld实例中的启动方法:

if __name__ == "__main__":

application.listen(8888) # listen is a shortcut for bind and start ,这点看httpserver.py可以得知

 tornado.ioloop.IOLoop.instance().start()

并且在listen中,将tornado启动为单进程模型。

所以要启动为多进程模型的方法为:摒弃listen方法

http_server = tornado.httpserver.HTTPServer(application)

  http_server.bind(options.port, options.host)

  http_server.start(num_processes=0) # tornado将按照cpu核数来fork进程

  tornado.ioloop.IOLoop.instance().start()

需要注意的一点是,要关掉debug模式,否则:

[E 110521 11:26:53 httpserver:229] Cannot run in multiple processes: IOLoop instance has already been initialized. You cannot call IOLoop.instance() before calling start()

原因是,autoreload.py已经在http_server.start()之前就初始化了IOLoop,这个在httpserver.py中的class HTTPServer()和def start()的doc string中已经解释了。

总结

以上就是本文关于tornado 多进程模式解析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

相关文章

Python操作Word批量生成文章的方法

Python操作Word批量生成文章的方法

下面通过COM让Python与Word建立连接实现Python操作Word批量生成文章,具体介绍请看下文: 需要做一些会议记录。总共有多少呢?五个地点x7个月份x每月4篇=140篇。虽然...

TensorFlow如何实现反向传播

使用TensorFlow的一个优势是,它可以维护操作状态和基于反向传播自动地更新模型变量。 TensorFlow通过计算图来更新变量和最小化损失函数来反向传播误差的。这步将通过声明优化...

Tensorflow实现酸奶销量预测分析

Tensorflow实现酸奶销量预测分析

本文实例为大家分享了Tensorflow酸奶销量预测分析的具体代码,供大家参考,具体内容如下 # coding:utf-8 # 酸奶成本为1元,利润为9元 # 预测少了相应的损失较大...

感知器基础原理及python实现过程详解

感知器基础原理及python实现过程详解

简单版本,按照李航的《统计学习方法》的思路编写 数据采用了著名的sklearn自带的iries数据,最优化求解采用了SGD算法。 预处理增加了标准化操作。 ''' perceptr...

Python3利用print输出带颜色的彩色字体示例代码

Python3利用print输出带颜色的彩色字体示例代码

前言 这篇文章通过实例给大家讲解Python3中print带颜色输出的格式,下面话不多说了,来一起看看详细的介绍吧 \033[显示方式;前景色;背景色m需要显示的文字\033[0m 其...