是否有人能够帮助我在NServiceBus Saga \ Handler中正确调用Wcf服务?
目前我正在处理程序中进行同步调用。
然而,IIRC,不久前在NServiceBus文档页面上,它建议使用Saga但没有提供进一步的细节。
我的理解是Saga是首选,因为它可以在处理Wcf调用时保持,然后恢复以接收响应。 (唯一的另一个想法是Saga是首选,因为它们通常比Handler运行更长)。
我需要帮助的是在Wcf服务的回复中恢复Saga实例的最合适方式。
由于 标记
答案 0 :(得分:4)
你实际上不希望传奇直接调用任何外部资源。
相反,saga将向处理程序发送消息,该处理程序将同步调用WCF,然后使用响应发回消息。
如果对WCF的调用超时,处理程序将执行其自动重试逻辑,或者该消息可能最终出现在错误队列中。
然后,如果在一段时间内没有收到回复,该传奇将能够处理该做什么的逻辑。