Rebus传奇的一致性

问题描述

我正面临着一种奇怪的情况,即我的sagas 有时 只是停止调用后续步骤,而没有错误写入日志。因此,例如考虑以下(伪)代码

public async Task Handle(Step1 step1)
{
  //... do something
  await _bus.Send(new Step2 { Id = step1.Id });
}

public async Task Handle(Step2 step2)
{
  //... do something else
  // go to next step      
}

在这种情况下,step1可以很好地处理,但是没有迹象表明Handle(Step2 step2)曾经被使用仅存在于sql表中的revision字段等于{ {1}},并且RabbitMq的主队列或错误队列中没有消息。是否至少适用一次交货保证?关于如何实现或我可以添加哪些调试信息的任何建议? 我在此配置中使用MysqL持久性和RabbitMq传输:

1

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...