我有一個在Elastic Beanstalk Worker Tier上運行的網絡爬蟲,我一直都在使用它。當隊列爲空時,它只是再次加載所有新的url,並繼續前進。它從不空虛。工人級別是否始終處於CPU 100%負載狀態?
無論我設置了多少個線程或進程,我的CPU負載都是100%使用微型實例,我對此有點困惑,我很想聽聽一些輸入。
當SQS被加載時,CPU是100%的「正常」嗎?我猜,只要一條消息完成,實例就會繼續從SQS讀取消息,這意味着即使我將實例升級爲小型或大型實例,它仍然會處於100%的CPU負載,唯一的不同之處在於它可以在相同的時間內完成更多的消息。正確?
第二個問題是如果有100%的CPU負載有什麼大問題?在日誌中,有時會出現Timeout錯誤,如Script timed out before returning headers: application.py
。我想這可能與負載過高有關(?),如果是的話,我可以阻止它,或以某種方式降低CPU負載?