NServiceBus 提供了超时机制。从nservicebus.com:
基类上的 RequestTimeout 方法告诉 NServiceBus 将消息发送到另一个端点,这将为我们持久地保留时间...... NServiceBus 附带一个称为 Timeout Manager 的过程,它提供了此功能的基本实现。
当时间到时,Timeout Manager 会向 saga 发送一条消息,导致使用最初传递的相同状态对象调用其 Timeout 方法。
正如我所看到的,即使消息已传递给接收者,也有可能触发超时(例如,回复卡在某处)。
我如何设计我的应用程序,以使我的应用程序无论消息是否发送到接收者都能正确运行。