【TechTarget中国原创】洛杉矶,加州——微软公司资深副总裁Bob Muglia在专业开发者大会上向大家介绍了云计算Windows Azure,并认为Windows Azure会是继面向服务架构后,将要采取的第二战略。但是研究SOA和云计算的分析师,喜欢将二者进行比较,对程序开发的这种面向服务方法提出了质疑。
在PDC,Muglia将Azure誉为“计算的第五代产品”,并且认为以前的四代产品分别为单片机应用、客户/服务器应用、Web应用以及SOA。
他认为就其规模来说,SOA的能力有限,相比之下微软公司的云计算要好的多。
他断言“建立在SOA基础上的Azure服务平台有着质的区别”。“SOA的伸缩性并不是很好,云需要一个一开始伸缩性就不错的平台”。
关注SOA和云计算的独立分析师Joe McKendrick说,“从Muglia的谈话中我们可以看出,和SOA相比Windows Azure似乎更为合适。“SOA并不是一个有限技术集合体的平台;它是一种方法、一种哲学,任何客户都可以在任何时间使用某些特定的服务——而不必计较服务创建者和客户所使用的底层技术。从技术角度来说,SOA的伸缩性很强,可以随你的意愿而发生改变。”
SOA的新作用
McKendrick预见到云计算为程序开发的面向服务方法创建了一个新角色“内部云的启动者”企业一直在开发这种方法,以便更好为业务单元提供服务。
位于旧金山的Chappell & Associates主席David Chappell认为所有关于SOA和云计算的论战就像苹果和橘子之争一样。
他说“SOA和云计算之间有重叠之处”,“他们有着质的区别。他们解决不同的问题,但是在一定程度上,他们有重叠之处。
Chappell说,SOA为其它的程序提供Web服务,而云则为终端用户和运行的编码提供软件服务。
“SOA是一个将服务展现给其它程序的技术” Chappell解释说“大多数时间这些服务都是通过应用程序呈现的。例如,如果我用SAP应用来运行企业,我将服务暴露给其它在企业中运行中的服务,这就是SOA的一个实例。”
按照他的观点,云中运行的Web服务只是SOA的一种形式。
Chappell说“如果我在云里运行ERP,它会把Web服务暴露给其它的应用,但是它仍然是SOA。”
勿将SOA和云计算混为一谈
云计算为不同种类的服务提供平台
Chappell说“在云计算中,当人们将软件看做是服务时,通常指的是通过浏览器交付给个人的服务,而不是通过Web服务交付的服务。”“所以,作为服务的软件和SOA不同,因为你是在向人交付服务,而不是向软件交付服务。”
Chappell认为,SOA和云计算的另一个不同之处就是云平台。
他说“Windows Azure和Amazon EC2都是云平台。”“有些时候,平台会交付云中的服务,但是Windows Azure、EC2却是在云中运行编码。这和SOA完全不同,和SOA一点关系也没有。”
McKendrick说他自已也不明白,为什么微软会抢先一步发展云,而不是SOA,过去的几年里,公司一直在为SOA提供支持。
Chappell总结到“将SOA和云混为一谈令人很困惑”“它们在某些领域是重叠的,但是它们有着本质的不同。”