2017-08-25 100 views
1

我有以下CherryPy的快速入門例子:CherryPy的快速啓動消耗的CPU使用率過高而閒置

import cherrypy 

class HelloWorld(object): 
    @cherrypy.expose 
    def index(self): 
     return "Hello world!" 

if __name__ == '__main__': 
    cherrypy.quickstart(HelloWorld()) 

我發現,如果我離開它運行,它始終是附近的top輸出的頂部。舉例來說,我離開它運行的過夜(不是24小時),這是自上線:

PID USER  PR NI VIRT RES  SHR S %CPU %MEM TIME+  COMMAND 
8284 pi  20 0 126212 13868 5792 S 7.2 3.1 112:51.88 python 

而且服務器不超過REST在這段時間內互動,只能空轉。任何這種高CPU使用率的原因,或解決方法,以防止它?

這可能是無關的,但下面的Python代碼還使用了大量的CPU:

while True: 
    pass 

它使用了很多 CPU(這是正確的,也許),但它使我不知道是否CherryPy的快速啓動正在做類似於在幕後等待的事情。

+0

什麼是CPU的配置? – Juggernaut

+0

這是在gen 1 raspberry pi上運行raspbian:https://pastebin.com/fQh7KJ3z – vgmoose

+0

那很正常。 – Juggernaut

回答

1

我真的不認爲你應該擔心它。而且您也不必在生產中使用quickstart()。按照here使用Cherrypy和uwsgi模塊進行生產。它更快更輕。