SOA体系结构是基于服务组件模型,将应用程序的不同功能单元通过定义良好的接口契约联系起来,接口是采用中立方式进行定义的,独立于实现服务的硬件平台,操作系统和编程语言。使得构建在这样的系统中的服务可以以一种统一的,通用的,灵活的方式进行交互,SOA组件模型 具有以下特点:

  1. 可重用:一个服务穿件后能用于多个应用和业务流程。
  2. 松耦合:服务请求者到服务提供者的绑定与服务之间应该是送耦合的,因此,服务请求者不需要知道服务提供者实现的技术细节,只需要知道服务名与服务接口即可。服务的部署,迁移,扩容极其便利。
  3. 明确定义的服务接口: 服务交互必须是明确定义的。SOA 服务组件提供标准周知的服务接口,服务请求者根据服务名,标准服务接口来获取服务,Web 服务描述语言WSDL 用于描述服务请求所有者所要求的绑定到服务提供者的细节。WSDL 不包括服务实现的任何技术细节
  4. 基于开放标准:当前SOA细节的实现形式基于开放标准
  5. 无状态的服务设计: 服务应该是独立的,自包含的请求, 在实现时它不需要获取从一个请求到另一个请求的信息或状态,服务不应该依赖于其他服务的上下文和状态。当产生依赖时。他们可以定义成通用的业务流程,函数和数据模型。

SOA不是一项技术,也不是一个标准,而是一种架构,SOA架构独立于标准,提供了架构的蓝图 。架构蓝图切开,分块和组合企业应用程序层,将组件服务化,SOA中的服务于业务功能相关联,但在技术上 独立于业务功能的实现。

SOA的基本概念 
SOA 是一个软件架构,包含了四个关键架构, 包含了四个关键概念: 应用程序前段,服务,服务库和服务总线。 一个服务包含了一个合约,一个或者多个接口以及一个实现。 
其中:

  1. 应用程序前端 ——–>> 业务流程的所有者。
  2. 服务——–>> 提供业务的功能,可以 供应多个程序前端或者其他服务使用
  3. 实现——–>>提供业务逻辑和数据
  4. 合约——–>>为服务客户指定功能,使用和约束。
  5. 接口——>> 物理地公开功能
  6. 服务库——>> 存储SOA中各个服务的服务合约
  7. 服务总线——>>将应用程序前端和服务联在一起。

SOA 架构中, 必须要有三个重要实体角色,分别是 服务请求者,服务管理中心,托管服务进程

基于Web Service 的SOA 
1 , XML-RPC 
一个XMK-RPC 消息的例子

<methodCall>
<methodName>
sample.sumAndDifference
</methodName>
<params>
<param><value><int>5</int></param>
<param><value><int>3</int></param>
</params>
</methodCall>

