部署 tornado 的时候,启动多少个进程算是合理呢

2014-08-13 20:19:33 +08:00
 maga
部署tornado的时候,启动多少个进程算是合理呢? 我8G内存的服务器,每个请求大约花500ms。
3288 次点击
所在节点    问与答
4 条回复
sujin190
2014-08-13 20:42:21 +08:00
如果使用同步的数据库driver的话,比如pymongo,cpu数*2+2是比较合理的,当然数据库要优化好,如果使用异步数据库驱动的话,那就cpu数量就可以或者cpu数+1,使用不同进程数压测下呗
maga
2014-08-14 00:52:21 +08:00
@sujin190 每个请求500ms,大部分时间是花在外部restfull API 调用,数据库压力不大。 压测是怎么做的呢
sujin190
2014-08-14 09:28:10 +08:00
@maga ab呗,看cpu、io使用率,是在你的api中又调用了外部的http api么?如果这样使用tornado异步http client话其实和使用异步数据库driver是一样的,其实最主要还是看是否io阻塞啦,io阻塞时间长就多开几个进程
maga
2014-08-15 00:39:11 +08:00
@sujin190 是的,4核CPU, 我打算打个20个tornado进程,拍脑袋的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/127728

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX