面向服务的体系结构中企业服务样本.doc
《面向服务的体系结构中企业服务样本.doc》由会员分享,可在线阅读,更多相关《面向服务的体系结构中企业服务样本.doc(32页珍藏版)》请在咨信网上搜索。
1、了解面向服务体系结构中企业服务总线场景和处理方案第 1 部分企业服务总线中工作角色 Rick Robinson () IT 架构师, IBM 年 7 月 本文确定了一组最低功效,能够满足企业服务总线(Enterprise Service Bus,ESB)和面向服务体系结构(service-oriented architecture,SOA)标准保持一致基础需要。经过确定这些最低功效,您能够确定利用何种现有技术来实现支持 SOA ESB。经过考虑特定情形下需求怎样确定对额外功效需要,您能够选择最适合这种情形实现技术。 引言最新 IT 集成是使用 Web 服务技术实现面向服务体系结构(SOA),有
2、很多优异文章讲述了该技术好处和相关实践(请参见参考资料)。最近,企业服务总线(Enterprise Service Bus,ESB)概念被表述为 SOA 基础架构关键组件(请参见参考资料)。然而,有必需说明 ESB 到底是一个产品、技术、标准,还是别什么。尤其是,目前是否能够构建 ESB?假如这么,该怎样构建?本文将 ESB 描述为由中间件技术实现并支持 SOA 一组基础架构功效。ESB 支持异构环境中服务、消息,和基于事件交互,而且含有合适服务等级和可管理性。为了达成此目标,需要将多个功效集中起来并加以分类。然而,并不是 ESB 能够传输值每一个情形全部需要全部功效。本文确定了一组最低功效,
3、能够满足 ESB 和 SOA 标准保持一致基础需要。经过确定这些最低功效,您能够确定利用何种现有技术来实现支持 SOA ESB。经过考虑特定情形下需求怎样确定对额外功效需要,您能够选择最适合这种情形实现技术。在接下来文章中,我将在 SOA 中定义一组 ESB 场景,以定义 ESB 或 SOA 实现共同起点。而处理方案模式又为选择合适实现技术提供了指南。伴随 ESB 处理方案发展和成熟,它所需要功效也在不停地发展。一样,可见 ESB 产品可用性和功效也日趋完善。所以,在本系列最终一篇文章中,我将考虑 SOA 和 ESB 发展路线,以指导 ESB 功效和技术最初应用,而且叙述怎样选择循序渐进方法。
4、ESB 在 SOA 内工作角色即使我不计划深入讨论 SOA 定义(请参见参考资料),不过在这里概括一下大部分对 SOA 描述所适用标准是很有用: 利用显式和实现无关接口来定义服务。 利用强调位置透明性和可互操作性通信协议。 封装可重用业务功效服务定义。 图 1 说明了这些标准。注意,即使 Web 服务技术很符合这些标准,但它并不是唯一符合这些标准技术。图 1: SOA 标准为了实现 SOA,应用程序和基础架构全部必需支持 SOA 标准。启用 SOA 应用程序包含到创建服务接口,服务接口能够直接也能够间接地经过使用适配器用于现有或新功效。从最基础等级来看,启用该基础架构包含到计划功效来将服务请求
5、路由和传输给正确服务提供者。然而,基础架构支持在不影响服务用户端情况下由另一个服务实现替换原有服务实现也是至关关键。这不仅需要依据 SOA 标准指定服务接口,而且需要基础架构许可用户端代码以独立于所包含服务位置和通信协议方法来调用服务。这么服务路由和替换是 ESB 很多功效中一部分。ESB 支持这些服务交互功效,并提供集成通信、消息传输和事件基础架构来支持这些功效。所以,它将当今正在使用关键企业集成模式组合成一个实体。ESB 为 SOA 提供和企业需要保持一致基础架构,从而提供适宜服务等级和可管理性、和异构环境中操作。本文剩下部分将讨论 ESB 在 SOA 中角色,包含它提供除了基础路由和传输
6、以外功效,以下面 ESB 功效模型部分中所述。ESB 结构ESB 有时被描述为分布式基础架构,这和其它处理方案形成了对比,比如消息代理技术通常被描述为中心辐射型(hub-and-spoke)。然而,这并不是真正差异。正在研究两个不一样问题:控制集中和基础架构分布。ESB 和中心辐射型(hub-and-spoke)处理方案全部集中控制配置,比如服务交互路由、服务命名等等。一样,这两个处理方案可能布署在简单集中式基础架构中,也可能采取更复杂分布式方法进行布署。图 2 展示了这一点。毫无疑问,不一样技术对它们所支持物理布署模式有不一样约束有些可能适合于很广泛分布,以支持在很大地理范围内进行集成,而其
7、它可能更适合于布署在当地群集中,以支持高可用性和可伸缩性。使物理分布需求和候选技术功效相匹配是 ESB 设计一个关键方面。另外一个能力也是很关键,就是以增量方法扩展最初布署来反应不停改变需求、集成附加系统或扩展基础架构物理范围。图 2: 分布式 ESB 基础架构集中控制我还应该定位在 SOA 基础架构中 ESB 和其它组件之间关系,尤其是和 Service Directory、Business Service Choreography、和 Business-to-Business (B2B) Gateway 这些组件之间关系。因为上述 SOA 标准对这些组件并没有严格要求,所以我们能够将它们视
8、为可选组件。图 3 展示 SOA 说明了这些组件之间关系。图 3: SOA 中 ESB 角色ESB 需要某种形式服务路由目录(service routing directory)来路由服务请求。然而,SOA 可能还有单独业务服务目录(business service directory),其最基础形式可能是设计时服务目录,用于在组织整个开发活动中实现服务重用。Web 服务远景在业务服务目录和服务路由目录角色中全部放置了一个 UDDI 目录,所以使得能够动态发觉和调用服务。这么目录能够视为 ESB 一部分;然而,在这么处理方案变得普遍之前,业务服务目录可能和 ESB 是分离。Business S
9、ervice Choreographer 作用是经过若干业务服务来组合业务步骤;所以,它将经过 ESB 调用服务,然后再次经过 ESB 将业务步骤公开为用户端可用其它服务。然而,Business Service Choreographer 在编排业务步骤和服务中所饰演角色确定了这种业务工作流技术是一个和基础架构技术 ESB 分离技术。最终,B2B Gateway 组件作用是使两个或多个组织服务在受控且安全方法下对相互可用。这有利于查看这些连接到 ESB 组件,但它们并不是 ESB 一部分。即使有部分网关技术能够提供适合于实现 B2B Gateway 组件和 ESB 功效,不过 B2B Gate
10、way 组件用途是将其和 ESB 分离。实际上,这种用途可能需要附加功效(如合作伙伴关系管理),这些功效不是 ESB 一部分,而且不一定受到 ESB 技术支持。ESB 功效模型表 1 对现有文件中确定部分 ESB 功效进行了总结和分类(请参见参考资料)。即使有部分功效很基础,不过其它功效(如自动化功效或智能化功效)代表着向按需操作环境转变关键步骤。关键是认识到,目前大多数场景只需要部分类别中部分功效。ESB 实现所需最低功效将在下面支持 SOA 最低功效 ESB 实现部分中进行探讨。表 1:在现有文件中定义 ESB 功效通信服务交互 路由 寻址 通信技术、协议和标准(比如 IBM WebSph
11、ere MQ、HTTP 和 HTTPS) 公布/订阅 响应/请求 Fire-and-Forget,事件 同时和异步消息传输 服务接口定义(比如,Web 服务描述语言(Web Services Description Language,WSDL) 支持替换服务实现 通信和集成所需服务消息传输模型(比如 SOAP 或企业应用程序集成 (EAI) 中间件模型) 服务目录和发觉 集成服务质量 数据库 服务聚合 遗留系统和应用程序适配器 EAI 中间件连接性 服务映射 协议转换 应用程序服务器环境(比如 J2EE 和 .NET) 服务调用语言接口(比如 Java 和 C/C+/C#) 事务(原子事务、赔
12、偿、Web 服务事务(WS-Transaction) 多种确定传输范例(比如 Web 服务可靠消息传输(WS-ReliableMessaging)或对 EAI 中间件支持) 安全性服务等级 身份验证 授权 不可抵赖性 机密性 安全标准(比如 Kerberos 和 Web 服务安全性(WS-Security) 性能 吞吐量 可用性 其它能够组成契约或协定持久评定方法 消息处理管理和自治 编码逻辑 基于内容逻辑 消息和数据转换 有效性 中介 对象标识映射 数据压缩 服务预置和注册 统计、测量和监控 发觉 系统管理和管理工具集成 自监控和自管理 建模基础架构智能 对象建模 通用业务对象建模 数据格式
13、库 B2B 集成公共和私有模型 开发和布署工具 业务规则 策略驱动行为,尤其是对于服务等级、服务功效安全和质量(比如 Web 服务策略(WS-Policy) 模式识别 上面很多功效既能够使用专有技术实现,也能够经过利用开放标准实现。然而,使用不一样技术来实现 ESB 可能会使它们性能、可伸缩性和可靠性这些特征显著不一样,同时 ESB 功效和所支持开放标准也会有所不一样。因为这些原因,再加上最近制订和正在兴起部分相关标准,当今实现 ESB 很多关键决议全部包含到成熟专有技术和不成熟开放标准之间权衡。在本系列文章中,我们不计划具体讨论上面每一个功效类别。相反,我们将集中讨论采取或实现 ESB 不一
14、样方法之间驱动策略。尤其是在下一部分,我们将讨论 ESB 为支持 SOA 所需最低功效由什么组成。支持 SOA 最低功效 ESB 实现假如在前面确定功效中只有一部分和大多数 SOA 场景相关,我们可能会问:实现 ESB 所需一组最低功效由什么组成?为此,考虑最被普遍认同 ESB 定义原理: ESB 是一个逻辑体系结构组件,它提供和 SOA 标准保持一致集成基础架构。 SOA 标准需要使用和实现无关接口、强调位置透明性和可互操作性通信协议、相对粗粒度和封装可重用功效服务定义。 ESB 能够作为分布式异构基础架构进行实现。 ESB 提供了管理服务基础架构方法和在分布式异构环境中进行操作功效。 表
15、2 展示了依据这些标准定义最低 ESB 功效表 2: 最低 ESB 功效通信集成 提供位置透明性路由和寻址服务 控制服务寻址和命名管理功效 最少一个形式消息传输范型(比如,请求/响应、公布/订阅等等) 支持最少一个能够广泛使用传输协议 支持服务提供多个集成方法,比如 Java 2 连接器、Web 服务、异步通信、适配器等等 服务交互一个开放且和实现无关服务消息传输和接口模型,它应该将应用程序代码从路由服务和传输协议中分离出来,并许可替换服务实现。请注意这些最低功效并不需要使用尤其技术,比如 EAI 中间件、Web 服务、J2EE 或 XML。这些技术使用很靠近也很符合需求,不过无须强制要求使用
16、它们。相反,最低功效几乎只需简单地使用 SOAP/HTTP 和 WSDL 就能够实现(当然不是全部情况全部这么): URL 寻址和现有 HTTP 和 DNS 基础架构提供了一个含有路由服务和位置透明性“总线(bus)”。 SOAP/HTTP 支持请求-响应(Request-Response)通信规范。 HTTP 传输协议被广泛地使用。 SOAP 和 WSDL 是开放、和实现无关服务通信和连接模型。 然而,这些 SOAP/HTTP 和 WSDL 基础应用只是点到点(point-to-point)集成,并不能实现部分 ESB 需要关键功效: 现在还没有用于控制服务寻址和命名管理功效。服务名称经过每
17、个适配器单独进行控制,服务路由控制则分散在由服务用户端调用地址、HTTP 基础架构和分配给适配器服务名称之间。 即使这种方法依靠于实现细节,不过它往往并不能使服务实现替换变得简单;服务请求者代码(也可能是开发工具生成)通常经过特定地址特定协议直接绑定到具体服务提供者实现。假如想要用另一个服务实现来替换原来服务实现,就需要修改应用程序代码并重新布署这些代码。 当然,在很多甚至是大多数情形中往往需要其它功效,而且这种需要变得越来越常见。尤其地,不管是现在还是以后,下面需求类型可能会造成更复杂高级技术使用: 服务质量和服务等级功效。 高级 SOA 概念,比如服务编排、目录、转换等等。 按需操作环境需
18、求,比如管理和自治功效和基础架构智能功效。 跨越含有不一样全部权多个网络、多个协议和多个域真正意义上异步操作。 影响 ESB 安全问题我不想在这里直接提出安全需求,不过它们对选择 ESB 实现技术很关键。比如,假如服务请求不需要提供身份验证或授权,实现技术选择就能够很广泛。更有可能情况是,假如需要部分安全等级,则评定什么形式安全是能够接收就很关键。比如:1. 是否能够接收通信基础架构中安全性,比如,是否在 EAI 中间件服务器之间使用安全套接字层(Secure Socket Layer,SSL)相互验证,或是否在使用 HTTPS 协议? 2. 是否能够接收在参与系统之间单独点到点(point-
19、to-point)安全性,或是否需要端到端(end-to-end)模型?比如,是否有必需经过类似于代理中间件系统来把用户端身份传输到服务实现最终提供者? 3. 是否能够接收应用层中安全性,比如,用户端代码是否能够实施带有用户 ID 和密码基础 HTTP 身份验证,或是否能够把这些信息作为应用程序数据传输给服务? 4. 是否需要遵守行业安全标准,比如 Kerberos 或 WS-Security? 即使全部这些全部是可能,不过行业发展方向是基础架构和中间件支持符合标准安全性(比如 Web 服务安全性(WS-Security)功效。然而,相比之下,这些安全标准也是最近才提出,而且对它们产品支持仍在
20、发展过程中,而不是已经确定了,这里尤其需要尤其考虑就是它们互操作性。所以,任何 ESB 架构全部需要尽可能早地确定安全需求,方便在选择实现技术时能够将它们包含进来。 结束语在本文中,我讨论了大多数通用 SOA 标准,和它们和 Web 服务技术关联。基于这些标准,我提出了需要一个基础架构组件,这个组件能够提供路由功效,方便使服务能够相互交互,同时还能够支持使用另一个服务实现来替换原有服务实现。这些功效全部是经过 ESB 实现。ESB 在维持集中控制同时提供分布式基础架构,所以需要部分形式服务路由目录,而且还可能需要业务服务目录。Business Service Choreographer 从 E
21、SB 调用服务,然后经过 ESB 把这些步骤作为新服务公开。ESB 很多功效包含提供: 通信 服务交互 集成 质量服务 安全 服务等级 消息处理 管理及自治服务 建模 基础架构智能 从这些不一样功效中,我确定了建立 ESB 所需最低功效,包含通信、集成和服务交互。 在这个系列下一个部分中,我将讨论部分通用场景,和和这些场景相关处理方案模式,同时指出影响这些场景最通常问题。第 2 部分驱动体系结构 ESB 场景和问题Rick Robinson () IT Architect, IBM 年 7 月 在相关企业服务总线(Enterprise Service Bus,ESB)这个系列第二部分中,作者描
22、述和分析了实现 ESB 和其它面向服务体系结构(SOA)处理方案部分常见场景。 这个系列第 1 篇文章描述了企业服务总线(Enterprise Service Bus,ESB)基础概念和工作角色。本文侧重于描述为支持面向服务体系结构(SOA)而进行 ESB 开发场景和问题。您组织 SOA 和 ESB 可能需要应用到一个或多个这么场景。ESB 场景及分析SOA 中 ESB 场景部分描述了很多 SOA 和 ESB 实现起点。每个场景全部指出驱动体系结构和设计决议问题,而这些决议会影响处理方案模式选择(将在这个系列第 3 部分中进行介绍)。在驱动 ESB 体系结构和设计决议问题部分中,您能够阅读相关
23、这些问题具体描述。这些处理方案模式代表着从服务技术基础使用,到简单 ESB 实现,再到复杂 SOA 体系结构发展过程。 这些 ESB 场景目标并不在于展示组织对 SOA 或 ESB 全部需求。比如,即使某个场景(如两个系统基础集成)可能看起来很好地匹配了特定目前需求,不过伴随时间推移,这种需求可能发展成更复杂需求(如支持一个或多个应用程序实现更广泛连接性场景。另外,还可能有很多对 SOA 或 ESB 基础架构单独需求会出现这么情况,就其部分而言符合简单场景,但集中在一起则表现得比较复杂。我们需要在实现满足很明确需求处理方案、努力预料未来需求和定义跨企业一致处理方案这三者之间作出选择。将组织需要
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 服务 体系结构 企业 样本
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。