gpt4 book ai didi

c# - nservicebus并发访问saga数据

转载 作者:太空狗 更新时间:2023-10-30 00:43:02 26 4
gpt4 key购买 nike

我使用 NServiceBus 作为企业服务总线,在我正在开发的解决方案中,我有一个编排服务,它从所有客户端应用程序接收多达 10k 条消息。我想提高架构性能,从而增强所提供的解决方案。

我使用 Saga 数据类,我想在所有工作线程之间共享对它的访问(到目前为止,我只设置了一个线程,但我想至少设置为 10 个),当多个线程尝试时会发生什么访问相同的saga istance? NSB 是否已经提供了这样的并发功能?我必须自己实现吗?如果后者有任何提示?

提前致谢

最佳答案

如果我对你的理解是正确的,你会问如果你有多个线程同时访问同一个 saga 实例会发生什么。 NServiceBus 使用底层存储来确保只有一个线程可以同时创建/更新给定的 saga 实例。其他人将回滚,NServiceBus 对重试的支持将确保消息被重试,从而为您解决竞争条件。您可以在这里阅读更多内容:

http://andreasohlund.net/2012/09/19/nservicebus-sagas-and-concurrency/

关于c# - nservicebus并发访问saga数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12370389/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com