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建议,


把注意力集中在两条关键准则上:共享和松耦合。若回顾过去,未能看到很大程度的共享,那我认为项目是失败的。而且我还要确保业务流程具有相当的敏捷性。

在访谈结束时,他向CXO们提出告诫。他说,

如果他们只是关注于技术层面,那他们将一无所获。真正应该关注的是实现共享和敏捷性所需的架构以及弥补缺陷的不同方式。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
"woa"和"ga"都是优化算法中常见的两种进化算法,它们在解决问题的过程中都通过进化曲线来描述算法性能的改进情况。 首先,"woa",全名为"Whale Optimization Algorithm"(鲸鱼优化算法),是一种基于鲸鱼群体行为的进化算法。它模拟了鲸鱼狩猎时的策略,通过利用鲸鱼个体之间的社会行为和通信来寻找最优解。"woa"算法通过几个阶段的迭代来不断改进解空间中的个体,并逐渐收敛于最优解。"woa"算法的进化曲线往往表现为一条逐渐下降的曲线,体现了算法在解决问题过程中逐渐优化的情况。 而"ga",全名为"Genetic Algorithm"(遗传算法),是一种模拟自然进化过程的优化算法。它通过模拟基因的交叉、变异和选择机制,不断迭代产生更好的个体解,并通过自然选择来筛选优秀的个体。"ga"算法的进化曲线也是一条逐渐下降的曲线,代表了算法在解空间中逐步逼近最优解的过程。 对比来看,"woa"和"ga"在进化曲线上都呈现出逐渐下降的趋势,但它们的具体形态可能不尽相同。因为两种算法的具体实现细节不同,所以它们的进化曲线可能受到一些因素的影响而有所不同,例如初始种群的质量、迭代次数、交叉变异概率等等。 总的来说,"woa"和"ga"作为两种常见的进化算法,它们都通过进化曲线展示算法性能的改进过程。它们的进化曲线都体现了算法逐步优化解空间中个体解的能力,但具体形态可能会有区别。选用哪种算法应该根据具体问题的特点和需求来确定。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值