我有一個PHP腳本,用於從外部服務獲取數據並將數據保存到我的數據庫。我需要這個腳本每分鐘爲系統中的每個用戶運行一次(我預計其中有數千個用戶)。我的問題是,每分鐘每個用戶運行這個最有效的方式是什麼?起初我以爲我會有一個函數從數據庫中抓取所有的用戶ID,迭代ID併爲每個ID執行任務,但我認爲隨着用戶數量的增長,這將需要更長的時間,並且不再落在1分鐘之內。也許我應該排隊用戶ID,併爲每一個單獨執行任務?在這種情況下,我實際上不確定如何繼續。需要關於在一個非常大的過程中工作的建議
在此先感謝您的任何建議。
編輯
要回答Oddthinking的問題:
我想在同一時間開始爲每個用戶的進程。當每個用戶的進程完成時,我想等待1分鐘,然後再次開始該進程。所以我想爲每個用戶每個過程應該是異步的 - 針對用戶1的過程中不應該在乎過程,用戶2
要回答模擬人生的問題:
我沒有對外部服務無法控制,並且外部服務的用戶與我的數據庫中的用戶不同。恐怕我不知道任何其他腳本語言,所以我需要使用PHP來做到這一點。
希望你有一個健壯的數據庫服務器:P – Matt 2010-03-25 00:41:45
@Matt,使我們兩個人:) – 2010-03-25 00:43:56