簡體   English   中英

NServiceBus-如何確保SagaData在輔助服務器之間同步?

[英]NServiceBus - How to make sure SagaData is in sync between the Worker Servers?

在NServiceBus 4.6.5中,消息使用循環算法發送到工作服務器。

我在Sagas中有一些數據來檢測不同步的業務消息。 該數據存儲在Oracle數據庫中。

如何確保所有服務器始終共享同一個SagaData(以同步方式),以便一台服務器對該SagaData進行更改,其他服務器SagaData會自動失效並進行更新?

我已經閱讀了這篇文章 ,在NServiceBus 4.6.5中,我正在實現ISagaPersister接口並將所有內容持久保存到Oracle數據庫中。

謝謝

這完全由您的數據庫處理。 每次您的傳奇訪問時,都會從數據庫中檢索其狀態,但NServiceBus不會對其進行緩存。 使用樂觀並發控制來樂觀地鎖定數據庫中的此狀態,或者使用數據庫事務管理的數據庫鎖來悲觀地鎖定數據庫中的此狀態。

如果您使用的是NHibernate配置,則可以在NHibernate中配置二級緩存,但是如果使用多個服務器,則應避免這種情況,除非使用分布式緩存。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM