nservicebus并发访问saga数据

Ric*_*rdo 4 c# concurrency nservicebus saga

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

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

提前致谢

And*_*und 6

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

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