SOA之(3)——面向服务计算基础
面向服务计算基础(Service-Oriented Computing Fundamentals)
面向服务的计算(Service-Oriented Computing)
面向服务的计算是一个伞状术语(umbrella term),它代表下一代分布式计算平台。面向服务的计算包括很多东西,包括它自己的设计范式、设计原则、设计模式、独特的架构模型和相关的概念、技术和框架。
注:伞状术语,意即广泛的观点和看法可以汇集于此,就像不同块的伞布,虽相对独立,但只有相连构成完整的伞才有意义
面向服务的计算构建在过去的分布式计算平台之上,同时加入了新的设计层面,治理因素以及一个庞大的技术实现集合,其中有一些是基于Web服务框架的(Web services framework)。
面向服务(Service-Orientation)
面向服务是一种设计范式,它的目的在于创建独立的解决方案逻辑单元,这些逻辑单元具有可聚集性和可复用性,用以支持实现SOA和面向服务计算的具体目标和好处。
符合面向服务设计思想的解决方案逻辑可以被认为是面向服务的,这些面向服务的逻辑单元可以被称作“服务”。就如分布式计算的范式,面向服务与面向对象相对应。面向服务与面向对象有较深的关联,也被其他的业内开发方式影响着。

面向服务的架构(SOA)
面向服务的架构(Service-oriented architecture)指的是一个架构模型,它目的在于增强一个企业的灵活性和成本有效性,从而降低整个组织的IT负担。为了到达这个目的,它将服务作为逻辑方案的主要表达形式。SOA以实现面向服务计算的战略目标来支持面向服务。历史上,SOA这个词被广泛应用与媒体、供应商的营销中,以至于它几乎可以作为面向服务的计算的代名词。
作为技术架构的一种形式,SOA的实施包括了技术、产品、应用程序接口(APIs)、基础设施支持以及其他很多方面相结合。每个企业实施SOA的复杂程度都有所不同。
服务(Service)
一个服务是一个逻辑单元有其自己的(业务)意义。我们应用面向服务的设计原则来区分逻辑单元和逻辑单元集,后者可以独立作为组件存在。

服务能力(Service Capability)
每个服务都被赋予它独特的功能环境中,它包括了一组与这个环境相关的功能或能力。因此服务可以被当作是具有通用目的能力集合的容器。服务能力这个术语,不包括如何实现服务,所以这个词通常在服务的模型设计阶段使用到。
服务消费者(Service Consumer)
当一个程序调用一个服务或者与一个服务交互的时候,这个服务可以称之为服务消费者。比较重要的是这个术语通常指的是处于服务数据交换中运行时的角色 (temporary runtime role)。
比如,一个桌面应用程序可以与服务进行消息交换,这个桌面程序可以被认为是一个服务消费者。

服务消费者的另外一个名称叫服务请求者(service requester)

服务组合(Service Composition)
一个服务组合是一组聚合的服务,它代表了一个自动化的任务或业务流程。一个组合至少需要一个组合发起者已经两个参与者服务组成,否则只是一个点对点的交换。

