[英]What transactions are used in NServiceBus Sagas?
我使用 Azure 表存儲進行持久化,使用 Azure 服務總線進行傳輸,我想知道在 saga 處理程序中進行了哪些事務? 它與普通處理程序相同嗎?
我之所以這么問是因為我看到數據庫更改(SqlBulkCopy,通常在環境事務中登記)發生多次。 在這種情況下,我直接從 Saga 訪問數據庫以“單線程”處理消息,但它似乎不起作用。
Azure 服務總線傳輸僅支持以下傳輸事務級別
它不支持事務范圍級別。 這就是你要找的。
這是為什么? Azure 服務總線不允許發生任何環境事務。 任何與業務相關的數據操作都將被排除在處理程序事務之外。 為避免重復寫入業務數據,您需要實現冪等性,以確保在重試消息時不會多次寫入相同的業務數據。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.