针对SOA发展进行分析

日期: 2008-03-10 来源:TechTarget中国

  SOA能够优化业务需求与 IT 的一致性,能够将业务流程活动从服务实现中分离出来,还能够降低操作成本。只有在不固定供应商的情况下才能真正实现这些功能,此时面向 SOA 实现的技术可以无缝集成,以构造全面的端到端解决方案。但是SOA在发展中会遇到很多困难,这就要求我去分析这困难所在,最终去解决它们。在理想情况下,您和您的业务合作伙伴间没有预算限制、计划期限、技能差距和优先级差异,我想,此时完全可以说每个人都会采用 SOA,或者至少会考虑采用 SOA。不过,我们的选择实际上经常受到过去的决策的影响和限制(例如,技术投资、编程模型采用、服务的合同协定等)。因此,我们并不能总是自由地采用看起来能满足某个业务需求或技术要求的最佳选项。


  SOA已经不仅仅局限于对某一个问题的处理。通过适用性实践证明,我们产生了一些不同的想法,即为各个不同领域的企业提供定向的阶段性服务。人工编制和筹备那些具有约束性和预定性的核心设计说明,管理计划报告和包含所有应用功能的基本服务工作统计。


  当然,每个合同或项目都具有唯一的要求,因此关于何时采用 SOA 的决策取决于您公司的业务状况。SOA 的价值主张十分诱人,但选择何时让您的公司采用SOA必须考虑业务环境的实际情况。采用 SOA不一定要跨一大步,而通常是采用循序渐进的方式进行的。首先找到可以利用 SOA 概念和原则的项目,然后使用主要性能指标测定其价值,这是一种让大家受益的好方法。面向服务的架构(SOA)从根本上改变了对企业应用的设计、开发和集成的方式。它倡导企业应用的模块化服务、便捷集成和重用。然而SOA也带来一系列的技术挑战,如可靠的消息传递、服务的虚拟化、服务的发现和调用、策略管理等等。


  SOA互联网的应用


  在网络发展初期,大的网站都倾向于在为自己的网络应用建立自己的认证和权限技术。一度,这种做法运转得很好,也提供了基本得保护。但不久之后,企业就开始实施独立得WAM产品。目前,WAM已经成为了大规模网站架构中认可的一部分。网络服务最常见的安全隐患大概就是信息泄露和欺诈,如果你和你的合作伙伴之间交易的敏感信息被竞争对手获得,如果有人在网络上以你的名义向你的供应商发送订单,如果来自合作伙伴的发货请求被人篡改,等等,所有这些都是商业活动中不希望发生的。当然,也不用为此因噎废食,企业级SOA在一开始就应当考虑信息安全保证,在技术手段方面有各种有效的防范措施可选用。 不仅是个企业IT系统架构的方法问题。在互联网的发展进程当中,它也将有越来越多的应用,并将占据主导的地位。从本质上来说,互联网就是一个技术工具。互联网的进程也就是传统企业信息化的进程,就是传统行业又一次整体技术革命的过程,所以我们比较一下在工业革命时代和信息化时代两个进程的不同之处,有利于我们更好的来理解互联网和SOA。创建SOA 应用时,通常假设它具有相当于LAN的性能。但部署时,SOA应用交互过程会增加WAN延迟和包丢失,从而造成超时。


  企业信息化的下一个阶段就是基于互联网的信息整合,解决企业内部部门之间和外部企业与关联企业、企业和客户之间的信息沟通。但也不可能因此要求所有企业都用一个厂商的软件,并且一步到位实施完成所有的业务流程,即使这个流程真的被一个厂商完全实现,那也不代表这个企业不和外部企业进行信息交互,要和外部进行信息的交互就意味着接口的标准;企业的业务也不可能永远不变,业务改变就意味着系统有升级的需求,就意味着原有系统的处理问题。SOA是一种理念,使我们的互联网能支持更广泛的平台和环境,扩展网络应用的使用范围,它代表着互联网的未来。


  如果发展的好,认证和权限控制的类型将极大的增加,要使用这些数据源,你将需要申请。 反过来说,如果情况不好的话,需要预备和管理的数据消费者将呈指数增加。SOA对应用程序安全产生的改变的重要性并不亚于其给应用架构带来的改变。对于任何应用程序来说,保护信息访问的安全都是最基本的要求。由于按 SOA 原则而构造实现的服务、应用程序以及跨组织操作所具有的松耦合特性,这种环境往往更加容易暴露现有安全实现的弱点或局限性,因此缺乏良好的编程模型将严重威胁Web服务的安全。


  SOA治理


  治理是SOA项目成功的关键,没有治理就不能充分理解SOA的价值,也不能更好地利用好手头的工具。治理通常来说意味着建立和执行团队为了一起工作而达成一致的工作指南,和管理在概念上有着重要的区分,简而言之,治理说明了应该完成哪些工作,而管理用于确保完成此工作。对于将 IT 作为其关键组织之一的企业而言,SOA 治理具有举足轻重的地位,通过增强这种意识,可以帮助企业获得真正的收益。和性能一样,治理可能成为极大的顾虑,成为所有问题的托词和每个有问题的解决方案的正当借口。只需要在任何 SOA 讨论中扔出一句火药味十足的话,然后就可以看着原本有用的讨论瞬时间陷入一片静寂。SOA 的一个挑战就是明智地使用治理来使 SOA 更好地工作,而不会让治理方面的顾虑淹没了所有其他事项。公司现在意识到了快捷的IT资讯应对需求的变更的重要性。保持竞争,组织必须快捷;数据和支持商业的应用必须有柔性的改变要求。 应用管理人或终端用户必须可以定制程序或产生一个含有种种要素的程序去支持特定的情形。


  当前,IT 是企业中最为常见的组织,在大多数(如果不是全部的话)业务线 (LOB) 中都存在。对企业发展和成功如此重要的组织必定被企业视为重要资产之一。企业必须充分地了解这样的重要资产,不仅要从中获得最大的利益,而且要正确地加以管理,从而减少与之相关联的风险。这使得治理主体有必要规划、控制和监视 IT 治理所需的企业资产的正确维护和发展。


  SOA通过提供一个能高度适应的软件系统促进变动,支持新的应用的松藉合,属于灵活和高度敏捷的设计和经营战略。使用SOA,IT组织基于标准的基础上可以建立更多应用和输入数据信息,商业服务能够直接映射到业务功能上。 一旦企业暴露了它的服务,它也许会设计新的综合服务或者商业应用和过程去敏捷的应对将来组织的不同需要。


  SOA成功的实施将增加组织快速响应改变市场的要求。它降低风险与供营商的关系,通过重复利用现有的服务减少开发费用。它有助于推进新的收支并且增加市场份额,同时时间性的面对市场。


  对於许多公司,他们的 SOA 率先有达成屈曲点。 大多数公司已经发现了SOA系统中各部分的成功的有价值的商业信息。


  面临的挑战是持续发送这些商业服务给终端用户。 SOA 的 “最后的时段” 需要被递送到IT部门,用它来给他们带来益处。企业mash-up应用作为首选的授权解答,以使SOA能被终端用户使用为主旨。在这个模型,组织集中于SOA和它的引伸消耗量层数入客户排。在这个模型中,组织把重心集中在 SOA 的消费层和客户列扩展之内。


  现有的SOA统治平台(SOA登记和贮藏库)集中于这些关键区,当他们与服务器经营业务关连。最佳的平台与不同的SOA供营商之间达到互用性。


  要达到一种能够SOA EW 2.0应用的好处,服务应该被治理和容易地显露给架构师、企业分析员、开发商和用户。通过如此做,横跨企业应用的发展将是一致。 开发商能通过服务的名单浏览到他们的集成开发环境(IDE)和消耗经营业务和UI服务。


  这样治理也将允许服务提供者执行后果分析。 经过分析消费者和服务提供者的之间关系,服务可以连续改进。虽然SOA已经成为影响整个IT系统构建的主导思想,但它并非具体的IT产品。对CIO来说,当新的应用出现的时候,企业不需要再重新对所有的应用进行调整,只需要把新的应用做成服务模块,放入SOA的框架中就可以了。


  SOA安全


  某些人可能认为既然 SOA 是应用级实施,那么,我们只需确保应用服务器和端点提供适当的验证和授权功能以及端到端的安全传输(如SSL)即可。然而实际情况是,安全的应用服务器不足以保护并保证业务数据始终如一的可用性,也不能解决企业在日常工作中遇到的所有安全问题,如外部黑客、DOS 攻击、基于协议的攻击和后门利用等。SOA安全标准的不成熟加剧了互操作性方面的难题。如果想严加保护牵涉多家企业的庞大Web服务网络,每家企业必须就采用的技术、甚至安全策略达成共识:如果合作伙伴的员工使用弱密码来访问系统,那么要求贵企业的员工使用生物特征识别技术和物理令牌是毫无用处的。


  在购买SOA安全系统的部件之前,要做必要的准备工作,因为市场在不断变化。总的说来,市场上出现的动向对IT人员来说是好消息,因为这意味着更多的选择;要打交道的厂商也可能更少了。但这同时使得采购决策大大复杂化。由于SOA向基础架构引入了许多连接,安全变成了多方面的挑战。如果你在SOA方面有一些经验,你会意识到它增加了新层面的安全问题,这主要是因为你建立了自己的一套松耦合连接,其中包含了大量的依赖关系问题。安全威胁和要求十分复杂,你必须认为一般的开发商都不能完全认识存在的威胁和挑战。事实上要让开发商独立管理安全问题是不恰当的。


  灌输安全理念关键在于通过有效治理。为了贯彻执行一致的安全条件,具体化你的安全条件,非常重要的是要有很好的治理流程以确保适当的安全措施应用到每一个服务当中去。


  安全职能的集中管理才是关键之所在。企业需要采取政策驱动的执行模式,允许安全部门实际决定受保护内容、保护方式并对这些安全措施尽可能具体化。


  核心安全问题是很困难的,而实际安全管理执行则显得难上加难。因为安全威胁和条件是经常变化的。许多新的攻击类型已被确定,也有新的规则实施,然后你又产生新的公司政策。又可能是因为你使用了新的基础架构,想确保它使用新来源的识别信息。


  随着时间的推移,SOA的安全保护将会更加具体化,因为这是唯一能够保护SOA所固有的灵活性和它所创造的无限运算环境的方法。

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

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

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

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

相关推荐

  • 事件驱动框架和SOA在空军的应用

    空军正在利用SOA来改善数据共享,并实时跟踪战机,美国空军机动司令部的Michael Marek解释了企业可从中学习的经验。

  • 揭秘New Relic APM技术细节

    New Relic应性能管理(APM)套件主要用于Web软件开发。它允许用户在面向服务的架构(SOA)上跟踪关键事务性能,并且支持代码级别的可见性来评估特定代码段和SQL语句对性能的影响

  • 仅凭SOA和云无法解决业务数据管理风险问题

    SOA和云可以是某些恼人问题高效的解决方案;这一点我们已经知道了。但是也要记住它们并不是所有事情的直接答案,特别是当你的问题是业务数据管理风险,而不是技术问题时。

  • 购买应用集成工具可以采取平衡做法

    购买应用程序集成工具需要好好看看你的公司需求,知道从供应商里面要寻找哪些关键功能。