2014-02-22 16 views
0

我有對象的內存列表(實際上只是字符串),我使用的.NET Web應用程序。值得一數據的約10兆,所以我只是不停地在RAM中,不要與數據庫等本地API的繞過HTTP,在.NET和IIS

不過,現在我需要多個Web應用程序訪問此相同的數據。首先想到的是在此之上添加一個web api,並通過api訪問其他應用程序。這應該比每個應用程序保持在RAM中加載相同的10兆數據更好。

但是這讓我想知道是否有一個更高性能的方式在單個服務器上以.net方式執行此操作 - 允許多個Web應用程序訪問相同的內存數據,而不需要Web API的開銷,也不需要求助只是讓每個請求都碰到一個數據庫。我意識到性能優勢可能並不值得,但只是好奇,如果這樣的事情是可能的。

回答

0

你可以看看像AppFabric的或可能的文檔或鍵/值數據庫。我已經使用這兩個爲各種客戶端訪問相同的信息,取得了巨大的成功。

2

如果使用WCF與在同一臺機器上的進程之間的通信進行了優化的運輸(如命名管道綁定),你將有一個網絡的API類編程模型的所有便利沒有開銷。如果您將來需要使用多臺機器,那麼更改爲其他傳輸方式(例如TCP或HTTP)就像更改配置文件一樣簡單。看看http://msdn.microsoft.com/en-us/library/ms752247(v=vs.110).aspx(和http://msdn.microsoft.com/en-us/library/ms752250(v=vs.110).aspx用於TCP)