软件测试InfoQ: WOA与SOA之争 SOA构架
关键字:WOA与SOA之争
Gartner副总裁Nick Gall是首个使用WOA一词的人,在一次访谈中,Loraine Lawson请他向商业和IT主管们谈谈WOA与SOA之争的重点内容。
当被问及WOA一词的由来时,Nick Gall说
我所能找到最早的记录是在2005年的秋天,当时我是在一个大会上发言时用到这个词的,然后我们公司的另一位副总裁Whit Andrew在他的博客里记录下了我用到这个词这件事。
他说,REST风格是跟WOA最为接近的架构风格,但“REST引起了太多的争议,而且关于REST的实际含义存在着诸多误解”,于是他就发明了一个新术语。他说道:
在我看来,WOA意味着一种更加以Web为中心的Web服务风格,它更简单、不怎么复杂、也不怎么受厂商驱使,它代表的就是这种新出现的风格。
接着,他用公式简洁地描述了这个架构风格“WOA = SOA + REST + WWW”。他通过为SOA添加架构约束的方式描述了WOA。
WOA是总的SOA风格中的一种子风格。对于那些希望符合WOA的Web服务而言,它们应力求遵守REST的所有约束。不过也不必100%符合REST风格。
SOA这种架构风格本质上有五点约束。如果你的架构满足所有这些特征——模块化的、可分布的、可描述的、可共享的和松耦合的——那么你的架构就可以称得上面向服务的架构(SOA)。
WOA更进一步,它还要求遵守REST约束,而且REST约束与SOA约束是完全相容的。其实,REST的每一条约束都是教你如何满足SOA的五大约束。
他说,现在企业里有很多采用WS-*、SOAP和WSDL等相关技术的SOA项目。“它不够完美,但你可以描述它。然而它没有统一的名称”。他称这种风格的SOA为“X风格”。他描述道,
SOA是五大约束的概括性术语。 目前,他有两种主要的子风格。 一种是X风格(即目前还没有名称),它是一种类似分布式对象和IDL的风格。 SOA的另一种主要风格便是WOA风格。 在所有实现SOA的途径之中,WOA已经展现出了高度的可共享性与松耦合性。另外,它们的确是两种相互竞争的风格。我们可以对WOA风格的SOA和X风格的SOA做一个优缺点的对比。
他说,Gartner目前正在研究这两种风格的优点与缺点。当被问及CIO们该如何判断是关注SOA还是WOA、以及应如何理解所有这些争论时,Nick Gall建议,