我構建了一個社交Android應用程序,用戶可以通過gps位置查看身邊的其他用戶。開始的時候我的用戶數量很少,但是現在我的用戶數量在不斷增加(每天大約有1500 + 100),所以我在設計中發現了一個主要問題。如何在服務器端管理大量用戶?
在我的Google App Engine servlet中,我擁有靜態HashMap,它包含所有用戶配置文件對象,currenty 1500,隨着更多用戶註冊,此數字將增加。
爲什麼我做它
每個用戶是請求他周圍的用戶自己的GPS與其他用戶進行比較,並檢查它們是否在其半徑10公里,出現這種情況,平均每5分鐘。 這就是爲什麼我無法每次從db獲取用戶,因爲GAE讀/寫操作配額會讓我分開。
這個DESGIN的問題是
隨着用戶數量的增加HashMap的轉向空每4-6小時,我的事情,這個時間也越來越短,但我不知道。 我正在通過重新加載數據庫中的用戶來解決這個問題,每次我檢測到它變成了空的時候,但是這會導致DOS給我的用戶30秒,所以我在尋找更好的解決方案。
我猜這是因爲hashmap的大小,我是對不對?
我想知道如何管理全部用戶配置文件與最大aviablity。
謝謝。
「*隨着用戶數量的增加,Hashmap每4-6小時會變爲空值*」 - 您能澄清一下這部分嗎?這個'null'是什麼意思?誰清除了「HashMap」? –