2009-11-03 84 views
1

大量客戶希望每小時檢查一次服務器,而不必在意何時。服務器想要與所有客戶端進行通信,但是如果有太多的客戶端同時登錄,則不希望超負荷運行。調度週期性任務以儘量減少集羣問題

客戶端應該如何安排他們的checkin以保持服務器的均勻負載?

如果之前有過討論或撰寫關於此主題的內容(可能有,但我不知道要尋找什麼內容),則鏈接可能與直接答案一樣好。


編輯:我感興趣的理論,技巧和竅門。例如,是否會引入隨機抖動或漂移到每個客戶的登記時間表幫助或傷害?

回答

1

如果客戶使用合理的隨機數生成在一小時內選擇了他們的時間,那麼應該平均保持負載均勻分佈。然而,隨機數可以具有聚類。如果客戶端必須註冊/註銷服務器,服務器可以簡單地分配每個時隙進行檢入,然後確保均勻分發,但是沒有某種協調,我認爲客戶端沒有任何真正的方法保證均勻負載。