none
BizTalk 后台原理 RRS feed

  • 问题

  • 尊敬的各位论坛的朋友们,

    大家好, 我是个学习BizTalk的新人,我希望可以知道BizTalk后台的部分原理。

    1. 对于BizTalk Server而言,他得到一个MSG,这个时候,我希望知道这个MSG是什么样子的,最好用一个图表或者Excel来表示

    2. 在解析上面的MSG的时候,会区分出上下文和正文, 我也希望可以详细知道是什么样子的

    3. 然后在消息代理会把一些东西保存到DB,我想知道哪些东西保存到哪些地方,能够有一些说明

    4. MSG 会发送到哪些队列………………………………

    5. …………

    ……………………

     

    我希望高手可以帮忙整理出这样的一份资料,我看了MSDN上面的资料,我很模糊,相当的不清楚,这样的一份资料有无数论坛的兄弟们需要,谢谢您。

    如果不行,我们就一起讨论吧,总会有个结果的。

     

    我希望前辈们可以帮助我,学习的时间应该被缩短,因为已经有很多人走了弯路。

    不走弯路便是捷径。

     

     

    如果有什么说的不对的,希望论坛的兄弟姐妹指正我,帮助我,谢谢。

    Best Regards

    Baoguo

    2010年5月7日 9:10

全部回复

  • 1. 对于BizTalk Server而言,他得到一个MSG,这个时候,我希望知道这个MSG是什么样子的,最好用一个图表或者Excel来表示

        biztalk的消息可以是任何形式的,大多数消息是xml的,但是也可能是序列化的 .NET 类或二进制数据块

    2. 在解析上面的MSG的时候,会区分出上下文和正文, 我也希望可以详细知道是什么样子的

        消息的正文就是指消息本身,消息的上下文是指升级后的属性,一般以键值形式存在

    3. 然后在消息代理会把一些东西保存到DB,我想知道哪些东西保存到哪些地方,能够有一些说明

        消息被保存到数据库,放在MessageBox库,主要放在两个表里,Spool和Parts中。Spool表是消息主表,描述这个消息的id,包含多少个part,哪个part是body正文部分。parts表是这个消息的每个part的具体内容。消息的上下文和具体内容在数据库中都是保存在image类型的字段中。

    4. MSG 会发送到哪些队列………………………………

        消息在发布到MessageBox时,会把消息发布到主机队列中,每个主机实例有一个主机队列。如果相应的主机实例是BizTalkServerApplication,那就将此消息订阅内容插入到BizTalkServerApplicationQ表中

    关于biztalk的底层机制,请参考下面的文章:


    专注于biztalk。 chnking.cnblogs.com
    • 已建议为答案 GaryZhang 2010年5月10日 1:14
    2010年5月8日 8:12
  • 谢谢您的帮助,很受用,学习中遇到问题,我再提问……

    ^_^

     

    Best Regards

    Baoguo

    2010年5月9日 2:16
  • Chnking 讲得很详细啊!另外建议阅读一下BizTalk中文帮助,基本上都是这么学过来的。我这有两本BizTalk 2006的英文版电子书。有需要的也可以给我邮件。cbcye#live.com

    2010年5月10日 1:14
  • Hi , 我发您邮件了,谢谢您
    2010年5月10日 5:13
  • 金前辈,

           您好。我把您写的“深入biztalk消息以及消息订阅发布路由机制”阅读了很多遍,有些疑问想问一下:

    1. Subscription表中会对应到某个谓词组,谓词组对应到多个谓词表。我的问题是Subscription中只对应一个谓词组,怎么会被多个服务订阅的呢?

    2. 我们在物理的Send Port中有Filter,这个Filter当中的条件,具体的是怎么对应到数据库的呢?虽然看了文章,但是不是太明白?

    3.怎样算是一个谓词组?

     

    我提问好了,谢谢您。

     

    2010年5月12日 23:01
  • 首先对你刨根问底的精神表示敬意。

    1. Subscription表中会对应到某个谓词组,谓词组对应到多个谓词表。我的问题是Subscription中只对应一个谓词组,怎么会被多个服务订阅的呢?

        每个服务在订阅表里可以有一条记录,然后对应一个谓词组ID,这个谓词组id字段跟PredicateGroup表的uidPredicateORGroupID字段关联,实际上也是谓词或组的id,每个或组又可以包括多个与组,与组id再关联到各个谓词表的uidPredicateGroupID字段,这样就组成了一个服务订阅消息的组合条件。

        每个服务都可以以同样条件订阅同一个消息,只要这个服务组合出来的条件跟同一消息的属性匹配。

    2. 我们在物理的Send Port中有Filter,这个Filter当中的条件,具体的是怎么对应到数据库的呢?虽然看了文章,但是不是太明白?

       Send Port中有Filter中设置的条件,跟PredicateGroup谓词组对应表,EqualsPredicates等谓词表的结构几乎可以一一对应。

    3.怎样算是一个谓词组?

       在Send Port中有Filter中的最右边,可以看到“与”“或”,就表示谓词的与组、或组。 等于,大于,小于等就是谓词。


    专注于biztalk。 chnking.cnblogs.com
    2010年5月13日 17:02
  • 谢谢金前辈的回复,您的解释我明白了,继续学习中…………

    2010年5月14日 0:32