gpt4 book ai didi

binding - 为什么我的 BizTalk Orchestration 多次从消息框中接收相同的消息

转载 作者:行者123 更新时间:2023-12-04 18:51:29 24 4
gpt4 key购买 nike

我有一个带有直接绑定(bind)逻辑端口的编排。让我们称之为“O1”
O1 订阅消息类型“A”(在接收端口的过滤器属性中指定)

当 O1 收到“A”类型的消息时,它会在完成之前等待一些用户输入。 (这里有一些相关性)

到现在为止还挺好...

我有第二个编排“O2”,它构造一条“A”类型的消息并将其推送到消息框。

发生这种情况时,我会启动许多 O1 实例。
我能想到的是,只要存在 O1 的实例,消息仍然可以在消息框上供订阅者使用。因此,我将不断创建编排实例。

当编排正在处理消息时,它是否会保留在消息框中直到完成?

非常感谢有人可以解释发生了什么以及我缺少什么!

最佳答案

When a message is being processed by an Orchestration does it remain in the Message Box until completion?



不,实际上消息在消息框中,但它被标记为事件。所以没有其他进程会使用它。也许 O1 正在构建 A 类型的消息,因此它会重新激活自己。

看看这个 Tips And Tricks文章:

Now for the fun part. A common pitfall with Direct-Bound ports, particularly the Message Box variety, is creating an infinite loop. Imagine a simple orchestration consisting of just two shapes, an Activate=True Receive shape (Direct-Bound, of course) and a Send shape that merely forwards the message to a FILE port. When this orchestration sends the message out, where does it go? As always, first to the Message Box. Whenever a message arrives in the Message Box, BizTalk searches for any subscriptions that match. And how will this message differ from the message that activated the orchestration in the first place? It won’t, so BizTalk will gladly fire off another instance of your orchestration to process it, and so on, until you run out of memory.

关于binding - 为什么我的 BizTalk Orchestration 多次从消息框中接收相同的消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5596993/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com