2010-03-08 57 views

回答

3

他們將關注CPU執行時間,不是總的運行時間,除非連接是一個問題,並且你正在使用它們中的很多(它聽起來不像你)。

對於共享主機,運行時間與秒錶一樣無關緊要,如果您的循環運行3年,但只使用0.01%的CPU,則不會影響其主機的能力。但是,如果您以100%的CPU運行了3年,這直接影響到可以在同一硬件上運行的其他應用程序/虛擬機/數量。這意味着更多的服務器來承載相同數量的人,這意味着錢... 他們關心。

對於標題中的問題:他們是非常不同的。與sleep()和總時間相同,這意味着CPU正在做的實際工作要少得多,因爲它可以完成工作,睡眠/空閒並且仍然在相同的時間內完成。當你打電話給sleep()時,你不會對CPU徵稅,這是一個非常低功耗的操作,它可以讓計時器繼續運行,直到再次調用你的代碼。

0

這是典型的時間限制:

http://es2.php.net/manual/en/info.configuration.php#ini.max-execution-time

它通常可以在每個腳本的基礎上改變與函數ini_set(),例如:

ini_set('max_execution_time', 20*60); // 20 minutes (in seconds) 

無論,準確的時間限制可能取決於PHP如何運行(Apache模塊,fastCGI,CLI ...)。

+0

我一直首選'set_time_limit()'函數。我不知道它是否完全等同於調用ini_set()。我想我一直以爲只要他們爲它創建了一個函數,就可以使用它。 – 2010-08-24 23:17:19