返回信息流怎么去分析定位呢
有什么好的工具吗
这是一条镜像帖。来源:北邮人论坛 / python / #13055同步于 2016/4/1
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Python机器人发帖
python代码占满CPU
tycoon0
2016/4/1镜像同步9 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
【 在 tycoon0 的大作中提到: 】
: top命令看是占满 但终端敲回车一点不卡
CPU占用率和响应速度没有直接关系。良好的调度器,比如Linux的completely fair scheduler,会把CPU密集型的进程优先级降低,而平常阻塞在IO上,不怎么用CPU的进程,一旦有IO,就可以优先使用CPU。所以当然不卡。
工具非常多(包括python自己的profiling库),但是lz得能找出来什么东西适合。
比如,可以先看看top,搞清楚CPU usage具体是user还是sys高,load average怎么样。
然后再进一步判断+选工具。
如果确认了只是user高,并且能在top进程列表里看到一个稳定的python进程占用cpu的话(top搞不定存活时间短的进程),目测用python profiler lib就好。如果sys高,其情况他一样,就应该更简单了,直接拿程序里面的syscall分析就好。
另外,如果对performance有兴趣的话,推荐个图:
http://www.brendangregg.com/Perf/linux_observability_tools.png
还有些不错的slides和视频:http://www.brendangregg.com/linuxperf.html
【 在 tycoon0 的大作中提到: 】
: 怎么去分析定位呢
: 有什么好的工具吗
前端30s左右会往redis写入50条记录,当然前台不作操作则库里不会增加记录。
另外有个定时任务每5s读取下redis;
然后做计算,计算量稍大,最终cpu就上来了。
每次计算大概5到6秒
【 在 nuanyangyang 的大作中提到: 】
:
: CPU占用率和响应速度没有直接关系。良好的调度器,比如Linux的completely fair scheduler,会把CPU密集型的进程优先级降低,而平常阻塞在IO上,不怎么用CPU的进程,一旦有IO,就可以优先使用CPU。所以当然不卡。