不同服务器中两个Biztalk业务流程之间的同步请求响应

时间:2010-11-12 11:59:50

标签: biztalk biztalk2006r2

我有一个公开Web服务的业务流程,它检查收到的消息的来源执行基于此的一些分支逻辑,并调用一组“服务”编排中的一个(驻留在不同的应用程序中)。这些服务编排对我的消息执行一些更新,然后在完成后将其发送回路由编排。然后,路由应用程序发送适当的Web服务响应。即端到端流程都是同步的。

我的目的是在我的'路由'业务流程上有一个直接绑定的发送/接收端口,在'service'业务流程上有一个链接的接收/发送端口来实现阻塞,但是我无法完成这项工作。< / p>

我尝试过使用关联和过滤器表达式但是当服务编排尝试发回其响应时,我一直看到“多个订阅者错误”。

我确保没有其他业务流程/端口正在使用我的架构(为了确保创建一个全新的架构)。

稍微撕掉我的头发,这似乎是一件相对简单的事情。

(p.s我倾向于让服务编排公开一个Web服务并调用它,但是对于总是存在于同一台机器上的东西来说似乎还有很长的路要走。)

1 个答案:

答案 0 :(得分:1)

通过biztalk确保消息被视为“不同”的常见方法,以便不会发生此类问题是使用仅在上下文中设置为不同值的属性,然后使用相关性并过滤表达式以确保消息一次只匹配来自特定位置的消息的特定实例。

这样,即使消息类型相同,订阅也不会真正具有相同的谓词。