SOA专家David Linthicum指出,云计算领域正在做许多事情。SOA显然也在凑这个热闹。的确,云计算提供商和建立SOA的人们有许多需要相互学习的东西。这里仅举几个例子。
SOA能够从云计算中学到的东西:
服务设计
亚马逊、TheWebService和Force.com等在云计算中部署服务的一些公司在服务设计方面做得非常好。许多SOA项目建立的服务不是过于粗粒度访问控制,就是过于细粒度访问控制,根本没有很好的设计。
现实是这些服务没有很好地定义和设计,在根据需要提供时销售的不太好。因此,那些在云计算以外提供服务的人们必须用大量的时间向主要云计算服务提供时学习服务的设计,包括学习可用性和耐用性。Linthicum说,无敦促那些在SOA中建立服务的人们借鉴云计算中如何设计、开发和部署服务的一些好典型。
服务可扩展性
云计算服务设计为可以根据需求扩展。那些利用云计算服务的那些人这样做是因为他们在需要的时候能够根据需随时要得到这些服务。SOA中的扩展服务的能力一般是一个痛苦的和昂贵的过程。
这个事情的事实是在企业中设计和开发的服务一般都是没有伸缩性的。确实,SOA围绕这个事实的发展核心问题是许多服务的重点没有放在伸缩性方面,等意识到这个问题的时候已经太晚了,很难修复了。云计算提供商必须找出更快地伸缩的方法。
云计算能够从SOA中学到的东西
服务治理
目前在云计算中几乎没有治理的概念,从而,几乎没有政策的控制和实施。因此,许多企业还没有应用云计算。
治理是SOA生存的基本事实,尽管治理总是没有很好地执行。围绕服务制定政策的能力和管理这些服务变化的能力是成功的重要因素。确实,在我们把云计算提供的服务结合到应用程序中或者SOA中的时候,你会发现许多事情中断,因为这些随需应变提供的服务将随着时间的推移而变化。SOA一般能够通过SOA治理系统管理这些变化。但是,也许有些治理应该来自于云计算的服务。
从架构出发
如果你正确地实施SOA,你是从架构到技术这样实施的。在云计算领域,随需应变的资源确实是这个起点。采用云计算,对于深思熟虑的架构的需求并没有取消,而是更加重要,因为你要把这个架构扩展到防火墙之外。
使用云计算资源主要是让你的架构超越企业的范围以采用云计算资源。因此,重要的是要记住你的架构没有在防火墙那里结束。的确,理解你的企业中存在的资源和理解云计算提供的资源是更重要的,因为一个架构环境中需要正确地配置这两种资源以满足业务的需求。
显然,SOA和云计算是关系密切的。云计算仅是利用你没有拥有的新平台和资源的能力。除此之外没有任何真正的变化,包括真确实施SOA的需求。然而,云计算将通过提供随需应变的SOA等方面的东西加快SOA的应用。SOA能够从云计算中学到许多东西,云计算也能够从SOA中学到许多东西。