什么是SOA

来源:百度知道 编辑:UC知道 时间:2024/06/06 13:26:16
最好是让那些非技术人员一听就会懂,

SOA架构 全称Service Oriented 架构(这个英文单词一时想不出来),整个世界都看成是服务以及服务之间的关系,这些服务有的是来自内部的,也有可能是外部提供的服务,然后服务之间通过松耦合的关系(即服务之间的契约等)整合到一起。
这是我个人理解,错了也不要砸我啊,我看的参考IBM的说法:
《SOA建模》
http://www.ibm.com/developerworks/cn/webservices/0708_xinsheng/index1.html?S_TACT=105AGX52&S_CMP=techcsdn

自从1996年SOA的概念被第一次提出来,经过了这么多年的积累和沉淀,到现在为止对于什么是SOA仍然是众说纷纭。每个人都有自己的理解,有人从技术角度去谈,有人从架构去谈,甚至有人从产品上谈,其实SOA与这些方面或多或少都有关联。
SOA的根本目的是业务的敏捷性,如何理解敏捷性呢,是从两个方面来理解的,一是IT在业务提出变化之后的一个恰当的时间段里相应这种变化;二是IT所做出的变化能够恰当的反映出业务的需求。

比如说你到餐馆去吃鱼香肉丝,这是一个服务,做鱼香肉丝就属于业务处理能力,可是大家做的鱼香肉丝是不一样的,也就是Quality of Service,大家都能够做鱼香肉丝,这是一个接口层次上的问题,但是Quality存在不同,而且我对这个餐馆表示不满的时候,餐馆经理就出来处理问题了,是重新做一份还是免单了,这如何解决问题就是业务策略。

这样一个简单的事情它其实表明了在过去代码的时代所无法表达的内容。一个业务活动它有它的业务处理能力,有它的功能,同时有跟这个功能有关系的一些关于Quality的要求,还有一些处理各种各样事件的业务策略,所有的这些东西融合在一起,他会出现在服务的描述里面,还会组装在一个形式化描述的业务流程里面,这些东西都