面相服务的架构SOA的更多相关文章

  1. 面向服务的架构SOA

    SOA简介 SCA实现SOA的最佳方式 Apache开源框架Tuscany实现SCA架构 SOA简单描述: SOA(Service-Oriented Architecture)面向服务的体系架构.为了 ...

  2. 集成架构:对比 Web API 与面向服务的架构和企业应用程序集成(转)

    http://kb.cnblogs.com/page/521644/ 摘要:总体上讲,SOA 和 Web API 似乎解决的是同一个问题:以实时的.可重用的方式公开业务功能.本教程将分析这些举措有何不 ...

  3. (转)集成架构:对比 Web API 与面向服务的架构和企业应用程序集成

    摘要:总体上讲,SOA 和 Web API 似乎解决的是同一个问题:以实时的.可重用的方式公开业务功能.本教程将分析这些举措有何不同,以及如何将它们融入到一个不断演变的集成架构中.文中还将讨论 API ...

  4. SOA-面向服务的架构

    一.什么是SOA? SOA 面向服务架构,是一个架构思想,是跨语言和平台的.SOA宗旨简单明了,根据项目服务完成架构搭建,以服务为基准点完成组件化和模块化.提供服务是项目的基本内容,其他的contro ...

  5. Atitit.架构设计趋势 设计模式 ---微服务架构  soa

    Atitit.架构设计趋势 设计模式 ---微服务架构  soa 什么是微服务架构?1 .微服务与SOA的关系 :微服务架架构师面向服务架构(SOA)的一种特定实现1 微服务与康威定律2 微服务的一些 ...

  6. 亚马逊如何变成 SOA(面向服务的架构)?

    阮一峰 日期: 2016年9月10日 上一篇文章,我摘录了<程序员的呐喊>.这本书有趣的内容太多,今天再摘录一段. 1. 亚马逊公司不仅是世界最大的网络书店,还是世界最大的云服务商.它是怎 ...

  7. 面向服务体系架构(SOA)和数据仓库(DW)的思考基于 IBM 产品体系搭建基于 SOA 和 DW 的企业基础架构平台

    面向服务体系架构(SOA)和数据仓库(DW)的思考 基于 IBM 产品体系搭建基于 SOA 和 DW 的企业基础架构平台 当前业界对面向服务体系架构(SOA)和数据仓库(Data Warehouse, ...

  8. 面向服务的体系架构SOA

    面向服务的体系架构SOA 序言 在.Net的世界中,一提及SOA,大家想到的应该是Web Service,WCF,还有人或许也会在.NET MVC中的Web API上做上标记,然后泛泛其谈! 的确,微 ...

  9. 面向服务的架构(SOA)

    SOA架构基础概念 面向服务的架构(SOA) 在深入探讨什么是面向服务的架构(SOA)之前,先建立一些基本的概念和术语的基本描述而非严格定义,所以也许有些定义在业内还存留争议,此处暂且忽略. 架构基础 ...

随机推荐

  1. python-os模块使用

    1.合并路径 os.path.join("c:\\music\\ap\\0","mav.mp3") 'c:\\music\\ap\\0\\mav.mp3' 2. ...

  2. Kubernetes 笔记 04 架构是个好东西

    本文首发于我的公众号 Linux云计算网络(id: cloud_dev),专注于干货分享,号内有 10T 书籍和视频资源,后台回复「1024」即可领取,欢迎大家关注,二维码文末可以扫. Hi,大家好, ...

  3. 巡风源码阅读与分析---view.py

    巡风xunfeng----巡风源码阅读与分析 巡风是一款适用于企业内网的漏洞快速应急.巡航扫描系统,通过搜索功能可清晰的了解内部网络资产分布情况,并且可指定漏洞插件对搜索结果进行快速漏洞检测并输出结果 ...

  4. python高级-动态特性(20)

    一.动态语⾔的定义 动态语言是在运行时确定数据类型的语言.变量使用之前不需要类型声明,通常变量的类型是被赋值的那个值的类型.现在比较热门的动态语言有:Python.PHP.JavaScript.Obj ...

  5. Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(二):部署

    前面又是废话 我之前写过: Asp.Net Core 程序部署到Linux(centos)生产环境(一):普通部署 Asp.Net Core 程序部署到Linux(centos)生产环境(二):doc ...

  6. Node.js 进程平滑离场剖析

    本文由云+社区发表 作者:草小灰 使用 Node.js 搭建 HTTP Server 已是司空见惯的事.在生产环境中,Node 进程平滑重启直接关系到服务的可靠性,它的重要性不容我们忽视.既然是平滑重 ...

  7. [七]基础数据类型之Float详解

        Float 基本数据类型float  的包装类 Float 类型的对象包含一个 float 类型的字段    属性简介 用来以二进制补码形式表示 float 值的比特位数 public sta ...

  8. CAN总线学习记录之三:总线中主动错误和被动错误的通俗解释

    首先建议把广泛使用的"主动错误"和"被动错误"概念换成"主动报错"和"被动报错". 1. 主动报错站点 只要检查到错误, ...

  9. Python并发编程之谈谈线程中的“锁机制”(三)

    大家好,并发编程 进入第三篇. 今天我们来讲讲,线程里的锁机制. 本文目录 何为Lock( 锁 )?如何使用Lock( 锁 )?为何要使用锁?可重入锁(RLock)防止死锁的加锁机制饱受争议的GIL( ...

  10. Scala(四) —— 集合

    一.List var x = List(1,2,3,4) //x:List[Int] = List(1, 2, 3, 4) var y = List("x","y&quo ...