2016-02-18 19 views
1

的.net應用程序(asp和桌面應用程序)緩存,我們爲所有應用程序使用1個數據庫。我們有一個ASP.Net網站和幾個桌面應用程序(WPF,WinForms)。在我的公司清除來自asp應用程序

每個應用程序都有自己的緩存系統。例如,ASP.Net網站使用IIS緩存,桌面應用程序使用內存緩存。

我們developped一個管理網站(ASP.Net MVC 5)管理的全球配置。當我們從本網站更新數據庫中的數據時,我們希望告訴其他應用程序更新其緩存。

什麼是做到這一點的最好的解決辦法?

What we want !

thanx您的幫助。

回答

0

有幾個選項,最簡單的方法是輪詢數據庫每隔X秒問緩存是否應該重新加載。這可以通過記住以前的狀態來完成(例如一個整數)。如果不一致,請重新加載緩存。

您也可以讓數據庫發送桌子上的變化,這將每一次比輪詢更好的性能發生變化的通知。

最後一個選項是使用共同的源存儲器的高速緩存,這是在所有系統中共享。那麼你根本不需要保持同步。

+0

嗨! 首先,thanx爲你的肝臟!第三個解決方案似乎是最好的,現在是不可能的,因爲我們必須對我們的一些bigest應用程序體系結構進行深度更改。 對於第二種解決方案,您將如何發送此通知?用什麼技術? – user1767541

+0

例如,請參閱[此處](https://msdn.microsoft.com/en-us/library/t9x04ed2(v = vs.110).aspx)。其他平臺也有類似的解決方案。 –

+0

我讀了你的鏈接,但我認爲不適合我們的應用程序。的確,我們的緩存中有多個對象依賴於多個表。因此,即使用戶對象基於10個表格,我們也想找到一種方法來說「重新加載用戶緩存」。 – user1767541

相關問題