2013-03-24 93 views
0

我試圖找到一種訪問集中式數據庫以進行檢索和更新的方法。集中式數據訪問或變量

以下就是我要找的,

服務器1這一變量例如 INT計數器;

服務器2將與用戶交互,並且每當用戶使用該服務時將增加計數器,直到達到某個閾值。當達到該閾值時,服務器2將開始拒絕用戶訪問。

此外,用戶將能夠從多個位置使用多個服務器(如服務器2),並且每次用戶訪問任何服務器時,計數器將被增加。

我試過谷歌,但很難搜索沒有名稱的東西。

回答

0

設計這種方法的一種方法是按用戶進行分片 - 即根據用戶的ID在服務器之間分割用戶。也就是說,如果您有10臺服務器,則ID以2結尾的用戶將其所有數據存儲在服務器2上,依此類推。這假定用戶ID是均勻分佈的。

另一種方法是按位置對用戶進行分片 - 例如,如果您在亞洲和歐洲有服務器。你需要用戶記錄中的一個屬性,告訴你用戶在哪裏;基於此,您將知道將其路由到哪個服務器。

最終,所有這些設計選項都有一個概念:「用戶的主記錄在哪裏?」這些方法都試圖明確回答這個問題。

不同類別的方法與多主複製有關,這是由一些數據庫供應商支持的;這種方法並不能很好地擴展(即很難將其擴展到20臺服務器),但您也可能需要查看它。

+0

謝謝,我正在考慮使用哈希算法來分發用戶,但我不是如何處理一臺服務器失敗,那麼處理服務器10的用戶將由9處理。使用主數據庫和複製相這裏很好。 – user2175831 2013-03-25 00:14:05