与服务组合相关的还有其他一些概念:
组合控制者(composition controller)
组合控制者的能力(composition controller capability)
组合发起者(composition initiator)
组合成员(composition member)
组合成员的能力(composition member capability)
组合子控制者(composition sub-controller)
服务活动(service activity)
服务仓库(Service Inventory)
一个服务仓库是一个独立的、标准化的、处于治理下的一组最新的服务,它有自己的边界,这个边界可以代表一个企业,也可以是有意义企业内部的划分。当一个组织有多个服务仓库时,这些服务仓库可以被称为领域服务仓库(domain service inventory)。
面向服务的分析(Service-Oriented Analysis)
面向服务的分析处于SOA工作的起始阶段,它是服务交付周期的第一阶段。它是一个准备与收集信息的流程,概念上的服务候选者、服务能力候选者和服务组合的候选者都是这一阶段的产物,可以对服务建模子流程起到支持作用。
服务候选者(Service Candidate)
在用面向服务的分析方法对服务进行建模的过程中,,在它们交付于设计阶段之前,服务还处于定义过程中,依然在不断修改和完善。术语“服务候选者”是用来区分处于概念阶段的服务和已经真实实现的服务。
参考:《SOA设计模式》 由Thomas Erl及其他供稿者合著,作为Thomas Erl关于面向服务计算丛书的一部分,于2009年1月由Prentice Hall出版,ISBN 0136135161,版权所有2009 SOA System Inc.。
SOA之(3)——面向服务计算基础的更多相关文章
- SOA(Service-Oriented Architecture):面向服务的架构
SOA (Service-Oriented Architecture):面向服务的架构(SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)进行拆分,并通过这些服务之间定义良好的接口和协议联 ...
- 面向服务的架构(SOA)
SOA架构基础概念 面向服务的架构(SOA) 在深入探讨什么是面向服务的架构(SOA)之前,先建立一些基本的概念和术语的基本描述而非严格定义,所以也许有些定义在业内还存留争议,此处暂且忽略. 架构基础 ...
- 面向服务的架构SOA
SOA简介 SCA实现SOA的最佳方式 Apache开源框架Tuscany实现SCA架构 SOA简单描述: SOA(Service-Oriented Architecture)面向服务的体系架构.为了 ...
- SOA (面向服务的架构)-Service Oriented Architecture
SOA (面向服务的架构) 编辑 面向服务的架构(SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来.接口是采用中立的方式进行定义的,它应该独立 ...
- 架构-SOA:SOA(面向服务的架构)
ylbtech-架构-SOA:SOA(面向服务的架构) 面向服务的架构(SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)进行拆分,并通过这些服务之间定义良好的接口和契约联系起来.接口是采 ...
- SOA(面向服务的体系结构)
SOA(面向服务的体系结构) 面向服务的体系结构是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来.接口是采用中立的方式进行定义的,它应该独立于实现服务 ...
- 通俗地理解面向服务的架构(SOA)以及微服务之间的关系
SOA是一种软件的应用架构方法,它基于面向对象,但又不是面向对象,整体上是面向服务的架构.SOA由精确的服务定义.松散的构件服务组成,以及业务流程调用等多个方面形成的一整套架构方法. 这话是不是听起来 ...
- SOA——面向服务的体系架构
上一篇博文中提到了"紧耦合"的现象.怎样解决?SOA.採用面向服务的体系架构. 一.What? SOA=Service-oriented Architecture面向服务的体系结构 ...
- 面向服务开发(SOA)
面向服务的体系结构是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来.接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台.操作系统和编程语言 ...
随机推荐
- sql 子查询要命名
Date1 from ( select distinct Date1 from TableName where Date1 > '2013-5-1' )A --这里加个A,B,C随便你 或者as ...
- 从客户端检测到有潜在危险的Request.Form 值【转】
asp.net开发中,经常遇到“从客户端检测到有潜在危险的Request.Form 值”错误提示,很多人给出的解决方案是: 1.web.config文档<system.web>后面加入这一 ...
- hadoop-cdh with snappy
hadoop: 2.5.0-cdh5.3.6 snappy: 1.1.3 hadoop 2.*不需要hadoop-snappy.只要机器上安装好snappy, 直接编译就可以 编译命令: mvn cl ...
- Activity(一)
一个应用程序中至少包含一个Activity,Activity启动流程:当启动一个应用程序时,android操作系统会访问该应用程序的AndroidManifest.xml文件(该文件中说明了应用程序使 ...
- 关于Haproxy安装和配置:负载配置【haproxy.cfg】问题记录
1. 存放地址: more /etc/haproxy/haproxy.cfg ps -ef | grep haproxy 看看有没有haproxy的进程就是了 或者看看服务器的23306的端口有没有 ...
- listview 优化
ListView的优化: (前两点都是利用ListView的自身优化机制优化[缓存优化]) 1.利用ListView自身的缓存机制,他会缓存条目中的一个条目item,当listview第一屏显示完成之 ...
- Swift Tips - 当 Swift 遇上 CocoaPods
CocoaPods 作为 iOS 开发的包管理工具,几乎成为了 Objective-C 的行业标准.它为我们提供了非常方便的包管理功能.而苹果正式发布 Swift 语言也已经有半年多时间了,Swift ...
- java数据结构和算法------选择排序
package iYou.neugle.sort; public class Select_sort { public static void SelectSort(double[] array) { ...
- Quartus II Error总结与解答
(1).Error (209015): Can't configure device. Expected JTAG ID code 0x020B20DD for device 1, but found ...
- ultraedit高亮显示设置
ultraedit高亮显示设置 | 浏览:2333 | 更新:2014-02-20 23:05 1 2 3 4 5 6 7 分步阅读 百度经验:jingyan.baidu.com 写代码的人对ultr ...