是否有可能在休眠和nhibernate解決方案之間共享二級緩存?我有一個運行.net的服務器和運行java的服務器都可以訪問同一個數據庫的環境。共享nHibernate和休眠二級緩存
他們訪問的數據有一些重疊,所以共享第二級緩存將是可取的。可能嗎?
如果這是不可能的,那麼其他解決方案有哪些呢?
是否有可能在休眠和nhibernate解決方案之間共享二級緩存?我有一個運行.net的服務器和運行java的服務器都可以訪問同一個數據庫的環境。共享nHibernate和休眠二級緩存
他們訪問的數據有一些重疊,所以共享第二級緩存將是可取的。可能嗎?
如果這是不可能的,那麼其他解決方案有哪些呢?
他們訪問的數據有一些重疊,所以共享第二級緩存將是可取的。可能嗎?
這將需要(這是很可能簡單化):
這聽起來是可行的,但是:
如果這是不可能的,那麼其他解決方案有哪些呢?
我從來沒有這樣做過,但如果我們討論的是讀寫緩存,並且如果您使用兩個單獨的緩存,則必須使.Net端的給定Java緩存區無效,反之亦然。你必須編寫代碼來處理它。
正如Pascal所說,共享第二緩存在技術上是不可能的。
但是,您可以從不同的角度思考這個問題。
這兩個應用程序讀取和寫入是不可能的相同的數據。因此,您可以使用緩存失效服務(使用您選擇的通信堆棧)來代替共享緩存。
實施例:
Customer
數據和寫入Invoice
數據Invoice
數據和寫入Customer
數據Customer
數據和應用程序B的緩存Invoice
數據Whe例如,應用程序A修改發票,它將消息發送給應用程序B並通知它從高速緩存中清除發票。
您也可以驅逐整個實體類型,集合和區域。