1.输入端口
接收Adapter接收到消息,并通过Rcv Pipeline实现对消息的解密、解码,转换等操作,生成定义好的Schema(XML文件),并送入MessagBox中保存。
2.MessageBox
当接收到指定的消息后,它将消息的Copy发给当前些消息的订阅流程,完成流程中处理过程。
如果流程没有输出,此消息将会被MessageBox清除。
如果流程有输出,将生成的Schema保存到MessageBox中,等待发送。源Schema将会在消息被发送后清除掉。
3.输出端口
从MessageBox中取出待发送的消息,通过Snd Pipeline进行转换、骗码、加密等操作,通过发送Adapter发送到指定的地方去
四.BizTalk Adapter
自从BizTalk2000起,在每次版本升级后,BTS自带的Adapter都会增加,具体有哪些,这里就不一一列举了。
Adapter的作用
完成BizTalk中消息的发送方式。提供配置选项,可以动态修改Adapter,实际也就是更改位置。
可以理解成Adapter就是与BizTalk进行消息传递的门户。Adapter负责消息的收发操作。
例如File Adapter,你只需配置它的接收、发送位置,它就会正常工作,而且可以控制接收时间、条件等等。
Adapter支持自定义开发
你可以开发自己的Adapter,MS不会为每一种应用都开发一个Adapter,它只提供了一些常用的Adapter。对你企业内部的应用、或与其它系统对接时,就需要自己开发Adapter了。
比如:有一个系统,它有一个COM+,你需要使用这个COM+,这样,你的程序就会从中得到想要的实时数据。不过,你完全可以用服务来完成这个操作,但Adapter Framework为你提供了一整套工作完成这个工作,而且它会更加可配置、可管理、可维护。
在BizTalk2000 到 2004中,Adapter开发可是一件不太轻松的事。但到2006后,它将不太那么困难了!
后面会有关它开发Adapter的详细介绍。
五.管道
前面提到过,Adapter只完成从数据文件的输入输出,但不会对数据进行一些其它特殊处理!
比如,File Adapter只用来完成文件的读取或写入,但它不会去问用户,要处理的数据是什么格式。也就是说,Adapter只用来完成数据的in和out。
而MessageBox中要用到的数据是Xml格式,所以有Data -> Xml的处理过程。并且有时由于外系统生成的文件可能是特定的文件格式、或者是经过加密了的数据。这时就需要对这样的文件进行解码、解密等操作。这个工作,在BizTalk中就用pipeline来完成。
管道的种类
Decode :解码器
Disassemble:分解器
Validate:格式验证器
Resolve Party:(暂时还不太理解,应该是用在BAS中的东西)
Encode:编码器
Assemble:装配器
PreAssemble:再次装配
开发管道
微软当然会提供开发接口啦!
六.流程定义的过程
1.使用BizTalk Editor开发出流和中要使用的Schema。
2.使用BizTalk Mapper设计消息间的映射关系。在Mapper中还提供了大量的用于计算的Functoids来完成一些简单数据操作。
3.使用BizTalk Orchestration Designer设计流程。
4.使用WebService交换Xml数据。
5.使用Business Rule Engine定义流程的规则。
七.管理与监控