




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、大中型企业与公共组织云平台文档更改审校批准分发1序号分发地点职位签字日期审校人版本审校意见日期作者版本更改参考/备注2011-12-011.0大中型企业与公共组织云平台所有。2013的,本文档任何整体或部分的内容不得被、复印、翻译或缩减以用于任何目的。本文档的内容在通知的情形下可能会发生改变,敬请留意。请注意:本文档的内容并不代表软件所做的承诺。2大中型企业与公共组织云平台目录目录.2目录3第一章前言..1.1.3.概况9面向服务的企业服务总线12支持业务流程编排的应用集成平台12面向服务的组件化集成开发平台121.2.技术架构和优势.1.1.3
2、.......1.特性列表15提供可进行全生命周期管理的集成开发环境15高度模块化及可扩展的微内核架构16高度可重用的服务组件架构17构建面向服务的集成17支持灵活的数据转换17支持丰富的传输协议17集群和负载均衡: 高可靠性,高可用性18内置开箱即用的应用适配器19提供可灵活编排的消息流及工作流20提供集成管理和中心20模. ..面向组件的开发模式21集成平台参与. 22集成平台典型开发步骤22面向服务的集成23第二章2.1.从服务开始232.2.服务表达方式2
3、43大中型企业与公共组织云平台2.3.面向服务的编程..2.4.3.J2SE 下的接口编程25Java EE 下的面向服务编程25OSGI 下的面向服务编程26UAP-ESB 组件框架的服务编程262.5.使用服务仓库282.6.本地服务管理离线292.7.服务仓库管理.292.8.基于服务仓库的开发模式292.9.服务仓库开发常见问题30组件开发实践31第三章..3.1.3.深入理解组件概念31组件基本31组件和服务31组件和流程3..理解组件动静之分32静态组件32动态组件3.1.3.
4、.3.理解组件交互模型33按组件类型分33. 34按部署按同步异步分3...4.4.理解组件装配模型35组件类型35复合组件的两面性37集成服务组件与协议绑定37绑定的传递与组件变量的传递373.5.托管组件的应用场景3..组件开发常见模式38静态单例模式38模式394大中型企业与公共组织云平台..5.装饰器模式39门面模式40观察者模式41数据处理指南44第四章4.1.数据转换器4..4.2.3.统一消息模型44SDO 基本知识45ESB 消息模型
5、原理48ESB 消息模型编程指南50.....表配置57变量及简单表配置57XPATH 表公式表配置58配置61配置62配置64配置67表Cron 表LDAP 表第五章事务配置指南695.1.事务基本概念6....5.UAP-ESB 事务配置策略69服务及操作事务配置69ComponentService 事务配置70Reference 事务配置71服务调用结点上事务配置72流程结点上的事务配置73第六章EIS 系统适配器开发指南7..6.
6、.4.分布式事务74XA74两阶段提交75一阶段提交(Best Efforts 1PC 模式)76事务补偿机制766.2.EIS 事务补偿机制775大中型企业与公共组织云平台6.3.EIS 设置786.4.事务管理器开发786.5.开发示例79第七章管理中心使用指南8.....7安装87日志管理92日志查看92数据源配置93ESB-Server 配置94历史. 97集群管理9.....7.2.7.组件管理98集成组件98组件
7、103服务104流程107简单对照109规则对照109消息1..部署管理111服务器111发布1..任务管理114任务114历史任务1...5.4.运行服务层次. 116. 116. 117服务模块集成方案单次调用118集成方案整体调用1196大中型企业与公共组织云平台...BindingData. 119消息统计120组件服务请求统计121该节点进行组件服务请求信息的统计。统计结果根据“参数配置”中配置信息进行信息统计。参数配置1217.6.
8、..3.用户管理122用户122用户组124. 126第八章服务器及集群管理12...1.4.服务器分类127通用服务器127前置服务器128消息中间件服务器128数据库服务器12.......9.集群管理.130新增集群131删除集群131新增服务器131删除服务器132设置前置服务器132数据源页签132ActiveMq 页签133页签133同步13..集群伸缩策略134主备模式134负载均
9、衡134第九章集成项目部署指南13.1.开发环境部署指南136单机模式1367大中型企业与公共组织云平台9.1.2.分布式模式13.....生产环境部署指南143建立集群143添加服务器144同步配置信息145部署组件145生产环境运行145集群环境部署1469.3.热部署.1479.4.服务器宕机恢复1489.5.双机热备1489.6.部署场景示例1508大中型企业与公共组织云平台第一章前言UAP-ESB 作为企业应用服务的基础运行环境和开发技术平台,基于 OSGI 微内核框架设计,为用户提供一个开放的、
10、通用的、可扩展的架构,使得用户能够按照统一的方法,动态的开发、管理和部署组件。微内核架构还意味着用户可依照实际应用场景选择、装配需要的组件,真正实现按需,按需组装;动态部署,无需重启服务器。此外还可以实现动态切换、流程持久化运行、是否流程运行历史等都可以通过启动/停止相应的组件来实现。在 UAP-ESB里,组件是基本的设计、开发、部署单元,每个组件其他组件的服务(0个或者多个),每个组件同时又对外提供服务(1 个或者多个)。组件间通过服务连接,多个组件可组装为更复杂的组件(复合组件),组件支持多种实现方式,组件间保持松散的耦合关系,组件可以动态的部署、启动、停止,而影响其他组件。底层的微内核框
11、架内置了丰富的基础组件,为上层的开发提供强的支撑,比如日志管理,部署(文件扫描、分组部署等),公共算法,持久层框架,组件全生命周期管理,微内核内的统一接口等等,另外如异步处理框架则提供了标准的一致的方式来处理异步请求的消息,包括消息处理结果、失败重试等。基于微内核,UAP-ESB 提供了四个模块,分别是 SCA 组件模型编程框架、SDO 统一消息模型、流程虚拟机引擎、服务仓库及消息处理及转换。1.1.概况UAP-ESB V63 在原有 UAP-ESB V57 版本基础上,遵循 SOA 领域最新技术进展,借鉴各大厂商最新 SOA及开源之优秀架构和设计,并基于的长期客户合作实践和集成项目积累之经验
12、,量身定制,既考虑技术架构的先进性,又考虑当前时期型用户的实际集成需求,保留原有EAI/ESB的优秀功能,同时更侧重整体 SOA 解决方案的落地。重点做到:架构有弹性,功能易扩展,实施周期短,易部署,易维护,常用场景内置化并提供集成 IDE 及快速向导工具。大大降低集成项目的难度,提高项目交付效率。主要技术特点和功能如下:全面支际化,目前支持英文和中文;提供企业服务总线(ESB),实现面向服务的应用集成;基于 OSGI 的微内核架构,支持集成场景的可视化建模和全生命周期管理,包括建模、开9大中型企业与公共组织云平台发、部署、测试、调试及;支持松耦合组件化编程模型,包括组件组装及组件交互,内置符
13、合 SDO 规范的统一消息模型;支持分布式组件事务模型,提供异下事务保障机制;支持集群及组件分布式部署;内置基于消息中间件的组件通信机制,保证消息的可靠性;内置工作流引擎,支持业务流程定制;内置丰富协议及数据格式转换器;内置 NCV5X 及 V6X 版本适配器(支持权限验证)。10大中型企业与公共组织云平台UAP-ESB,主要包括微内核运行平台、消息中间件接入层、数据库接入层、服务组件模型编程框架、服务仓库、服务总线、全局事务管理、业务流程引擎、集成开发环境及管理中心。如下图所示:业务流程引擎企业服务总线UAP-ESB管理服务仓库服务服务发现中心组件装配组件事务组件模型组件交互组件部署组件运行
14、服务组件模型编程框架 SCA Framework消息中间件接入层数据库接入层微内核运行平台图 1.1-1 UAP-ESB 总体架构图UAP-ESB,基于 OSGI 微内核运行平台,使得整个可随需扩展,高度模块化,且支持动态部署。同时引入消息中间件作为底层消息传输通道,ESB 内部消息处理尤其是分布式部署时消息处理的高可靠性;本版还进一步增强了 SCA 服务组件编程框架,完善了组件装配模型和组件交换模型,并全面支持了 SCA 组件事务模型,实现了有复杂依赖关系组件的分布式部署、动态更新、错误恢复机制;按照业界对集成功能划分及发展阶段定义,UAP-ESB有以下几个重要的功能:11服务绑定应用适配器
15、数据转换集成模式消息模型消息路由协议转换集成开发环境大中型企业与公共组织云平台1.1.1.面向服务的企业服务总线图 1.1.1-1 UAP ESB 企业服务总线架构图1.1.2.支持业务流程编排的应用集成平台图 1.1.2-1 业务流程架构图1.1.3.面向服务的组件化集成开发平台打造基于组件化编程的开发平台,OSGI+SCA。强大的集成开发环境:设计-开发-部署-运行-调试-的全开发环节的支持。自由的开发集成组件、协议组件、消息处理组件、数据器,编制流程,自定义动作,编写处理代码、建立实体模型、服务接口等等。12大中型企业与公共组织云平台图 1.1.3-1 面向服务的组织化的集成开发环境13
16、大中型企业与公共组织云平台1.2. 技术架构和优势服务服务发现图 1.2-1 UAP-ESB 技术架构图传统的 JAVA 平台及 JAVA EE 提供了大量的数据编程模型及 API,但是这些技术并没有形成有14集群和分布式部署框架节点管理、负载均衡、分布式部署、SLA、热备、错误恢复JPA 持久层框架ORACLESQLServer数据库接入层JMS 消息框架ActiveMQ消息中间件接入层服务服务部署框架系统日志公共权限管理测试框架微内核运行平台全生命周期管理企业服务总线 UAP-ESB服务权限管理仓库组件装配服务绑定全局事务组件模型组件交互组件部署SEDA组件运行适配器框架协议转换Webse
17、rvice/JMS企业集成模式应用适配器统一消息模型SDO 规范、XPATH消息路由 可定制消息处理规则数据转换丰富的转换规则管理中心SPDL 流程定义语言循环、分支、Fork-Join、异常处理、任务表单集成、服务集成流程虚拟机引擎集成开发环境大中型企业与公共组织云平台机的整体,而是相互,不能为工具及框架层提供强的支撑,有些数据模型使用起来很,并且功能不够丰富,没有支持常见的应用开发模式。SDO 的意图就是要创建一个易用的、适合外层工具及框架调用的数据层,它可以提供跨异构数据源的统一的数据编程接口,UAP-ESB实现了符合 SDO 接口规范的统一消息模型,它贯穿于整个平台,是集成各种异构数据
18、的基础,是组件内部数据表达的统一标准,也是各种流程活动节点传递信息的重要纽带。流程虚拟机是消息流、业务流及工作流运行的基础引擎,提供了常见流程模式的支持,提供流程持久化、人工任务、异步、模式、定时机制、状态基础功能。流程虚拟机和具体流程语言无关,基于流程虚拟机提供的公共引擎,可以定制开发各种流程语言,如 BPEL、JPDL 及UAP-ESB 开发的 SPDL。服务管理中心是 UAP-ESB面向服务架构的所在,负责整个 ESB的服务、服务查找、服务调用及服务,组件间的交互依靠的就是服务管理中心。在 UAP-ESB中可以通过组件配置里的服务绑定进行服务的及服务调用,也可以通过在 Spring 配置
19、文件里式的进行服务的和调用,还可以通过编程方式进行。消息处理及转换模块提供了丰富的数据处理、转换功能,此模块依赖于 SDO 统一消息模型,支持基于公式的规则定义,支持 XPath,支持任意复杂类型的转换,外部消息的接入,流程里的各种消息处理均依赖此模块。基于流程虚拟机引擎,通过 SDO 统一消息模型来规范流程内数据的定义及,并借助消息处理转换模块丰富的数据处理功能,UAP-ESB 对外提供了 SPDL 流程语言,可供编排各种复杂的流程,支持人工任务并能够和各种异表单相集成,流程里调用的服务均从服务管理中心获取。服务管理中心,参考 SCA 服务组件架构思想,UAP-ESB 提供了 SCA 组件模
20、型编程框架,给出了组件的分类,支持组件的自由装配,支持组件间通过多种模式进行交互。另外由于在异下工作,组件管理模块基于数据转换处理模块提供了外部系统数据和内部消息转换的可定制的解决方案。1.3. 特性列表1.3.1.提供可进行全生命周期管理的集成开发环境全生命周期开发管理:集成开发环境提供可视化服务、实体、组件等建模,提供大量可复用服务、提供典型的企业集成模式、提供测试案例及测试客户端生能;提供可跟踪和调试流程、组15大中型企业与公共组织云平台件交互等快捷工具。开发设计部署治理测试1、ESB-Server、集成开发环境、管理中心全面支际化。2、全新设计图标集成开发环境a)与解耦,通过管理中心发
21、布部署集成组件;支持流程调试;b)提供服务编、组件编、实体编、服务仓库视图、模视图、交换规则编、简单对照编、流程编;c)提供集成项目新建向导、配置界面、导出用户包;3、提供 Unix/Windows 安装盘;支持静默安装。1.3.2.高度模块化及可扩展的微内核架构微内核架构,提供模块化部署环境,支持有状态组件热部署和分布式联动部署,高度可扩展。a)支持数据源动态切换;b)新增安全框架及用户权限;c)内置 NC、SAP 适配器及 U8 到NC 各种单据导入适配器;d)支持大数据对象为参数(使用流作为参数处理);e)日志异常增强、EIS 和全局事务。16大中型企业与公共组织云平台1.3.3.高度可
22、重用的服务组件架构完美支持 SCA 服务组件编程模型,支持复杂组件组装及组件交互方式,提供松耦合、高度可重用的编程框架。1.3.4.构建面向服务的集成提供服务仓库,支持多格式服务、服务发布、服务绑定、服务查找、服务策略/SLA,全面构建面向服务的集成。提供服务仓库实现跨平台服务的统一管理,强化面向服务的编程模型,同时基于服务仓库还可实现组件间透明调用;1)支持多种方式进行服务的和管理,如直接建模、WSDL 导入、元数据导入、Java 接口导入、新建和修改等。2)支持服务的分层。3)支持服务的动态绑定。4)支持服务和发现机制。1.3.5.支持灵活的数据转换系统内置了基本的数据转换器,同时支持用户
23、扩展数据类型转换器。1.3.6.支持丰富的传输协议目前业务场景常用的 WebService、TCP、MAILSMTP、HTTP、FILE、DBMonitor 等协议,用户可以在中直接添加协议的绑定。RPC 风格Web Service 适配集成里某些业务系统发布的 Web Service 是 RPC 风格的,该风格的 WS 在兼容性上有些问题:大部分系统无法生成该风格 WS 的客户端,及调用该风格的 Web Service。本版本做了 RPC风格 WS 的适配工作,包括两部分:通过ESB 的IDE 我们可以导入并适配RPC 风格的Web Service 为Document Literal Wra
24、pped风格的 Web Service;17大中型企业与公共组织云平台RPCStyle WSDLDo-Wrapped Style WSDL对外发布的是 Document-Literal-Wrapped 风格的 Web Service,当调用被的 RPC 风格的第Web Service 时候,会做 SOAP 消息的翻译工作。逻辑如下图所示:DoeRequesWSRespo1.3.7.集群和负载均衡: 高可靠性,高可用性业务组件可按需进行分布式部署,支持节点错误恢复,支持服务器节点及用户请求两个层面的Failover 机制,内置基于消息中间件的可靠传输,提供大并发处理能力、高可靠性及高可用性。1)
25、支持集群及负载均衡,可动态添加或者移除服务器节点,可动态更新服务器节点的部署组件;2)支持组件热部署,支持组件分布式部署,提供服务器当机时组件自动恢复技术,无需任何附加管理;3)支持主机双机或者多机热备;4)内置消息中间件实现组件间消息通信的高可靠性,确保组件间交互的可靠性;18RPCStyle WSEndpointRPCStyle WSEndpointIDETranslator大中型企业与公共组织云平台1.3.8.内置开箱即用的应用适配器1)提供了对 NC 系统(NC55、NC56、NC57、NC60、NC61、NC63)的无缝集成,可以通过界面配置及少量的代码开发,完成与 NC 系统的交互
26、。2)提供了简单易用的内置组件和内置服务,简化了协议配置和使用。3)凭证辅助信息对照规则实际项目中经常会遇到要把一种系统导出的凭证导入到另一个系统中去的问题:例如,把 U8或 K3 系统的凭证导出,经过一定的格式和语义转换导入到 NC 系统中去。从业务上来看,凭证辅助信息对照是一个整体的翻译:需要结合源公司、会计科目、辅助核算信息,整体翻译成目的公司、会计科目,会计科目信息。为了支持这种翻译我们在交换队则中开发了“辅助核算信息对照”对照规则,如下图所示:用户在配置的时候需要在源凭证与目标凭证之间根线,将规则选为“VoucherAuxiMap”并配置辅助核算信息相对于会计科目的位置、选择辅助核算
27、对照规则文件。辅助核算对照规则文件如下所示:19大中型企业与公共组织云平台该对照规则可以由客户或实施填写,根据业务情况,对凭证中可能出现的辅助核算信息做对照。1.3.9.提供可灵活编排的消息流及工作流1.内置基于流程虚拟机的消息流和工作流引擎。流程虚拟机是消息流、业务流及工作流运行的基础引擎,提供了常见流程模式的支持,提供流程持久化、人工任务、异步、模式、定时机制、状态基础功能。流程虚拟机和具体流程语言无关,基于流程虚拟机提供的公共引擎,可以定制开发各种流程语言,如 BPEL、JPDL及UAP-ESB 开发的基于 Spring 的 SPDL。2.支持丰富的内部数据转换器,零配置即可实现数据的智
28、能转换;3.改进 Webservice 协议实现:提供 JMS 及 http 支持,提供快速发布及测试工具;4.增加 TCP/Socket 协议支持;5.基于 RDI 改进 DBMonitor 协议;6.支持 JPA 持久化框架。1.3.10. 提供集成管理和中心1.全新 UAP 风格的管理中心、能与 UAPportal 集成2.支持 ESB-Server 服务信息、参数配置,系统维护;集群配置管理3.支持用户包安装、发布部署及/查看所有操作20大中型企业与公共组织云平台4.支持服务、实体、服务管理:发布、及修改;5.支持组件实例、绑定信息、参数初始值的修改;6.支持消息、流程7.支持人工任务
29、查看及模拟提交;8.支持数据对照等运行态进行配置。1.3.11. 模模视图中内置了通用模式框架。用户运用此视图可以方便地生成所需的模式工程。同时还提供了模式分组管理的功能,极大程度上提高了开发效率,减轻了开发工作量。如下图所示,以模式为管理,每个模式单元由两大部分组成,分别是属性组(Property)和实例组(Instance)。模式属性组中比较重要的是模式。用来查看模式的信息和填写生成案例需要的相关属性。模式实例组下是生成的模式实例。模式的生成过程非常的简单,打开模式查看模式的相关,填写好相应属性信息后,点击 generate 按钮,便可生成需要的模式案例。生成的案例会在模式实例中。如上图所
30、示,在WebService 模式中填写好相关的属性信息后,点击 generate 按钮,便会生成相应案例,在实例组下可以查看。目前加入到模中的模式有:数据库、WebService。1.4. 面向组件的开发模式集成平台打造全新的组件化开发体系,使得结构更灵活,代码更复用,从而利于业务系统的后续维护及持续创新。开发以组件为基本开发单元,组件设计之初就要求明确改组件对外提供的服务,依赖的服21大中型企业与公共组织云平台务,从工具层面强调组件间的松散耦合,保证设计符合面向对象和面向接口的特征。1.4.1.集成平台参与平台开发:平台的开发及内置组件的开发增值开发:在原有基础上增加协议类组件,消息处理类组
31、件二次开发:主要开发交换组件业务流程,主要配置,包括流程内部定制的一些代码级内容,如自定义 ActionHandler,开发 java 结点等。实施: 配置辅助参数,交换规则等,后续版本支持开发灵活将 IDE 里各项配置发布为可供实施修改的配置。管理员:利用管理中心,系统运行情况,配置一些常见管理参数。最终用户: 享受集成后提供的业务服务,比如通过邮件审批单据等。1.4.2.集成平台典型开发步骤1.准备 UAPIDE 环境2.UAPIDE + UAPESBServer + UAPESB-Agent3.通过配置界面配置基本信息,比如 server 位置,数据源等4.同步 server 配置信息到
32、 UAPESB-Agent5.新建或者导入 EIP 集成项目6.建立服务、实体,流程等;7.选择组件:静态组件、动态组件、集成组件等;8.配置组件基本信息,关联流程,协议绑定;9.根据需要增加简单对照,交换规则,安全等;10.编辑组件、代码等11.配置组件导出、导入 package 及 bundle 等12.运行调试13.发布、部署14.运行时各种日志,报表分析22大中型企业与公共组织云平台第二章面向服务的集成2.1. 从服务开始遥想开天辟地,在茹毛饮血的远古为了生存我们的祖先已经深谙服务的重要性他们在与自然中将有限的人力分成多个小组,每个小组承担不同的职责,他们使用最简单的语言和手势来相互协
33、作(外部的服务),经过几十万年甚至上百万年的努力奋斗,最终战胜大自然,并出现了人类的第一次大分工,即将农业和畜牧业分离开来。没错,人类就是从服务开始的!人类发展至今天,共经历过三次的大分工,而每一次的大分工都极大的提高了生产力,而这一切展示的是良好的服务带来的!也许有人会说这太牵强,那么就让我们看一下现代的情况,不难发现不管是还是,越是发达的地方其服务业的水平也就越高!这里我们不妨再看一下更具体的例子:微软因为向终端用户提供了具有友好、易用界面的 OS 的服务而成就了现在的软件王国;因为向用户提供了顶级的搜索服务,成就了另一个神话;还有、,随着我们中国的蓬勃发展,、阿里巴巴等,我们看到中国也有
34、越来越多的公司因为向客户提供了良好的服务而挤身为世界级的强者!前边领略了服务的,接下来让我们来仔细看看这些服务:因为人们总想引领时尚,所以有了形象设计;因为人们不想跑腿,所以有了邮局、物流业,有了快递公司,还有了、,家用电器,汽车.;如果没有这些服务,那世界会是什么样子呢?你会发现大家都在忙着种地,建设现代化将无从谈起!一个是这样,如果往小了看一个企业也是这样:从人力到财务,从 IT 到行政,有了他们所提供的日常动作服务我们才能专注在的开发上!正是因为分工越来越细、服务越来越精,我们才有机会在享受这些服务的时候能将的精力更专注于的工作上,从而向其他人提供更好的服务!站在巨人的肩膀上,你已经是巨
35、人!如果再向上爬一小步(也许会很难),那你比巨人还高!好了,让我们进入软件的世界再来看一下:有了最基本的服务和协作就能构建一个系统提供服务,而该系统所能提供的服务因为定义了良好的接口契约所以能很容易的被其他服务所,从而构建出来更大的系统并提供更强大的功能。,这就是 SOA 的关键所在,一切从服务开始,通过不断的集成发展业务需要的细粒度服务完成创新,最终让企业甚至整个更敏捷高效!23大中型企业与公共组织云平台UAP-ESB 从设计理念上已经了一个单纯的 ESB 而是一个完整的 SOA 完全解决方案的架构平台,它可以提供从全生命周期的开发管理到企业级应用系统集成全方位的服务。2.2. 服务表达方式
36、从 SOA 的角度来看,一个服务要想被大家容易的使用必须有良好的定义!那什么是良好的定义呢?简单来说就是所见即所得(这是一种自描述功能),还要提供服务的发现机制使得用户很方便的获取这些服务!一个服务可以通过各种各样的方式提供出来,方便使用:直接使用 API,也就是接口方式,比如 java interface,或者 C/C+里广泛使用的动态连接库。这是一种紧耦合的方式,很多传统的软件系统都是以这种方式构建的,灵活性差,一般复用率也很低。通过各种协议进行。随着计算机软硬件技术的发展,以技术为基础的各种协议得到了越来广泛的应用,系统所提供的服务也越来越多的允使用协议来。特别是 HTTP/HTTPS
37、协议和 WebService 协议的发展,让更大范围的服务复用成为可能。Web service 描述语言(WSDL)就是这样一个基于 XML 的语言,用于描述 Web service 及其函数、参数和返回值。因为是基于 XML 的,所以 WSDL 既是可阅读的,又是人可阅读的,这将是一个很大的好处。一些最新的开发工具既能根据你的 Web service 生成 WSDL 文档,又能导入 WSDL 文档,生成调用相应 Web service 的代码。还有一些特定的服务,如果文件系统服务,数据库服务等。2.3. 面向服务的编程SOA 和基于标准的Web 服务以及基于互联网的交付模式的出现为新的软件平
38、台的技术创新提供了重要的基础。在 UAP-ESB V6 中的称作 SOP(面向服务编程)的一种性的软件组件化技术就是这些技术创新之一。SOA 的重点是使用“服务操作”的各个系统之间的通讯,而 SOP 是为建立灵活的应用程序模块提供一种新的技术。这种模块把内部流程、本地服务操作当作“组装的元件”。 SOP不是仅仅使用服务这些系统,而是提供一种模块驱动的技术,使用内存中的服务镜像运行一个完整的应用程序。由于这些内存中的服务能够通过 Web 服务标准或者任何专有的协议透明地实现外部化,SOP 能够自动地把 SOA 添加到应用程序模块中,并且从“内部”进行实时整合,从而消除价格昂贵的数据的需求。SOP
39、 模块能够用来改变和集成数量级,比单独使用 SOA 速度更快、更方24大中型企业与公共组织云平台便。2.4. J2SE 下的接口编程Java 技术发展到今天,设计模式被广泛使用,并发展了设计模式,其技术本身也在追求松耦合、细粒度封装,以达到更好的复用、易用的效果。比如 IOC:其原理是基于 OO 设计原则的 TheHollywood Principle不创建对象,但是描述创建它们的方式;在代码中不直接与对象和服务连接,但在配置文件中描述哪一个组件需要哪一项服务;最终由容器负责将这些在一起。在java 7 中对于 Web 服务堆栈将会有所升级,包括 JAXP 1.4、JAXB 2.2a 和 JA
40、X-WS 2.2。Java 7 也包括 I/O 和上的数个加强,包括可扩展异步 I/O 操作、socket-channel binding 和配置以及多路传送数据报。所有这些都使用得面向服务的编程变得非常的容易。2.4.1.Java EE 下的面向服务编程自 Java EE 架构规范是专门为企业级的应用而量身定制的,其内部的很多容器都是以服务的方式提供的。自 1.5 版本开始,除了原来的比较突出的应用服务器的 WEB 容器和 EJB 容器,就置入了对 WEB Service 的支持,其中主要的 API 包括:JAX-RPC 1.1JAX-WS 2.0JAXB2.0SAAJ1.3JAXR1.0S
41、tAX1.0Web Services Metadata 2.0Web Services 1.2Java EE 中最显著的性能是 Java 注释的用法。为了创建一项服务,开发者只需要编写一个 POJO(Plain Old Java Object)类,用适当的 Web 服务注释解释。Java EE 容器将负责将 POJO 作为 Web服务。Java EE 6 通过 JAX-RS 1.1 添加了对 RESTful Web 服务的支持。JAX-RS 根据 REST 架构风格提供 Java 注释作为 Web 服务来POJO 类。在 Java 7 中,对于 Web 服务堆栈将会有所升级,包括 JAXP 1
42、.4、JAXB 2.2a 和 JAX-WS 2.2。25大中型企业与公共组织云平台Java 7 也包括 I/O 和上的数个加强,包括可扩展异步 I/O 操作、socket-channel binding 和配置以及多路传送数据报。这些可以被用来为 SOA 平台实施提供一种更好的可扩展性和性能。2.4.2.OSGI 下的面向服务编程OSGi 是由 1999 年成立的 OSGi提出的一个开放的服务规范,最初的目的是为设备,确切地说是为可以通过的设备提供一个通用的软件运行平台,不同设备之间的硬件和操作系统差异,使软件可以动态地部署和更新。后来 Eclipse 组织注意到了 OSGi 的优点,决定将
43、Eclipse3.0 及后续版本的插件体系结构基于 OSGi 来实现,并专门成立了一个子项目Equinox 来实现 OSGi R4 规范,把 Equinox 作为 Eclipse 的底层运行平台。Eclipse 组织的这一决定带来了双赢的局面,今天的 Eclipse 由于其出色的可扩展的体系结构,已经不再是一个单纯的 Java IDE,而是一个开放的开发平台,一个通用的可扩展的软件框架,OSGi 也不再局限于嵌入式领域,而是成为了一个通用的动态组件开发环境,在桌面,服务器端等领域得到了大量应用。OSGi(Open Services Gateway Initiative,开放服务网关协议)提供了
44、一个面向服务组件的编程模型,基于 OSGi 编程,具有模块化,标准化,面向服务,动态性,易复用,易扩展,易部署等诸多优点。OSGi 带来了规范化的模块划分,低耦合的模块间关系,统一的模块开发方式,可动态插拔的模块管理环境。正是看到了 OSGi 规范的诸多优点对整个 SOA 架构的好处,我们从 UAP-ESB 设计之初就把其考虑进去,整个就架构在 OSGI 一个微内核上。所有的功能都是以 OSGi 的 BUNDLE 的形式提供,在 BUNDLE 中内置了一系列的服务供内部和外部使用。2.4.3.UAP-ESB 组件框架的服务编程UAP-ESB 平台能最大程度上满足市场的需求在设计之初考虑到了影响
45、其易用性、扩展性和灵活性的方方面面:以上的各种服务提供方式的优缺点。在对各种技术下的服务编程模型进行深入分析后我们提出了的服务组件架构,从服务定义开始,到通过组件实现服务,从通过绑定协议将服务发布出去供其他的服务,到最种将集成项目部署成为一个 OSGi 的组件,每一步都有 IDE 的完美支撑。充分吸收了许多集成项目中的经验。通过对实施集成解决方案的研究分析和对市场上基于 SOA26大中型企业与公共组织云平台的完整技术解决方案的研究,对该领域的市场需求有了更深入的认识。UAP-ESB本身也是基于 SOA 的思想构建的,并在开发过程中融入了对以往的经验,这一切都使得所提供的服务组件架构更适合我们的
46、集成项目或者去开发一个。将对 Spring-DM 的支持融入,这样基于 Spring 框架开发的功能就可以以 OSGi 组件的方式进入服务框架并方便的被其他的服务/组件所使用。在实现服务组件框架时完全遵循了 SOA思想中的 SCA 和 SDO 规范。这使得 EAP-ESB 的服务组件框架具有了语言无关性,它提供了一的面向服务构件的调用方式,使得客户可以把不同的软件模块通过服务构件的标准化而统一地封装起来和被调用。综上,UAP-ESB 提供了如下的服务框架体系,如下图所示: 服务-组件-复合组件-集成服务组件 交换规则,数据转换器 流程定义应用级组件 协议绑定,通过协议部提供服务 FILE,对文件处理相关的功能作了封装。 DB,对数据库处理的相关功能作了封装
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《慢性肠炎的病理》课件
- 《Gish之式网络营销》课件
- 《生物圈的水循环》课件
- 《校园文化》课件
- 事件营销活动策划方案
- 酒店全年安全生产管理要点
- 安全目标指标分解培训
- 《英语六级考试解读》课件
- 电建地产成本管理
- 《餐厅中层管理手册》课件
- 预算绩效评价管理机构入围投标文件(技术方案)
- 专题10平行线的性质与判定二(计算与证明)(原卷版+解析)
- 2024年陕西省西安市中考道德与法治真题(含答案逐题解析)
- 大学生心理健康调查分析报告
- 《GNSS定位测量》课件-GNSS坐标系统
- 幸运咖员工合同范本
- 大数据视角下互联网消费金融风险探讨以京东白条为例
- 福建省福州市鼓楼区鼓楼第一中心小学教育集团2022-2023学年三年级下学期期中数学试卷
- 弱电机房设备与系统巡检记录表全套
- 工商管理论文8000字【9篇】
- 全自动进销存电子表格系统模板53
评论
0/150
提交评论