BizTalk开发系列(六) BizTalk开发简述
现在很多大型企业信息化程度很高,运行中的系统可达到数十乃至上百个。而大部分系统由于建设的时间、开发团队和技术 往往不相同,系统之间的大部分都是独立运行的。随着信息化建设的深入各系统之间的交互需求越来越紧迫。但是由于信息化的建设不可能一触而就,也不可能再组 建一个团队把所有的系统重构。因此需要一个系统与系统之间交互的中间件。
映射
映射由多个底层组件组成,并依赖于已创建的架构。这些架构又依赖于 XML 架构定义 (XSD) 语言。在开发映射过程中如果懂得XSLT语言则会更加方便。
每个本地适配器均关联有一个接收位置,用于在特定地址侦听来自特定传输的消息。在接收位置收到消息后,消息将传递给适配器。适配器将向消息(通常在消息的 正文部分)附加数据流,添加有关接收数据的源终结点的所有元数据,然后将消息提交到 BizTalk 消息引擎。
由于BizTalk提供的适配器已基本满足需求,如有特别需求可以参考SDK文档进行开发。
管道
尽管初始消息是由适配器创建的,但对收到消息的处理过程大部分发生在接收管道中。管道处理针对消息内容以及消息上下文。对消息内容的处理通常发生在解码、拆装和验证阶段,而对消息上下文的处理则可发生在所有阶段。
BizTalk提供了比较方便的管道开发方法,通过继承BizTalk SDK提供的接口将消息流接收过来,经过处理之后再返回接口即可。无需涉及事务,大消息等复杂的内容。因此如需对消息进行底层的开发(例如Excel数据 流转为拆装器可识别的XML数据流,针对XML消息添加命名空间等操作)大部份是在管道中进行。
业务流程
业务流程是用于表示可执行的业务程序的灵活且功能强大的工具。您可以在直观可视化绘图中设计流、解释和生成数据、调用自定义代码以及进行所有处理。
消息、作用于消息的发送和接收操作以及传输消息的端口都是业务流程的基本元素。消息是业务流程与外界进行通信以及实施电子商务的媒介。
业务流程不但跟实际的需求关系紧密而且需要了解的技术也比较多。主要有以下几个需要了解的技术:事务,相关集,多部分消息,类型(端口,多部分消息)。还有应熟悉业务流程设计器提供的各种形状,这些形状表示了业务流程的逻辑流。
BizTalk开发系列(六) BizTalk开发简述的更多相关文章
- (一)react-native开发系列之Mac开发环境配置
写在前面 在开始之前,先说下选择react-native的背景原因 最近一年来,公司为了节省开发成本,以及降低维护成本,指派我开始做起前端开发app的工作,我和公司的小伙伴们就开始了漫长的app开发之 ...
- 【Qt编程】基于Qt的词典开发系列<六>--界面美化设计
本文讲一讲界面设计,作品要面向用户,界面设计的好坏直接影响到用户的体验.现在的窗口设计基本都是扁平化的,你可以从window XP与window 8的窗口可以明显感觉出来.当然除了窗口本身的效果,窗口 ...
- 微信小程序开发系列六:微信框架API的调用
微信小程序开发系列教程 微信小程序开发系列一:微信小程序的申请和开发环境的搭建 微信小程序开发系列二:微信小程序的视图设计 微信小程序开发系列三:微信小程序的调试方法 微信小程序开发系列四:微信小程序 ...
- leaflet-webpack 入门开发系列六矢量瓦片(附源码下载)
前言 leaflet-webpack 入门开发系列环境知识点了解: node 安装包下载webpack 打包管理工具需要依赖 node 环境,所以 node 安装包必须安装,上面链接是官网下载地址 w ...
- iOS开发系列--App扩展开发
概述 从iOS 8 开始Apple引入了扩展(Extension)用于增强系统应用服务和应用之间的交互.它的出现让自定义键盘.系统分享集成等这些依靠系统服务的开发变成了可能.WWDC 2016上众多更 ...
- arcgis api for js入门开发系列六地图分屏对比(含源代码)
上一篇实现了demo的地图标绘模块,本篇新增地图地图分屏对比模块,截图如下(源代码见文章底部): 对效果图的简单介绍一下,在demo只采用了两分屏对比,感兴趣的话,可以在两分屏的基础上拓展,修改css ...
- arcgis api 3.x for js 入门开发系列六地图分屏对比(附源码下载)
前言 关于本篇功能实现用到的 api 涉及类看不懂的,请参照 esri 官网的 arcgis api 3.x for js:esri 官网 api,里面详细的介绍 arcgis api 3.x 各个类 ...
- iOS开发系列--IOS程序开发概览
概览 终于到了真正接触IOS应用程序的时刻了,之前我们花了很多时间去讨论C语言.ObjC等知识,对于很多朋友而言开发IOS第一天就想直接看到成果,看到可以运行的IOS程序.但是这里我想强调一下,前面的 ...
- Android开发系列之搭建开发环境
接触Android好久了,记得09年刚在中国大陆有点苗头的时候,我就知道了google有个Android,它是智能机操作系统.后来在Android出1.5版本之后,我第一时间下载了eclipse开发工 ...
随机推荐
- 【面经】用递归方法对二叉树进行层次遍历 && 二叉树深度
void PrintNodeAtLevel(BiTree T,int level) { // 空树或层级不合理 ) return; == level) { cout << T->da ...
- http://blog.csdn.net/czmchen/article/details/42392985
http://blog.csdn.net/czmchen/article/details/42392985
- HDU4307 Matrix(最小割)
题目 Source http://acm.hdu.edu.cn/showproblem.php?pid=4307 Description Let A be a 1*N matrix, and each ...
- System.Windows.Markup.IQueryAmbient 在未被应用的程序集中定义
按照<WIndows Presentation Foundation>中介绍建立的WPF程序,可以在VS2008中创建控制台应用程序所得.创建之后将程序集输出类型改为:Windows应用程 ...
- jqgrid动态显示/隐藏某一列
jQuery("#grid_id").setGridParam().showCol("colname").trigger("reloadGrid&qu ...
- BZOJ4369 : [IOI2015]teams分组
将分组计划按照$k$从小到大排序,维护一个单调栈,每个元素为一个矩形,按最底下元素从高到低排列,栈顶最低. 每次加入一个矩形可选区域,维护单调栈,可以往回合并. 然后将所有最低点不满足的矩形取出,合并 ...
- Javascript的console.log()用法
Firebug & Chrome Console 控制台的一些其他功能console.log(object[, object, ...])使用频率最高的一条语句:向控制台输出一条消息.支持 C ...
- c++ 关于new文件
new文件用来管理c++的动态内存,这个文件声明了几个全局空间的函数(不是std空间的函数,全局空间的函数调用时是用全局作用域解析符),包括operator new 和operator delete的 ...
- ACM cigarettes
cigarettes 时间限制:3000 ms | 内存限制:65535 KB 难度:2 描述 Tom has many cigarettes. We hypothesized that he ...
- 不需要了解任何底层知识,就可以汉化!Let`s go!!!
汉化?莫要被这两个字吓到. 其实你也可以汉化,跟着我的步骤来,你也可以进行汉化,Let`s go!!!(大鸟飘过) 这里汉化的是微软企业类库的配置管理工具EntLibConfig.exe.当然,这里的 ...