0

有没有人得到任何关于处理 BizTalk 业务流程中情况的良好做法/潜在设计的指示是长期运行服务的响应失败,因此需要重新发送启动消息

我遇到的情况是,编排向 MSMQ 队列发送消息,然后在另一个队列上等待响应。现在响应时间应该不到一分钟,但队列另一端的“服务”偶尔会失败......
而且这不是我可以控制的,所以我无法更改/纠正它

我可以在 BizTalk 中使用一些设计模式来超时并重新发送启动消息吗?

4

2 回答 2

1

标准 BPEL 定义了“选择”活动,而 BizTalk 具有“监听”形状,因此您基本上可以为回复队列上的接收活动定义超时期限,您可能需要一个布尔标志来决定是否回送/重试或者接收成功,因此业务流程继续进行。

于 2009-05-14T12:44:49.997 回答
0
  1. 定义一个可用于重试发送消息的单一编排,这些要放入队列的消息是从消息框中提取的。

  2. 如果来自响应队列的响应延迟,请使用单例循环重新发送消息。

旁注:您可能必须在发送端口上启用 Delivery Notification 属性,以侦听您可能遇到的任何异常。

参考文章...

处理 BizTalk 业务流程中的异常

于 2009-05-27T16:52:07.373 回答