SOA与面相服务(一)

来源:互联网 发布:怎么更改淘宝收货地址 编辑:程序博客网 时间:2024/04/29 06:31

      “面向服务架构”是个术语,代表一个模型,其中的自动化逻辑可以分解为小的、不同的逻辑单元。这些单元组成一个较大的业务自动化逻辑片段,并可以对这些单元进行独立地分布式部署。


      面向服务架构(SOA)鼓励单个逻辑单元自治而不互相孤立。逻辑单元仍要遵从允许其独立的一系列原则,同时允许维护其通用性和标准化。在SOA内部,这些逻辑单元就是所谓的服务。


     面向服务涉及到封装逻辑、服务关联、服务之间通信、如何设计以及如何构建等方面。其中对服务的设计而言,面向服务已成为服务的独特的设计方法,该方法引入通用的公认原则来控制架构组件的配置与设计
   

       面向服务原则对处理逻辑的应用形成了标准化的面向服务处理逻辑。当一个解决方案由面向服务的处理逻辑单元组成时,就成为所谓的面向服务解决方案。


 面向服务原则:


服务可复用--不管是否存在即时复用的机会,服务均被设计为支持潜在可复用。


服务共享一个正式契约--为了与服务交互,只需要共享描述每个服务信息交换术语定义的正式契约。


服务是松散耦合的--服务应被设计为无需紧密的、跨服务的依赖而交互。


服务是底层逻辑抽象的--只有经由服务契约所暴露的部分服务对于外部世界是可见的。契约之外所表达的底层逻辑是不可见的,且与服务请求着无关。


服务是可组合的--服务可能组合其他服务。这允许表示不同粒度的逻辑,并促进复用及抽象层的组件。

服务是自治的--逻辑由服务所控制,并位于一个清晰的边界内。服务已经在这个边界内被控制,并且不依赖于执行其控制的其他服务。

服务是无状态的--服务应当不需要管理状态信息,因此能维护送耦合性。服务应当尽可能设计成无状态的,即便这意味着要将状态管理移至别处。


服务是可发现的--服务应当允许发现其描述,并且人工和可能会利用其逻辑的服务请求着应该能够理解。

在这条8条原则中,自治性、送耦合性、抽象以及需要正式契约视为形成SOA根本基础的核心原则。这4个原则直接支持其他原则,在以后的将分别讨论这些原则。

最后,必须理解,SOA与面相服务是与实现无关的范例,可以通过任何适当的技术平台来实现。 

原创粉丝点击