2009-11-17 39 views
6

我注意到我的本地windows7机器上的django开发服务器(版本1.1.1)使用大量的CPU(根据任务管理器的python.exe条目,约为30%),即使在空闲状态下也是如此请求进/出。有没有一种分析可能对此负责的既定方式?Django开发服务器CPU密集型 - 如何分析?

谢谢!

Martin马丁

+0

谷歌有关Python探查器的信息吗? –

+0

Python.exe是负责的过程:)你可能想修改你的帖子来说“找出可能导致这种情况的原因”。 –

回答

12

FWIW,你应该进行分析,但是当你这样做的时候我会打赌你会发现答案是“轮询你的文件的改变,以便自动重新加载”。你可以用“python manage.py runserver --noreload”做一个快速测试,看看它是如何影响CPU使用率的。

+0

这做了魔术 - 在空闲状态dropepd的CPU使用率为0%... – Hoff

3

命中控制-C并崩溃的过程。它可能会在某个地方崩溃,它花费了很多时间。

或者你可以使用一个分析器。

+1

你可能认为这是一个笑话,但严重的是,这可以是一个快速的方法来找出你的程序花费了很多时间。除了这种快速而粗暴的方法之外,还可以使用分析器。 – steveha

0

标准方法是使用分析器。如果出于某种原因,你不能(例如Apache modpython中没有运行Django的profiler),那么最好的办法可能就是简单地用日志记录你的程序。观看你程序中的信息,看看你能从中学到什么。

如果您看到一条消息“输入CalculateFoo()”,然后五秒钟后“退出CalculateFoo()”,这是一个重要线索。或者如果一个特定的功能不断重复打印。

下面是关于Python日志记录的简短讨论。

Python debugging tips

编辑:我刚刚注意到,可以明确地说,这是你的Windows 7桌面上。所以,使用一个分析器。但我会留下这个答案来涵盖一般情况。