我有一個使用MySQL的網站。我使用一個名爲「People」的表,每行代表顯然是一個人。當用戶進入一個頁面時,我想介紹與該人相關的新聞(以及來自MySQL表格的信息)。爲此,我決定使用BING新聞源API。獲取多個URL並使用PHP腳本更新數據庫
調用每個頁面加載的BING API的方法的問題是,我正在增加我的頁面的加載時間(對於BING服務器的四捨五入)。因此,我決定預先取得所有新聞並將其保存在名爲「新聞」的彩色表中。
由於我的表格包含5,000多人,因此運行PHP腳本爲每個人下載所有消息並立即更新表格,結果爲Fatal error: Maximum execution time
(我不想禁用超時,因爲這是一個很好的安全措施) 。
運行這樣一個腳本的好方法是什麼?我知道我可以每5分鐘運行一次cron作業,每次只更新一部分行,但即使在這種情況下,保存當前偏移量的最佳方法是什麼?我應該保存在MySQL中的偏移量,還是作爲服務器var?
謝謝!是否有可能只增加這些腳本的超時時間,而所有其他的PHP都會有默認的超時時間? – Joel 2010-11-18 09:51:36
Spawn php程序不是指include或require,而是直接調用PHP來運行腳本。含義每個產卵過程都使用他們自己的默認超時。請參考這裏:http://stackoverflow.com/questions/45953/php-execute-a-background-process – ajreal 2010-11-18 09:56:57
哦,好的抱歉。我知道了。你的建議不要通過Apache(它具有超時限制)將其作爲腳本運行,而是作爲Linux中的PHP進程運行。謝謝! – Joel 2010-11-18 10:04:55