企业服务总线及SOA组件技术方案项目技术解决方案建议书模板范文(完整方案)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
1.1 企业服务总线及SOA组件技术方案 (2)
1.1.1 XXAESB概述 (2)
1.1.2 AESB系统架构 (2)
1.1.3 AESB部署架构 (5)
1.1.4 系统集成部署架构 (6)
1.1.5 Apusic ESB 功能描述 (6)
1.1.5.1 AESB 操作功能 (6)
1.1.5.2 AESB 组件功能 (7)
1.1.5.3 AESB 服务管理功能 (11)
1.1.5.4 Apusic ESB 监控功能 (19)
1.1.6 Apusic ESB 扩展功能 (22)
1.1.6.1.1 AESB Elite功能 (22)
1.1.6.1.2 AESB 扩展开发功能 (22)
1.1.6.1.2.1 表输入组件AOP截断扩展 (22)
1.1.6.1.2.2 表输出组件AOP截断扩展 (22)
1.1.6.1.2.3 文本文件输入组件扩展 (22)
1.1.6.1.2.4 Excel文件输入与增量Excel文件组件扩展 (23)
1.1.6.1.2.5 XML输入组件扩展 (23)
1.1.6.1.2.6 增量文本文件输入组件扩展 (23)
1.1.6.1.2.7 文件组件策略的扩展 (23)
1.1.6.1.2.8 记录过滤事件扩展 (23)
1.1.6.1.2.9 FTP文件传输组件AOP截断扩展 (23)
1.1.6.1.2.10 文件同步组件AOP 截断扩展 (24)
1.1.6.1.2.11 指定字段类型扩展 (24)
本资料由皮匠网制作整理,更多方案下载请点击:
1.1.6.1.2.12 流程运行时的事件扩展 (24)
1.1.6.1.2.13 数据集成组件的扩展 (24)
1.1.6.1.2.14 触发器扩展 (24)
1.1.7 功能特点 (25)
1.1.7.1 坚固的微内核体系 (25)
1.1.7.2 联邦和自治部署体系 (26)
1.1.7.3 服务地址透明 (27)
1.1.7.4 事件驱动架构 (28)
1.1.7.5 SCA服务封装体系 (28)
1.1.7.6 SDO数据模型 (30)
1.1.7.7 分布式事务控制 (30)
1.1.7.8 基于DSL的脚本引擎 (31)
1.1.7.9 动态元数据 (31)
1.1.7.10 可靠消息传输 (32)
1.1.7.11 数据访问构件 (34)
1.1.7.12 数据变迁构件 (34)
1.1.7.13 跨平台支持 (34)
HP-UNIX 11.0, 11i (PA-RISC) (35)
1.1 企业服务总线及SOA组件技术方案
1.1.1 XXAESB概述
XXApusic企业服务总线(Apusic Enterprise Service Bus,简称为AESB)提供了SOA 所需的软件基础设施环境,以融合集成特性和面向服务特性为一体的基础架构,以一种高度
本资料由皮匠网制作整理,更多方案下载请点击:
本资料由皮匠网制作整理,更多方案下载请点击:
分布的部署模型,“统一消息”的数据模型,高度可扩展、包含开放端点的体系,实现一个对各种企业服务“来者不拒”的智能化的集成和管理中介,实现被集成的各个企业服务之间的数据汇总、应用整合、信息共享。
在Gartner 的报告中,ESB 被誉为SOA 的“心脏”,产品已经包含SOA 组件。
尽管目前在ESB 领域尚未有一个统一的标准,但是业界在ESB 的三大功能领域,达成了共识,即:
● 应用的出/入站:应用的请求发送和应用的调用
● 基于内容的消息路由:根据请求信息,调用相应的服务
● 消息转换:从一个服务可识别的消息,转换成另一个服务可识别的消息
XXApusic 企业服务总线(XXApusic ESB )提供了对这三大功能的完整支持。
1.1.2 AESB 系统架构
XXApusic ESB 立足于Apusic 应用服务器和Apusic 消息中间件之上,并与其无缝结合,具备面向服务、面向消息、事件驱动的特性,是一个在SOA 架构中充当服务间智能化集成与管理中介的灵活敏捷的基础平台。
XXApusic 系列产品中的XXApusic 应用服务器和XXApusic 消息中间件,为XXApusic ESB 提供了诸如事务、连接池、线程池、消息封装、可靠消息传输等基础软件设施制成。
之上是XXApusic ESB
的几个核心基础引擎,以及为实现应用接入而出厂定制支持的服务构件库。
本资料由皮匠网制作整理,更多方案下载请点击:
同时,XXApusic ESB 提供了可视化、界面化的配置部署工具,以可视化的方式提供全过程的支持。
XXApusic ESB 作为一个功能服务的请求者和服务功能提供者的桥梁,以松耦合的方式实现服务与服务之间的集成,实现服务的地址透明化和协议透明化。
面向服务架构(SOA )的实现前提是可以通过经济高效的方式整合现有的以及新建的应用、流程和服务,无需在应用中添加复杂的编程程序便可验证或确保信息交换的可靠连接,而企业服务总线(ESB )正是在SOA 环境中实现连接的理想解决方案。
AESB 通过以下多种能力来满足和保证应用及服务的管理需求:它能够提供服务化功能,可以透明的将旧有应用系统加入到框架的服务生命周期管理当中,从而最大程度的保证了对旧有系统的兼容性;提供各类应用及数据的服务注册、发现和寻址功能;在服务之间对消息进行匹配和路由;能够在请求方与服务提供方之间转换协议;能够在请求方与服务提供方之间转换消息格式;还能分配和提取不同来源的业务事件。
AESB
通过应用、系统和服务之间的中间层来执行上述所有任务,不仅能够确保应用的
总体复杂性不会因为连接接口的增加而增加,而且在许多情况下还能帮助企业避免或降低应用的复杂性,消除应用和系统之间所有硬编码链接。
ESB是所有应用、服务以及其他IT资产的信息交互中枢,服务交互中的参与者连接至ESB,而不是彼此直接相连。
当服务请求者连接至ESB时,ESB负责将其请求传递(通过消息)至能提供所需功能与服务质量的服务提供者。
即使协议、交互模式或服务能力并不匹配,ESB 仍可以促进请求者与提供者之间的交互与递送。
如果对所有的应用和有效连接都采用这种机制,则应用只需单一接口便可将ESB 连接起来,用于开展所有互动。
此外,连接ESB的所有其他资产都能通过这个接口与此应用进行互动,而其他资产同样只需一个接口便可实现与ESB的连接。
无论处理要求和复杂性发生怎样的变化,这些接口始终都是ESB环境中最重要的组件,并可在ESB中进行维护,以便在周围环境发生变化时确保应用能够以不变应万变。
消除应用之间的连接性可大大降低应用中接口的复杂性,从而降低有关对这些应用进行更改的成本和风险,让用户能够以更简单、更快速、更安全的方式来使用它们,尤其是能够让用户对更多的应用和功能作为服务加以访问和重复利用。
Apusic ESB提供了适配器,可以将包括WebService、JMS、JavaBean、数据库、文件等多种格式在内的信息源作为接入对象,并经由适配器体系接入ESB总线之中。
在ESB总线中可以进行消息格式转换和消息路由,消除数据源的异构和数据格式的不匹配。
通过Apusic ESB,建立了连接底层数据中心和上层业务应用的桥梁,实现多个应用系统间的实时、安全、可靠信息传输。
针对数据存储介质,Apusic ESB出厂时提供了默认的数据访问组件,对数据存储介质中的数据进行访问,包括采集、推送、侦听等。
这些组件会在出厂时被包装成SCA服务组件,可以在Apusic ESB平台中使用。
这些组件包括:
数据库访问组件:支持主流数据库的主流版本,例如Oracle 9i、Oracle 10g、SQL Server 2000、SQL Server 2005、DB2 8.x、MySQL 5等。
Excel访问组件:能够对Excel文件的数据进行访问
文本访问组件:能够对格式化的文本文件数据进行定制化、格式化访问
本资料由皮匠网制作整理,更多方案下载请点击:
文件数据库访问组件:支持文件数据库,包括Access和Visual Fox Pro
作为一个完备的企业服务总线产品,AESB具备架构、连接、中介、编排、设计以及监控六大领域的能力,其功能架构如图所示。
特别的是,AESB提供了界面化的设计工具和监控平台,以可视化的方式提供全过程的支持。
1.1.3 AESB部署架构
本资料由皮匠网制作整理,更多方案下载请点击:
本资料由皮匠网制作整理,更多方案下载请点击:
1.1.4 系统集成部署架构
1.1.5 Apusic ESB 功能描述
XXApusic ESB产品的功能包括但不限于下面4大功能点
1.1.5.1 AESB 操作功能
AESB拥有创建及管理AESB网络,驱动实例,数据源,触发器,闪回,CDC(Change Data Capture),消息集,JMS队列,Socket队列,调度,服务注册,流程,数据集成流程,服务集成流程,服务实例,资源同步,首选项配置,服务注册库等等功能。
本资料由皮匠网制作整理,更多方案下载请点击:
实现AESB的操作功能需要通过AESB-Designer开发管理平台来实现,AESB-Designer全称为Apusic Enterprise Service Bus Designer ,中文名为“XXApusic 企业服务总线设计器”,AESB-Designer是建立在Eclipse基础之上的“轻量级”ESB开发管理平台,通过它可以极大地降低AESB的开发与管理难度,提升AESB应用开发效率。
1.1.5.2 AESB 组件功能
XXApusic ESB产品的组件功能包括但不限于下面27个组件。
1.1.5.
2.1 连线
连线配置:流程在经过该连线的时候执行,用于判断流程是否可通过。
为了解决流程中业务逻辑的多样性,AESB 流程在分支节点的输出连线上添加了连线配置,可以填写业务逻辑判断条件,用于引导流程。
1.1.5.
2.2 分支、合并组件
分支、合并节点是对流程中连线的约束,所有输入任务节点只允许一条输出连线,其他节点只允许一条输入和一条输出连线,除此之外,分支节点允许有多条输出连线,而合并节点允许有多条输入连线。
1.1.5.
2.3 循环
循环组件用于处理消息流程中记录集遍历,以及按条件执行任务。
组件功能类似于java 语言中的for each和while。
1.1.5.
2.4 捕获异常
捕获异常组件用于监控并捕获流程抛出的异常。
若捕获到异常后则沿着“捕获异常”的输出连线继续执行流程,否则沿着节点的输出连线继续执行流程。
本资料由皮匠网制作整理,更多方案下载请点击:
1.1.5.
2.5 抛出异常
抛出异常组件允许在流程中抛出一个运行时异常,抛出异常的流程分支将无法继续执行。
抛出异常组件通常用于终止流程的不合法分支,如输入信息不合法。
防止流程在错误的分支上继续执行,并返回异常提示信息。
1.1.5.
2.6 映射
在此组件中可以往流程中添加新的数据类型,并可对数据变量进行值映射。
1.1.5.
2.7 XML转换
SDO是保存信息的数据结构,XML是符合xml语法的字符串。
XML需要转换成SDO 才能让消息流程直接使用里面的信息,SDO需要转换成XML才能把信息保存到文件中。
1.1.5.
2.8 JSON转换
本组件可以将符合JSON语法的字符串转换成SDO,让消息流程可以使用JSON里面的信息,也可以将SDO转回JSON。
1.1.5.
2.9 文本转换
SDO 是保存信息的数据结构,文本是流程中的文本消息。
文本需要转换成SDO才能让消息流程直接使用里面的信息,SDO需要转换成文本才能把信息保存到文件中。
文本转换组件定义了文本转SDO和SDO转文本两种转换方式。
1.1.5.
2.10 表输入组件
表输入定义了对数据库表的记录采集。
表输入节点通过定义SQL语句来采集记录,在设计期,表输入节点的下游节点可以获取该表输入节点所采集的数据的描述信息;而在运行期,表输入节点的下游节点则可以获取表输入节点所采集的记录实例。
1.1.5.
2.11 增量表组件
增量表则是用在数据的实时同步。
采用触发器、闪回、CDC等方式,将采集数据库表中的增量数据变化,从而达到实时同步数据的功能。
本资料由皮匠网制作整理,更多方案下载请点击:
1.1.5.
2.12 Excel相关
Excel读取组件用来读取Excel文件的内容,将读取的内容做为SDO对象,提供给下游节点使用。
可定义读取的起始行、起始列、读取行数、根据关键字替换列值为上一行等。
Excel输出组件将读取到的源表数据,输出到指定Excel文件中去。
1.1.5.
2.13 记录拆分
记录拆分组件用于将一个结果集拆分为多个结果集,例如:对于一组分数集,将其拆分为大于90、小于90大于60、小于60三组数据。
1.1.5.
2.14 表输出组件
表输出组件将上游集合变量的数据,同步(操作类型包括:插入、更新、删除)到指定数据源的指定表中,如果上游集合变量数据中不包含操作类型,则默认为插入操作。
1.1.5.
2.15 数据扩充
数据扩充组件,用于扩充源变量的字段,扩充字段来自关联变量。
1.1.5.
2.16 TXT输出
TXT输出组件,用于将数据库表数据和流程中的集合类型数据导出到txt文件中。
1.1.5.
2.17 存储过程调用
存储过程调用组件,用于调用数据库中的存储过程。
1.1.5.
2.18 数据相关组件
数据输入组件是用于从数据库中读取数据,同时对已读取的数据进行处理,有三种处理方式:“直接删除”、“逻辑删除”、“更新状态表”。
数据插入组件是在得到上游节点过来的数据后,把符合条件的数据插入或者更新到指定的数据库中。
数据更新组件是在得到上游节点过来的数据后,可以先对数据进行筛选,把符合条件的本资料由皮匠网制作整理,更多方案下载请点击:
数据更新到指定的数据库表中。
数据删除组件是在得到上游节点过来的数据后,根据配置的删除条件,对目标表数据进行删除。
数据查询组件是在限定的模型下,编写Sql查询语句对数据库进行数据查询。
限定模型是指:select结果集字段必须在你所导入的数据“类型”范围内。
SQL执行组件可以对一个指定的数据源执行若干句SQL语句,这些语句可以是DDL、DML或DCL。
1.1.5.
2.19 AMQ相关组件
AMQ是Apusic公司的MQ产品,实现了JMS规范。
“AMQ消息输入”做为流程的开始节点,监听并接收队列或主题中的消息,对于依赖JMS的系统内部通信或系统之间通信,该组件尤为重要。
“AMQ消息获取”可以根据"消息筛选规则",从队列里获取指定的消息,所以也可用于多个获取组件监听并接收一个队列。
“AMQ消息输出”组件可以把消息输出到相应的队列或主题上去,即:数据的输出方或发布者。
“AMQ文件输入”组件监听设定的文件池,当有文件传输进来时,可以选择将文件保存到本地目录、并可将其读取为上下文变量对象(包含来源路径、源文件名、文件备注等)。
“AMQ文件获取”组件根据文件名或文件UUID,从指定文件池中获取匹配的文件。
可以选择将文件保存到本地目录,并将文件相关信息保存为流程变量向后续节点传递。
“AMQ文件输出”组件将文件输出到指定的MQ文件池中,利用文件池传输文件。
文件可以是本地文件或自己生成一个新的文件。
1.1.5.
2.20 HTTP相关组件
HTTP服务端输入组件建立一个自定义的http服务,允许通过接收http请求来对流程输本资料由皮匠网制作整理,更多方案下载请点击:
入信息并运行流程。
组件定义了HTTP访问地址,消息类型和SSL安全连接选项。
HTTP服务端输入组件经常与HTTP输出组件搭配使用。
HTTP服务端输出组件用于设置响应HTTP请求的内容,响应的内容可以是自定义内容或者文件。
HTTP服务端输出组件需要和HTTP服务端输入组件配合使用。
HTTP客户端组件允许发送一个http请求到指定url,请求的响应结果将以文本、二进制或文件变量的形式包装,供后续节点使用,可自定义变量名。
1.1.5.
2.21 FTP相关组件
FTP文件监控组件是流程的起始组件,必须出现在流程的起始位置,不需要前置条件。
可以使用此组件监控FTP服务器上指定文件夹里面新增的文件。
FTP上传组件不是流程的初始组件,不需要任何前置组件和前置条件,可以出现在流程的任何非初始位置。
可以使用此组件将指定的文件或文件夹上传到FTP服务器端。
FTP下载组件不是流程的初始组件,不需要任何前置组件和前置条件,可以出现在流程的任何非初始位置。
可以使用此组件将指定的文件或文件夹从FTP服务器端下载到本地文件系统。
1.1.5.
2.22 JMS相关组件
JMS消息输入组件提供接入Apusic MQ服务器或者其他厂商的MQ服务器的服务,从相应的JMS queue里面获取信息。
在设计期,JMS消息输入节点的下游节点可以获取该JMS 消息输入节点所采集的数据的描述信息;而在运行期,JMS消息输入节点的下游节点则可以获取JMS消息输入节点所采集的消息实例。
JMS消息获取组件提供接入Apusic MQ服务或者其他厂商的MQ服务器的服务,从相应的JMS queue获取信息。
在设计期,该结点的下游节点可以获取该节点所采集数据的描述信息;而在运行期,下游节点则可以获取该节点所采集的消息实例数据。
JMS消息输出组件提供接入Apusic MQ服务器或者其他厂商的MQ服务器的服务,可以把消息输出到相应的JMS queue中。
本资料由皮匠网制作整理,更多方案下载请点击:
1.1.5.
2.23 Socket相关组件
Socket服务端输入组件用于启动一个Socket服务器,可以接收Socket客户端发送的请求,根据配置中的“消息内容”对信息进行相应的处理。
Socket服务端输出组件用于向Socket客户端发送响应消息,根据配置中的消息类型相应地发送文本信息或二进制信息。
Socket客户端组件有两个页面配置:第一个页面为“Socket请求”,用于向指定的Socket 服务器发送请求;第二个页面为“Socket响应”,用于接收Socket服务器返回的消息。
1.1.5.
2.24 Email发送
Email发送组件不是流程的起始组件,不需要前置组件和前置条件,可以出现在流程的任何非起始位置。
可以使用此组件连接一个邮件发送服务器(smtp服务器)发送电子邮件。
1.1.5.
2.25 WSDL调用
调用组件不是流程的初始组件,可以出现在流程的任何非初始位置。
使用前提:要使用此组件,必须先在流程属性中的“WSDL管理”中导入服务的WSDL地址,才能进行相关配置;必须要有符合服务请求类型的输入变量。
1.1.5.
2.26 文件相关组件
文件监控组件,用于监控指定文件夹(AESB-Runtime所在主机)里面新增和修改的文件,每增加或修改一个文件,都将会触发运行一次流程,并将新增或修改文件的相关信息缓存到fileMonitorInfo变量中,供后续组件使用。
文件读取组件,用于读取指定文件的内容,并将读取的文件内容缓存到生成的变量中,供后续组件使用。
文件输出组件,用于把指定内容输出到指定文件,并将输出的文件内容缓存到生成的变量中,供后续组件使用。
本资料由皮匠网制作整理,更多方案下载请点击:
1.1.5.
2.27 流程调用
流程调用组件可以调用指定流程的操作,控制流程的启动或停止并支持事务回滚。
1.1.5.3 AESB 服务管理功能
1.1.5.3.1 服务注册与管理
服务注册库SRR(Service Registry and Repository)以一致的方式存储服务并对服务进行版本控制。
服务注册库支持运行时的服务端点查找(service end point look-up),有助于防止服务的新版本的部署对服务消费者的影响。
AESB服务重用的关键是SRR具备服务注册与服务查找的能力。
SRR不仅支持服务发现和服务重用,同时还支持在各个领域彼此关联的服务,例如,元数据管理。
在实时运行的服务之间进行动态、有效的交互,来增强连通性。
通过利用动态连接, SRR能够使ESB在请求到达时找到最适合的端点,从而支持动态SOA与松耦合。
在整个SOA产品的生命周期中可以对SRR进行管理,从开发、测试、生产直到结束。
SRR要管理整个机构中的服务访问权限,确定哪些客户能够进行访问以及能够访问哪些服务。
它在整个监管生命周期中通过用户、用户类型和服务发布地点来进行监管。
Apusic ESB提供了支持服务注册库SRR,可以进行服务的注册、导入、导出、代理Web服务和服务的发现、查找、删除等功能,并将进一步加强服务的管理及监管功能。
服务注册库SRR(Service Registry and Repository)以一致的方式存储服务并对服务进行版本控制。
服务注册库支持运行时的服务端点查找(service end point look-up),有助于防止服务的新版本的部署对服务消费者的影响。
跟一些业务规则一起运用,来为特定的请求和特定的客户选择最合适服务端点。
通过与监控设施结合运用,可以从负载平衡的角度或者根据特定业务需求,来确保服务级协定(SLA)不被破坏。
本资料由皮匠网制作整理,更多方案下载请点击:。