2012-09-07 62 views
0

我知道有一個最大內存限制在Azure的緩存,但有一個最大對象數呢?感覺隨着密鑰數量的增加,緩存會變慢。是否有Azure的緩存(預覽)的最大對象計數

背景:

我需要保持一些數據在內存中爲每個用戶(摘要這是昂貴的,從數據庫,但便宜的計算內存遞增的飛行)。隨着併發用戶的增長,我擔心如果有限制,我可能會超過緩存。

我打算解決方案:

比方說,我必須保持Int64value1」和「value2」在內存中爲每個用戶。

緩存項目userN_value1, userN_value2, [...]和呼叫DataCache.Increment當改變這樣的更新每個計數器的值:

DataCache.Increment("user1_value1", 2500, 0, "someregion"); 

隨着用戶量增長,這可能導致項目很多。這是我應該擔心的事嗎?有沒有更好的方法我沒有想到?

+0

據我知道有沒有對象限制,而只受內存限制,如果你的緩存遇到內存壓力,那麼它將驅逐對象以釋放它,數據刪除過程是異步的,並遵循最近最少使用( LRU)政策。 – user728584

+0

@ user728584 - 您應該將答案發布爲*答案*,而不是評論。這樣,OP可以標記爲答案。 –

+1

我不是百分之百肯定的大衛,我正在等待你們中的一位在MSFT上確認:)我將會回答這個問題...... – user728584

回答

0

在實踐中,限制由選擇該羣集的VM的實例和大小的數量強加的。

Capacity Planning Guide spreadsheet非常有趣,我用它來比較我們當前使用共享緩存服務以找到匹配的配置(然後比較成本)。

如果你適應的設置最大活動對象對象的平均尺寸(後序列化)的數量到您的情況,您可以看到建議的配置如何上升。

似乎有一個限制:如果您increare的要求可能會遇到「簇大小大於32不支持的考慮分裂成多個集羣。」我假設如果你需要集羣中有超過32個節點,每個節點都是ExtraLarge虛擬機,那麼你達到了極限。

0

據我知道有沒有對象限制,而只受內存限制,如果你的緩存遇到內存壓力,那麼它將驅逐對象以釋放它,數據刪除過程是異步的,並遵循最近最少使用(LRU)政策

相關問題