全球金融危机给云计算带来了更大的发展空间。“云计算能降低成本、加快企业IT实施、迅速扩展。”这个流行语似乎无处不在,至少厂商推销自家的云计算产品时都是这样表述的。
然而,开源SOA提供商MuleSource公司的联合创办人兼首席技术官Ross Mason却觉得这样描述云计算并不切合实际,他认为:“正如SOA当初因被厂商炒作,变得更像是一个营销用语,而不是准确描述架构一样;这一幕又将在2009年的云计算上重演,完全是重炒作、轻实用。”
看到这,也许那些对技术名词极为敏感的人士们会问,“云计算与SOA之间有什么关系?为什么又把这两种名词放在一起呢?”
是的,云计算与SOA有着千丝万缕的联系,有人把云计算称为SOA的“叛逆者”。
作为一种按需交付服务的商业模式,云计算为企业提供了一种快速部署和应用IT技术的方法。但它也给IT人员带来了不小的麻烦。他们很长时间以来,一直致力于SOA的治理行动,多年来对Web服务环境实施生命周期管理的工作刚刚有了一点成绩,如今又要对这些策略进行修改,以应对部署得越来越多的基于云计算的服务了。因为基于云计算的服务很可能根本不在他们的控制范围之内。
从理论上讲,“云”几乎具有交付一切服务的能力,从应用软件到中间件、再到应用平台,从存储、到流程处理再到硬件资源,都可以采用订阅的方式按需交付。然而,在云计算的世界里,IT人员如何才能进行有效的管理呢?
“云”之所以引发了人们对IT治理的关心,是因为“云”让我们把信任的边界从企业内部扩展到企业以外。”换句话说,云让SOA治理复杂化了。
一个新的问题是,如何把云服务与企业内部的应用整合起来?如果没有有效的治理,任何人、任何时候,只要他愿意都可以部署一个新的云服务,他也能调用这个服务,或者能把这个服务集成到日趋复杂的消息系统中。另外,随随便便就部署的那些云服务也可能破坏业已建立的信任关系,然而这种信任关系,恰恰是生产性SOA环境的基础。
SOA的最基本原则是,分布式应用环境必须与平台无关,SOA治理的基础设施也要遵循这一原则。比如,在纯SOA环境中,外部的API应该与具体实现它的平台无关。然而,率先体验云计算的企业常常忽略这一原则,它们把自己的应用建立在一些公共云服务上,而很多服务采用的恰恰是专有的API、专有的开发工具、特殊的虚拟层和特殊的治理策略,虽然很多云服务为符合开放的SOA和Web2.0标准已经做了一定程度的修改,但似乎还不够彻底。
其实,就企业部署云服务来说,最好的方法是有选择性地外包一些特定的应用和基础设施服务,而不是不分青红皂白盲目跟风。因此,在云计算和SOA治理方面,企业首先要清楚自己的哪些服务可以由“云”来提供。
关于云计算与SOA的关系,更多的人愿意相信他们之间有着相互提携的默契。
就目前而言,云计算技术几乎没有任何治理的概念,反观SOA,它的治理技术已经相当成熟了,云计算可以在这方面好好借鉴SOA的经验;除此之外,你可以用SOA思想来部署云计算架构,因为用户需要将自己的应用扩展到防火墙之外,所以一个模块化的架构在企业进行云计算服务部署时就显得非常重要。
当然,SOA也能从云计算上获益。未来,在“云”上提供SOA服务将会兴起。它由于能节省人力成本、知识成本、设施成本而广受对SOA有需求的中小企业欢迎。如今这种模式已经有国外的厂商开始尝试,而国内,像普元软件等SOA厂商也在探索这种模式
【编辑推荐】