惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

酷 壳 – CoolShell
酷 壳 – CoolShell
Microsoft Security Blog
Microsoft Security Blog
Recent Announcements
Recent Announcements
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Last Week in AI
Last Week in AI
罗磊的独立博客
腾讯CDC
云风的 BLOG
云风的 BLOG
月光博客
月光博客
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
博客园 - 三生石上(FineUI控件)
宝玉的分享
宝玉的分享
U
Unit 42
I
InfoQ
D
DataBreaches.Net
Blog — PlanetScale
Blog — PlanetScale
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
V
V2EX
美团技术团队
IT之家
IT之家
Stack Overflow Blog
Stack Overflow Blog
F
Fortinet All Blogs
GbyAI
GbyAI
S
SegmentFault 最新的问题

博客园 - Razor#

Biztalk SQL 适配器之数据类型支持 Biztalk 32Bit or 64Bit ?Event ID 5754 Sharepoint 开发心得No.4: [转载]Feature.xml文件介绍 Sharepoint 开发心得No.3: 自定义列(Field)开发 Sharepoint 开发心得No.2: 列表(文档库)列宽设置 Sharepoint 开发心得No.1: 列表(文档库)级别是否可见设置 How to install Application Templates on WSS3.0 VS2008发布Sharepoint工作流时Infopath模板问题 Contact Selector控件 字符编码格式小结(ASCII/Unicode/UTF-8) Sharepoint 2007 Sdk常用基础操作 Sharepoint 2007部署Webpart的方式(二):STSDEV开发dotnet 3.5的webpart Sharepoint2007 部署Webpart的方式(一) Windows SharePoint Services 3.0 Service Pack 1 VS2008构建MOSS表单工作流 MOSS 工作流开发中关于Workflow.xml feature.xml Sharepoint 工作流基础 InfoPath2007 创建安全的数字证书模板发布(Domain Certificate Authority Signing InfoPath 2007 Forms) 用证书实现windows 2003下IIS的SSL安全通信
Biztalk 2006基础认知
Razor# · 2008-07-01 · via 博客园 - Razor#

Posted on 2008-07-01 11:22  Razor#  阅读(631)  评论()    收藏  举报

一.认清角色及任务
1.开发者
任务:使用BTS开发工具和.net Framework开发和部署BTS项目。
技能:VS2005开发.net项目,使用.net Framework,了解xml,了解xslt,了解xsd,Web服务的开发和使用。

2.IT专家
任务:保证BTS系统的正经运行。
技能:安装Windows Server,安装Sql Server,安装相应补丁,配置运行环境,配置和管理BTS的正常运行。

3.业务分析专家
任务:完成数据分析
技能:Excel,Access,OLAP,VISIO,PROJECT,POWERPOINT,WORD,OUTLOOK,业务逻辑。

二.BTS的组成

核心组件
Messaging:消息
Orchestration:流程

相关组件
Business Rules Engine:用于定义流程中的规则。
Health and Activity Tracking:监视、管理和跟踪流程的执行过程。
Enterprise Single Sign-on:用于系统间访问的SSO。

信息组件
BAM:于用去业务数据的分析、跟踪和处理,监视流程的运行过程。
BAS:提供一个贸易伙伴间进行交易的一个平台性服务。

三.工作流程

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定义流程的规则。

七.管理与监控

Ref :http://msdn2.microsoft.com/en-us/library/aa577363.aspx

对于BizTalk安装来说,是越来越简单。但是,还是要在安装之前,检查一下安装前所必需的一些组件。

关于搭建BTS的集成环境。
对于向我这种用于开发的程序员来说,找一台性能较好一点的PC,安装Sql2005+BizTalk2006,还有VS2005。
不过,我还是最喜欢用VMWare虚拟机,安装一个环境后,将文件做多个copy,这样,方便以后的测试与开发。

还有就是以后在生产环境中,Biztalk服务器的安装!主要问题是如何分配主机!
主机:可以运行流程,执行接收端口、发送端口的IO操作。
数据库服务器:很多情况下是单独运行一台服务器,

但主机、数据库的多少,要根据实际需求来选定。
主机,可以提高计算能力,如果流程中,计算量比较大时,还有接收、发送的文件比较多时,当然是主机越多越好了,但软硬件成本也就高了!
数据库,建议将MsgBox中的数据库分散开!因为有时数据库的IO操作量也很变得很大!

关于管理部分
BizTalk Manage已经成熟了很多,还记得在BTS2004时,对于在服务器上(没装VS2003)想对Port进行配置,那可是一件头疼的事!这里就不多说了!操作很简单了!

关于监控
对于BTS来说,HAT还是最好的工具(虽然还不是很方便)。多用用就知道它们的功能与用途了!

使用BizTalk,主要应该在EAI和B2B。其中免不了要用到数据的映射、计算,以及流程。