【问题标题】:Preventing Dehydrated instances when using Parallel Convoy Correlation and messages are missing在使用 Parallel Convoy Correlation 和消息丢失时防止脱水实例
【发布时间】:2014-10-06 23:06:36
【问题描述】:

我有一个编排,它被平行形状的两种消息中的一种激活。消息通过 ID 和状态关联,然后执行编排的其余部分(并且消息合并为 1)。

我想设计一种方法来防止在两条消息中的一条没有通过时发生编排的脱水实例。所以基本上,一条消息进来而另一条没有,编排实例在等待第二条消息时脱水。

如果这是串行车队,我一直在进行大量搜索并找到了一些不错的方法,但事实并非如此,并且无法保证消息的顺序。

例如,this post 在串行车队方面很有帮助,但仍然不能满足我的要求。

我尝试对每个消息在其自己的分支上使用侦听形状并在第三个分支上延迟,但了解到如果您使用侦听激活,则所有分支都必须激活,因为延迟形状无法激活编排,它不会编译。

有什么建议,还是我应该放弃并去建立一个单独的数据库,以便使用管道手动关联消息?

【问题讨论】:

    标签: biztalk biztalk-2013 biztalk-orchestrations


    【解决方案1】:

    根据您的描述,您的邮件标题略有不准确。脱水不是问题,缺少的信息才是。

    您需要做的是将接收包装在一个带有超时设置的范围形状中。然后,如果其他消息没有在超时时间内到达,则会引发超时异常,您可以处理并采取适当的措施。

    否则,平行形状将永远等待其他消息。

    【讨论】:

    • 你对标题是正确的。我把因果关系搞混了。我会给你一个建议,然后报告它让我充满希望。
    • 另外,我不得不问,你会把范围形状放在整个平行形状周围吗?还是单独围绕接收形状?
    • 两者都应该起作用,这取决于您要如何处理这种情况。
    猜你喜欢
    • 2019-05-14
    • 2012-01-23
    • 2016-06-23
    • 1970-01-01
    • 1970-01-01
    • 2017-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多