编排设计 - 这是对的吗? [英] Orchestration Design - Is this right?

查看:61
本文介绍了编排设计 - 这是对的吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我觉得我没有以最好的方式设计我的编排。由于我是BizTalk的新手,我试图让设计尽可能简单,但我承认我可能已经简化了它。 Orchestration工作,但导致SQL阻塞问题 - 我想由于在发送端口组上广播每条记录。您的反馈将不胜感激。

有问题的业务流程包含一个接收端口,执行存储过程以从表中获取下一个发送详细信息(充当队列 - 接收端口设置为轮询而数据发现)。然后,相同的存储过程从各种表中选择以将数据作为单个XML文档获取,然后它更新从充当队列的第一个表接收的记录。业务流程将每条记录(一次最多大约1500条记录)发送到3个数据库的发送端口组。 1500条记录中的每条记录的记录可以发往3个数据库中的任何一个。发送记录的存储过程确定记录是否针对该特定站点并将记录保存在表中。在业务流程中,第二个发送端口指示数据库处理它存储的任何记录(同样是发送端口组)。

理想情况下,我想创建一个决策形状,每个站点都有一个发送端口,但我无法宣传我想要的属性。 Schema是从Generate Item Wizard创建的,当使用Promote Properties将属性添加到detiguised字段列表时报告了以下错误 - "此节点可能在实例文档中多次发生。只能保证保证唯一的节点。"

I don't feel like i've designed my orchestration in the best possible way. As I'm new to BizTalk I'm trying to keep the design as simple as possible, but I admit I may have over simplified it. The Orchestration works, but is causing SQL blocking issues - I guess due to broadcasting each record on a Send Port Group. Your feed back would be appreciated.

The orchestration in question contains a Recieve Port that executes a Stored Procudure to get the next Despatch Details from a table (acting as a queue - the Recieve Port is set to Poll While Data Found). The same stored procedure then selects from various tables to get the data as a single XML Document, then it updates the record as received from the first table acting as a queue. The orchestration is sending each record (upto about than 1500 records at a time) to a Send Port Group of 3 databases. The record for each of the 1500 records could be destined for any of the 3 databases. The stored procedure being sent the record determines whether the record is for that particular site and saves the record in a table. In the orchestration a second send port instructs the database to process whatever records it has stored (again a Send Port Group).

Ideally, I wanted to create a decision shape, with a Send Port for each site, but I could not promote the attribute I wanted. The Schema was created from Generate Item Wizard and reported the following error when using the Promote Properties to add the Attribute to the distiguised field list - "This node can occur potentially multiple times in the instance document. Only nodes which are guarenteed to be unique can be promoted."

推荐答案

亲爱的Dave Anson,

解决方案是首先将"单个xml"拆分为"单个xml"。或者在业务流程中单个消息,然后进一步处理每个这样的分裂消息,以确定它应该去哪个发送端口(站点)。

要在业务流程中拆分消息,您可以执行以下操作: />

Dear Dave Anson,

The solution would be to first split that "single xml" or single message inside the orchestration and then working with each such splitted message further to determine which send port (site) it should go.

To split the message inside the orchestration you can do the following:

另请参阅网站 http://blogs.objectsharp.com/ cs / blogs / matt / archive / 2005/04/12 / 1703.aspx 了解有关分割器模式的更多信息。

接下来,对于每个这样的分割消息,您应用决策形状来确定什么去做。在用于完成拆分的地图中,您可以宣传该"属性"。作为尊贵的领域,你可以用表达形式或决策规则形状来玩它。

请回到论坛,以便进一步解决问题。

感谢和最好的问候
Ambar

Please also refer to site http://blogs.objectsharp.com/cs/blogs/matt/archive/2005/04/12/1703.aspx to know more about the splitter pattern.

Next with each such splitted message you apply decision shape to determine what to do. In the map which you use for getting the split done, you could promote that "attribute" as distinguished field and you can then play with it in either expression shape or decision rules shape.

Please get back to the forum for any further difficulties arising thereof.

Thanks and best regards
Ambar


这篇关于编排设计 - 这是对的吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