2015-03-02 148 views
0

我正在一個3層項目管理應用程序(IIS服務器+應用程序服務器+數據庫服務器)。我們有一個大的JSON數據(〜1 MB),我們需要在內存中緩存,這樣我們可以最小化數據庫調用來獲取它。可能有約10-50個用戶同時登錄,總緩存大小可能在10-50 MB之間變化。在內存中緩存大型數據集在ASP.net服務器

我不能使用緩存服務器,因爲它會增加對另一臺服務器的依賴性,我們需要檢查它是否存在,以避免下游出現問題。 它不是一個「高度可擴展」的應用程序,所以我想使用一些易於實現的功能,並且可以針對以上參數進行操作。 感謝您的幫助。

+0

緩存每個用戶1mb?你無法在客戶端緩存數據嗎? – Noel 2015-03-02 05:54:54

+1

10-50Mb是「大量數據」?你可能很容易在你的手機上託管這樣的網站......如果10Mb是內存數量,你很擔心ASP.Net(或者一般的.Net)可能根本不可接受......你是否真的測量過緩存使用情況(即默認的ASP.Net緩存有很多需要觀察的計數器)來確認10-50Mb會導致您的應用程序出現問題? – 2015-03-02 06:43:44

+0

每用戶1-10mb。它基本上是一個用戶正在工作的臨時數據。我實際上會嘗試瀏覽器緩存(ext JS商店)。 – 2015-03-03 10:53:55

回答

0

有幾種解決方案,您可以使用NOSQL內存緩存一樣的Redis或等或也可以使用.NET內存緩存:「System.Runtime.Caching」:ObjectCache或者如果您使用MSSQL 2012,你可以使用MSSQL內存表