Python 空载条件下的flup/fastcgi cpu使用率
我通过flup运行Django作为线程化的fastcgi,由lighttpd提供服务,通过套接字进行通信 在空载情况下,每个fastcgi线程的预期CPU使用率是多少?在启动时,每个线程都会以3-4%的cpu使用率运行一段时间,然后在几个小时内返回到0.5%左右。它不会沉到这个水平以下 这么多的CPU使用是正常的吗?我的代码中是否存在导致空闲循环需要更多处理的bug?我期望进程在完全空闲时不使用可测量的CPUPython 空载条件下的flup/fastcgi cpu使用率,python,django,fastcgi,lighttpd,flup,Python,Django,Fastcgi,Lighttpd,Flup,我通过flup运行Django作为线程化的fastcgi,由lighttpd提供服务,通过套接字进行通信 在空载情况下,每个fastcgi线程的预期CPU使用率是多少?在启动时,每个线程都会以3-4%的cpu使用率运行一段时间,然后在几个小时内返回到0.5%左右。它不会沉到这个水平以下 这么多的CPU使用是正常的吗?我的代码中是否存在导致空闲循环需要更多处理的bug?我期望进程在完全空闲时不使用可测量的CPU 我没有对Django做任何可笑的复杂事情,绝对没有需要扩展处理的事情。我意识到这不是一
我没有对Django做任何可笑的复杂事情,绝对没有需要扩展处理的事情。我意识到这不是一个很大的负载,但是如果这是我引入的错误,我想修复它。如果没有需要处理的请求,您的快速cgi线程不能消耗任何(明显的)CPU
您应该调查所描述的负载。我使用相同的体系结构,线程完全空闲。我在django上看到了这一点,它在Slicehost(django 1.1,python 2.6)和Dreamhost(django 1.0,python 2.5)上都作为fastcgi运行,我可以这样说: 运行
top
命令显示进程使用大量CPU启动约2-3秒,然后几乎立即降至0
启动django应用程序后运行ps aux
命令会显示类似于您所描述的内容,但是这实际上是误导。从Ubuntu的ps手册页:
CPU使用率当前表示为
运行所花费时间的百分比
在一个人的整个一生中
过程这是不理想的,而且
不符合
ps在其他方面符合。CPU使用率很低
不太可能加起来正好是100%
基本上,ps
显示的%CPU列实际上是进程运行期间的平均值。您看到的衰减是由于高初始峰值,随后随着时间的推移平均无活动