2012-01-10 109 views
0

我使用AppFabric作爲NHibernate 2L緩存提供程序。NHibernate + AppFabric緩存

我已經安裝AppFabric的緩存服務,從默認配置一個高速緩存集羣和一個額外的緩存分開:

<dataCache size="Small"> 
     <caches> 
      <cache consistency="StrongConsistency" name="NHibernate"> 
       <policy> 
        <eviction type="Lru" /> 
        <expiration defaultTTL="10" isExpirable="true" /> 
       </policy> 
      </cache> 
      <cache consistency="StrongConsistency" name="default"> 
       <policy> 
        <eviction type="Lru" /> 
        <expiration defaultTTL="10" isExpirable="true" /> 
       </policy> 
      </cache> 
     </caches> 
     <hosts> 
      <host replicationPort="22236" arbitrationPort="22235" clusterPort="22234" 
       hostId="963417840" size="2047" leadHost="true" account="ZEUS\CATALINP" 
       cacheHostName="AppFabricCachingService" name="ZEUS" 
       cachePort="22233" /> 
     </hosts> 
</dataCache> 

似乎一切都在高速緩存提供方確定。

緩存客戶端的配置,如使用的app.config,如下:

<dcacheClient localCache ="True" deployment="simple"> 
    <localCache isEnabled="True" sync="TimeoutBased" ttlValue="300" /> 
    <hosts> 
     <host name="ZEUS" cachePort="22233" cacheHostName="AppFabricCachingService"/> 
    </hosts> 
    </dcacheClient> 

沒什麼特別的,只是常用的設置。

然而,當我運行applicacion,我可以看到在調試器的輸出如下:

DeadServerCallback調用,服務器URI: 的net.tcp:// ZEUS:22233/AppFabricCachingService DeadServerCallback: 匹配我的服務器,清潔掛起的申請SendMsgAndWait:遠程 存儲操作失敗:是msgId = 1 ExecuteAPI:響應是空,是msgId = 1

最後,應用程序崩潰,出現以下消息:

「ErrorCode:Cache :: Get:無法聯繫緩存 服務。請與管理員聯繫,並參考產品幫助文檔 可能的原因。」

緩存服務似乎是正確配置(我已經成功地通過PowerShell命令連接到它),NHibernate的配置似乎是正確的,以及,但NHibernate的無法連接到高速緩存服務。

有沒有人經歷類似?

謝謝

C.

東西

回答

1

NHibernate Velocity提供程序已損壞,無法與AppFabric一起使用。有關詳細信息,請參閱this question,然後轉至s1mm0t的AppFabric提供商here

+0

謝謝菲爾。我已經嘗試過Simon的項目,我成功地將條目中的條目加載到條件查詢中的L2緩存中,當我重新運行查詢時購買,Nhibernate命中數據庫而不是從緩存中讀取數據。有沒有人執行過西蒙項目的成功實施?謝謝你,C。 – user1140689 2012-01-12 08:27:07

+0

它對我來說工作得很好 - 但後來我會說我不會; O)。請隨時通過我的博客與我聯繫,我會爲您進一步研究。 – s1mm0t 2012-01-12 15:19:05

+0

謝謝西蒙。儘管我已經使其工作(配置文件缺少localCache部分,這是我的問題的原因),但我可能有一些問題了解如何一切正常。我很感謝你的承諾,我很快會給你寫一封更大的郵件。再次感謝你。 – user1140689 2012-01-16 09:09:59