恢复BizTalk脱水编排

时间:2008-12-05 17:58:09

标签: biztalk

如何恢复脱水编排?

  • 有问题的业务流程应该是从MSMQ队列中检索消息
  • 但未在队列中设置userid权限,因此BizTalk框无法从队列中读取

更正了权限,但唯一的选项是teminate和suspend?

6 个答案:

答案 0 :(得分:2)

如果业务流程尝试在MSMQ接收时启动并失败,则它基本上挂起并且没有从队列中删除消息。我会终止它。业务流程应清除并拾取新消息。您的业​​务流程是实现单例模式还是在接收时使用有序传递?这使事情变得更复杂。

答案 1 :(得分:2)

您是否应该重新启动MSMQ的biztalk服务实例?

脱水意味着编排仍在等待某事。我想在你的情况下,你必须等待来自MQ的核心消息。如果重新启动接收主机服务实例,它将尝试重新连接所有连接(由服务实例管理的MSMQ,SQL等)。然后所有消息都将流向业务流程。

答案 2 :(得分:1)

更新1:

检查相关的接收位置。由于许可问题,可能会被biztalk禁用。您必须手动启用它。

更新0:

您不必恢复脱水编排。它不是从队列中读取的编排,而是msmq适配器。当msmq消息到达时,接收位置将其路由到消息框中。如果所述业务流程具有与msmq消息匹配的订阅(接收端口),那么它将由biztalk引擎恢复。

答案 3 :(得分:0)

你可以暂停,然后恢复吗?

我做BizTalk已经有几年了。像这样的怪癖很烦人。更糟糕的是当它脱水250k并且您需要脚本来重新启动它们。啊

我觉得你。

答案 4 :(得分:0)

BizTalk的恢复能力取决于它失败的地点和方式,以及它是否可以重播操作的任何部分;在大多数情况下,当业务流程失败时,需要使用一些编码模式来允许它恢复。

答案 5 :(得分:0)

此处的问题相同......无法重启Microsoft的失败Orchestration = BAD软件设计。对于弹性中间件解决方案而言,如果你想要弹性,你必须自己编写Biztalk代码。