应用运行时治理确保SOA项目的实施
大多数IT专业人员和经理人都非常熟悉SOA的概念。他们中许多人已经开始实施采用这个基本概念的项目,制作能够在整个企业范围内重复使用的标准化的、松散耦合的应用程序组件。越来越多的人已经收获了SOA的好处,如降低开发成本和提高企业的灵活性。
遗憾的是通向SOA成功的道路是非常曲折的。问一下那些没有考虑提高SAO项目带来的监视、控制和验证需求就试验一个服务网络的人就知道这个困难了,因为基于SOA的应用程序是不同种类的、联合的和不断发展的系统。它们是混合的应用程序,一眨眼的功夫就会变得非常复杂并且包含超出一个机构控制能力的组件(如一个合作伙伴的服务)。它们不仅包含网络服务,而且通常与大型计算机应用程序和SOAP以外的消息系统有关。要保证正在运行的系统的健康需要传统的企业系统管理和网络系统管理解决方案之外的一些能力。
考虑一些松散耦合的应用程序提出的一些新问题的一个简单的例子。假如一个开发人员了解到其它部门的同事制作的一个新的订单输入服务并且决定把那个服务集成到自己的应用程序中。这项服务突然出现一个问题,没有经过授权的程序调用可能会引起这个订单输入服务无法应付的工作量。采用SOA,一个组件失效可能会引起整个系统的问题,除非有处理这种环境的规定。
在这种事例中,SOA运行时治理(监管SOA应用程序及其构成组件)对于发展基于SOA的基础设施是非常重要的。运行时治理确保应用程序按照预期运行并且随着SOA的发展而变化。与设计时治理不同,运行时治理监视在运行时环境的服务,设计时治理监视任何流程。
除了简单地监视服务网络之外,运行时治理帮助企业控制系统及其组件。治理帮助运营团队理解这种组合和基于SOA的服务网络的行为,并且检测、诊断和防止在服务网络运行的时候出现的问题。理想的情况是,要把可靠性带给SOA应用程序,运行时间治理必须要在问题影响业务之前发现和解决这些问题。
只要有可能,运行时治理需要是一个自动的过程。在SOA环境中的大量的移动的部件使人工处理治理任务非常困难。制定一个随时可用的运营时治理解决方案还意味着扩展到不同种类的系统,从后台大型机到.NET和Java应用程序。因此,这个治理解决方案应该很好地集成到主要应用服务器、企业服务总线和其它SOA基础设施产品。这个行业中厂商的密切合作能够消除你在应用SOA的道路上的障碍。
运行时管理提供了广泛的好处,最大的好处是帮助企业理解其服务网络结构,管理运营健康、检测和诊断意外情况、提高安全和保证运行的完整性。
理解服务网络结构
基于SOA的系统能够和应该是动态的。服务可以任何时候增加、更新或者删除。在这种转变的环境中,理解安装了什么和运行什么。这个问题在SOA领域是一个很大的问题。在SOA领域任何服务都可以通过调用增加到这个结构中,尽管对于这个调用的存在也许没有记录。
做得正确,运行时治理能够动态发现SOA服务网络的结构。它观察安装在这个环境中的实际组件和记录它们的存在。这个治理系统还能够记录发现的服务接口的细节。这个发现信息还能够存储到注册表或者存储处,把信息提供给架构、开发和运营团队。
通过记录存在哪一种服务、当前的状态和这些服务从一个阶段向另一个阶段的推广速度,企业对于服务重新使用率将有更明确的概念,从而提高SOA计划的效率。
保证运营健康
很长时间以来,保持性能、可用性和服务级管理对于IT一直是一个挑战。然而,基于SOA的应用程序增加了一些额外的窍门。例如,服务可以重复使用,重复使用最多的服务遇到的性能问题也最多。服务本身的负荷可能会独立地改变使用这些服务的任何特定的应用程序。因此,每一项服务的性能都必须跟踪并且对照已知的重复使用的服务进行检查,以确定这些服务的新的应用是否会阻止它支持现有的应用程序。在出人意料的沉重负荷下,这项服务也许不能满足其性能要求。
解决这个问题的窍门是不让这项服务的负荷过重。你的运行时治理系统能够跟踪服务重复使用率和性能指标。这样,你能够使请求工作量符合服务级协议或者根据需要增加容量。
这个治理系统应该提供详细的信息(详细到每个最终用户和每一个交易),让运营团队最充分地利用服务级监视和强制措施。这个运行时治理系统能够把数据分解为各种尺寸,从多个有利的位置检查性能统计数据。运行时治理系统还能够应用到仍在开发之中的服务中,以保证提供的服务将满足性能的要求。
检测和诊断意外情况
发现是可见性的第一步。一旦了解这个服务网络的结构,必须要理解其动态行为。它在正常运行吗?它在恰当地处理商务交易吗?它的性能与预期的一样吗?
随着时间的推移,当出现一个错误的时候,查清什么东西出了故障和哪个地方出了故障是一项很困难的工作。在许多情况下,负责每一项服务的技术人员将进行磋商并且人工查询系统信息记录、相关的信息和查找异常的情况。一个用户组织用了14个小时查找仅影响一个用户交易的问题。他们最终认识到问题的原因是一项服务进行的小规模的更新。这个变化影响到了一个用户以具体格式编码的序列号码。
运行时治理能够减少这种工作的劳动量。治理系统能够生成参与的所有的服务的相关的纪录信息,随时把这些信息提供给诊断团队。此外,这些系统自动发现服务网络中的异常情况并且启动改正措施。这个过程以前需要用许多天时间人工查找错误记录。
采用运行时治理系统,信息能够自动记录下来并且相互关联起来。标准方式能够自动检测出来,可以使用相关的信息进行查询和检查以便发现异常行为。如果这个问题是长期的问题,也许是由于某些物理故障或者一些再次发生的逻辑矛盾引起的故障,运行时治理系统能够自动检测出这种情况并且启动改正措施。随着诊断出每一个故障,异常状况监测系统将增加一些规则以发现未来出现的类似问题,使这个系统的反应能力更强大。
确保服务网络安全
SOA安全有两个主要挑战。一个是识别用户身份并且批准用户访问具体服务和应用程序的能力。另一个是确保这些服务或者应用程序管理的数据的隐私和完整性。
传统的应用程序一般都是关系非常密切的,在应用级采取安全措施。这就是说,用户使用一个用户名和口令登录这个应用程序。一旦用户完成身份识别,就要由应用程序批准用户使用其功能。
在一个服务网路中,这种一对一的模式不再使用了。一个SOA应用程序包含一套单独的服务,每一个服务都是能够在多个应用程序中重复使用的实体。因此,SOA服务不能依靠一个应用程序执行身份识别和授权政策。每一项服务必须能够执行多种安全处理程序,包括独立地处理身份识别和授权。然而,在每一个应用程序中实施安全处理会抹煞与SOA有关的核心价值前提。SOA核心的价值前提就是具有商业灵活性。
运行时治理解决方案通过在嵌入安全处理的同时从应用程序中卸载安全处理和强制执行政策的功能来解决这个难题。在服务接口实施身份识别和授权解除了应用程序编程人员安全编程和配置的工作负担,并且把安全责任交给了安全管理员手中。这将把“最后一英里安全”交给属于它的地方,也就是在服务端点强制执行安全政策。
运行时治理系统与应用程序基础设施一起能够满足的具体安全需求包括:
·存储有用户证书的信息
·识别请求者的身份
·确定一个获得授权的请求者是否有权提出具体的请求
·管理隐私和完整性
·在多个服务调用中传送身份识别信息
运行时治理系统还能够把一个用户的任务镜像到提供给担负那个任务的许多用户的服务功能中。这个系统还能够把所有用户和任务管理应用到一个专门的身份识别管理解决方案。此外,这个治理系统能够提供必要的功能以便利用这个身份管理系统并且在这个服务端点执行精细的授权。
从数据隐私和完整性方面看,SOA服务经常用于在网络上传输敏感的或者按照法规编排的数据。随着SOA的发展,更多的消费者也许会依赖这种数据。运行时治理根据企业政策和有关数据共享的管理规定控制对那种数据的访问。治理使用现有的新闻审查(内容过滤)政策保证实现这个目的,除非消费者拥有的适当的权限、敏感或者按照管理规定编排的数据从来没有离开过这项服务运行的容器。运行时治理还支持采用XML签名、XML加密和微软安全等标准的服务中的隐私和完整性的要求。
确保运行的完整性
SOA的巨大挑战之一是在发生变化的时候验证服务网络运行的正确性。运行的完整性问题在SOA环境中是很简单的,因为这些服务是在应用程序中共享的,一项服务的改变可能影响到许多应用程序。此外,服务可能会动态地变化,因为服务的改变在这个更新的服务安装完毕并且把通讯信息提供给它之后就能立即生效。由于这个运行环境中的一项服务可能需要修改才能支持新的或者现有应用程序,所有使用这项服务的应用程序也许都能受到这个改变的影响。
在联合服务的情况下,一项服务也许没有任何通知就发生改变,从而影响到这个服务的消费者。这还意味着没有这项服务的测试版本来验证对应用程序的修改。此外,一项服务的拥有者也许不能访问这项服务的消费者以便验证对这项服务做出的修改。
运行时治理还支持运行验证。运营验证专门解决在与共享的服务、联合的服务和服务消费者有关的持续的和动态的变化面前服务网络的验证问题。通过捕捉一项服务的所有的消费者的通讯,这个验证系统能够向运营团队提供他们必须要为这项服务提供的技术支持(而不是为了测试的目的直接评估联合的消费者)。这种通讯报告是不断更新的。
结论
随着SOA的普及程度日益提高和目前在生产中的服务数量日益增长,运行时治理对于SOA的成功是至关重要的。SOA项目能够充满意想不到的事情,包括未知的或者新的应用需求的增长产生的性能问题,安全下降的问题和很难找到的系统异常问题。由于没有察觉这些问题,这些问题将消除任何节省成本的优势或者提高SOA提供的灵活性。
运行时治理减少成本,提高运营效率和保证应用程序按照预期的那样运行并且能够承受随着服务网络发展出现的变化。采用一个对于你的全面的服务网络有可见性和自动控制能力的运行时治理系统,你将能够收获SOA带来的许多好处。(IT专家网)
- 1企业商业智能平台体系分析
- 2中小型企业福州OA的实施策略小探
- 3实现福州OA系统与固定资产管理有效结合的建议
- 4经济低迷预算削减如何降低福州OA运维成本
- 5服务管理:源于ITIL且高于ITIL
- 6PDM信息化管理的实施与应用
- 7SOA质量与治理:满足灵活性的元要求
- 8SOA在金融行业的应用 业务流程为切入点
- 9成功实施SOA 应当如何应对?
- 10中小企业如何避免福州OA项目十大致命死结
- 11企业怎样解决IT信息远程接入和集中管理难题
- 12对症下药让小企业少走福州OA弯路
- 13黄文俊:CRM成功的关键是以客户为中心
- 14SOA、BPEL和ESB的前生后世
- 15经济危机中支持中小企业要从制度性因素入手
- 16杜绝信息孤岛出现 整合高级时期到来
- 17SOA聚焦:架构师的数据战之争
- 18从全球目前的竞争格局来讲有四种模式
- 19福州OA乌云压顶,巧借WBS重见天日
- 20SOA的应用实施 CIO你们准备好了吗?
- 21基于树形结构柔性业务流程配置研究
- 22福州OA可有效解决的企业的五大难题
- 23福州OA销售代表不会想让你知道的五件事
- 24对于2009年SOA行业的七个趋势预测
- 25八大误读逐一解析 SaaS并没有想象那么好
- 26福州OA办公信息平台升级项目实施计划
- 27BI项目实施服务比BI工具更加重要
- 28软件服务时代解读2008年十大SaaS术语
- 29面向客户服务的整合业务流程管理模型研究
- 30SOA当前核心问题:人和流程