2

我有多個在多個EC2實例上運行的服務實例,我需要一個全局計數器,該服務的所有實例都可以訪問。計數器需要支持設置/重置和增量操作。我第一次嘗試構建這個方法是使用SimpleDB,SimpleDB中的一個屬性存儲計數器值。但SimpleDB被證明對於這個過於昂貴,因爲我期望有很多請求訪問這個計數器。對計數器的大部分請求都是通過很少請求獲取實際修改計數器值的請求。AWS上的分佈式計數器

我在想的另一個選擇是使用memcache來緩存計數器值並使用SimpleDB作爲計數器的持久存儲。這應該會顯着減少對SimpleDB的調用次數。但由於我的服務中沒有其他memcache或SimpleDB的使用,所以似乎需要爲小功能管理兩個額外的組件。

有沒有這個問題的標準解決方案?

回答

0

我們終於決定使用SimpleDB了。這非常簡單,滿足了我們的需求。

0

Redis擁有一個持久性存儲區,除非您達到100%的內存使用率,否則您將不會遇到問題。您還可以備份,主/從,並在Redis中轉儲數據庫。