SOA成功四要素:发现、治理、安全、管理

日期: 2009-03-22 来源:TechTarget中国 英文

  权利和责任是一起来的。SOA的承诺为服务重复使用和实现一个完全集成的企业提供了巨大的机会。但是,人们没有想到的是SOA实现的灵活性将导致企业IT部门出现混乱。要恰当地控制SOA的权利同时为企业提供价值,某些控制是非常重要的。在一个普遍存在的和透明的框架中采用服务发现、服务安全、服务管理和政策治理等方法对于任何企业成功地实施SOA都是非常重要的。

  权利和责任是一起来的。SOA计算模式为集成企业和实现重复使用提供了巨大的承诺。但是,随着这个权利出现了适当地使用的责任。如果一个机构不能充分地控制SOA原则产生的灵活性,就会出现混乱。

  有有效地实现面向服务的好处,必须要为了机构的利益控制SOA固有的灵活性。有效的SOA以合适的比例应用服务发现、服务治理、服务安全和服务管理。这些部分的每一个重要的部分都必须要单独地理解,因为它们都是相互关联的。当它们结合为一个无缝的架构的时候,这个整体就超过了其组件的总和。

  发布-发现-绑定概念

  在SOA的核心是发布-发现-绑定(publish-find-bind)概念。

  在这种计算范例之下,一个服务提供商发布其服务(作为服务端点)并且等待启动这些服务。(第一步–发布)要发现从使用其服务中受益最多的那些消费者。提供商通过发布其注册处中的产品“宣传”其服务。这个注册处(通常是符合UDDI或者ebXML标准的)维护一个在企业中发布的全部服务的数据库以及这些服务的细节以便帮助消费者的发现过程。在实践中,这个信息通常包括一个WSDL文件(包含其调用签名)以及服务所在的端点的URL地址。这个注册处还包含一个全面的库以保存每一个服务的功能和特点等情况的额外细节。

  一旦一个服务在企业的注册处发布,一个有兴趣的消费者也许就会查询这个注册处寻找能够满足他的需求的服务。(第二步–发现)接下来,开发人员使用他们在注册处发现的服务建造自己的系统。松耦合协作中的最后一个步骤(第三步–绑定)在运行时间发生。在执行时间,消费者使用在“发现”操作期间由注册处提供的端点URL与提供商绑定在一起。

  根据发布-发现-绑定松耦合的范例,提供商和消费者需要在使用这个服务之前相互熟悉。这个概念的力量引起了重要的混乱的机会。例如,如何保证只有获得授权的消费者才能访问一个指定的服务?如何保证所有的服务提供商都能适当地保证自己的服务安全防止非授权的消费者使用?如何保证在整个企业的SOA实施过程中遵守机构的标准?要管理在松耦合模式中的权利,必须采用额外的一些控制层面以保证在保持秩序的同时实现SOA的好处。

  发布时间治理

  没有对企业SOA的控制,没有限制数量的内部服务提供商将暴露和发布允许任何用户使用的所有形式的服务。必须要在发布时间在这个过程中引进一个治理层以保证仅仅发布高质量的服务,并且保证这些服务符合企业的标准。这种做法称作变换时间治理。

  采用变换时间治理,注册处根据企业建立的一套规则验证发布的服务,并且拒绝任何企图发布不符合所有已经制定的政策的服务的那些服务提供商。企业级消费者不能使用任何遭到拒绝的服务。这些政策在把一项服务注册成为一项企业服务之前将根据发布的服务进行任何数量和任何形式的检查。

  变换时间治理功能在松耦合生命周期(步骤1a–验证)中发生的地方。这个治理工具(有时候是注册产品的一部分)管理所有的企业SOA政策。

  运行时间媒介

  在一个企业SOA中注入控制,必须要在所有的消费者与提供商的互动之间注入一个媒介。然后,这种媒介(通常是指一个政策强制执行点)能够执行许多必要的功能,实时地给一个SOA带来秩序:

  1.强制执行运行时间治理

  2.与安全有关的功能

  3.管理活动

  这些功能的执行对于消费者和提供商都是透明的。图3显示了向发布-发现-绑定范例中引进这种媒介的过程。

  在变换时间发布和治理验证(步骤1和1a),这个注册处通知强制执行政策点它将作为指定的服务(步骤1b)的媒介。然后,这个强制执行政策点使用新的端点回应这个注册处。企业能够在这个新的端点访问原来的服务。随后,所有向这个注册处查询这个服务的全部询问都将返回在强制执行政策点上建立的新端点(步骤2)。这个过程称作端点重写。所有企业级的与这项服务的互动都将通过这个媒介。

  所有试图与指定的服务绑定在一起的消费者(步骤3)事实上都将与作为提供商的强制执行政策点绑定在一起。这个媒介正是能够在这个点上执行其重要的功能。一旦这个强制执行政策点完成了它的工作(假如一切顺利的话),消费者就与提供商绑定在一起了(步骤4)。从那时开始,这个强制执行政策点的工作就完成了,它就把自己从这个互动中删除了(也就是说它有效地实现了消费者与提供商之间的硬线连接)。

  运行时间治理

  采用一个媒介,这个架构能够用来保证整个企业的所有的服务调用都符合已经建立的机构的标准。这个强制执行政策点将用来强制执行运行时间治理。例如,服务消费者试图使用一项没有适当的企业SOAP头文件的服务可以遭到拒绝。要记住,服务提供商可能不知道一个消费者试图以破坏机构政策的方式使用他们的服务。

  步骤3a显示了这个强制执行政策点在允许消费者与提供商的服务产品绑定在一起之前对照机构的运行时间治理政策验证这个消费者。

  运行时间安全

  一个强制执行政策点经常用来处理与安全有关的功能,如授权等。把与安全有关的许多功能转移到一个强制执行政策点能够显著减少安全开销的负担。否则,这就是服务提供商的责任。这个策略使服务提供商把重点集中在他们的核心功能方面。此外,这些与安全有关的功能能够整合到一个地方(强制执行政策点),从而得到再利用和管理的好处。这些是SOA范例的重要好处,是推动SOA应用的重要因素之一。

  如果一个消费者没有获得批准使用他要访问的服务,他就在不知道服务提供商的情况下被强制执行政策点拒绝了(返回一个WS-安全SOAP错误提示)。

  Web服务管理(WSM)

  一个强制执行政策点还能够用于实施透明的Web服务管理。这个能力让一个机构监视其企业的SOA健康状况。每一个服务和服务调用都标准都能够收集到。捕捉这些数据能够让机构做以下的事情:

  1.识别这些服务什么时候不可用并且采取预防措施

  2.识别企业中最流行的服务

  3.识别企业中消费服务最多的消费者

  4.捕捉所有企业Web服务的响应时间

  5.编辑所有的企业Web服务的可用性数字

  Web服务管理能够在一项服务不可用时采取行动。Web服务管理能够预防性地,在消费者不知道的情况下,把Web服务调用转移到一个替代的端点。Web服务管理还能够通知注册处一个指定的端点不可用并且推荐这个服务能够找到的另一个替代的端点。

  在更高级的设施中,Web服务管理定期向注册处提供自动的反馈信息,提供有关服务可用性、响应时间或者其它相关特点的指标。接下来,消费者能够使用这些数据为自己找到最佳的服务。

  性能的考虑

  强制执行政策点有大量的职责,每一个职责都要消耗大量的计算资源和引起延迟。为了缓解这个瓶颈,强制执行政策点可以使用专门的硬件实施。这些熟悉XML/PKL的设备能够显著减少在每一个Web服务消费者和供应商之间引起媒介时所产生的影响(处理延迟)。许多厂商目前都提供这种设备。这种设备有时候称作AON(面向应用程序的网络)设备。

  总结

  现实世界的SOA把服务发现、治理、安全和管理结合在了一起。最有效的SOA部署取决于对所有这些因素的控制。没有这些控制约束一个企业的SOA,这个企业的IT部门就会出现电影《飙风战警》式的混乱。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

相关推荐