面相服务的架构SOA
SOA体系结构是基于服务组件模型,将应用程序的不同功能单元通过定义良好的接口契约联系起来,接口是采用中立方式进行定义的,独立于实现服务的硬件平台,操作系统和编程语言。使得构建在这样的系统中的服务可以以一种统一的,通用的,灵活的方式进行交互,SOA组件模型 具有以下特点:
- 可重用:一个服务穿件后能用于多个应用和业务流程。
- 松耦合:服务请求者到服务提供者的绑定与服务之间应该是送耦合的,因此,服务请求者不需要知道服务提供者实现的技术细节,只需要知道服务名与服务接口即可。服务的部署,迁移,扩容极其便利。
- 明确定义的服务接口: 服务交互必须是明确定义的。SOA 服务组件提供标准周知的服务接口,服务请求者根据服务名,标准服务接口来获取服务,Web 服务描述语言WSDL 用于描述服务请求所有者所要求的绑定到服务提供者的细节。WSDL 不包括服务实现的任何技术细节
- 基于开放标准:当前SOA细节的实现形式基于开放标准
- 无状态的服务设计: 服务应该是独立的,自包含的请求, 在实现时它不需要获取从一个请求到另一个请求的信息或状态,服务不应该依赖于其他服务的上下文和状态。当产生依赖时。他们可以定义成通用的业务流程,函数和数据模型。
SOA不是一项技术,也不是一个标准,而是一种架构,SOA架构独立于标准,提供了架构的蓝图 。架构蓝图切开,分块和组合企业应用程序层,将组件服务化,SOA中的服务于业务功能相关联,但在技术上 独立于业务功能的实现。
SOA的基本概念
SOA 是一个软件架构,包含了四个关键架构, 包含了四个关键概念: 应用程序前段,服务,服务库和服务总线。 一个服务包含了一个合约,一个或者多个接口以及一个实现。
其中:
- 应用程序前端 ——–>> 业务流程的所有者。
- 服务——–>> 提供业务的功能,可以 供应多个程序前端或者其他服务使用
- 实现——–>>提供业务逻辑和数据
- 合约——–>>为服务客户指定功能,使用和约束。
- 接口——>> 物理地公开功能
- 服务库——>> 存储SOA中各个服务的服务合约
- 服务总线——>>将应用程序前端和服务联在一起。
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的更多相关文章
- 面向服务的架构SOA
SOA简介 SCA实现SOA的最佳方式 Apache开源框架Tuscany实现SCA架构 SOA简单描述: SOA(Service-Oriented Architecture)面向服务的体系架构.为了 ...
- 集成架构:对比 Web API 与面向服务的架构和企业应用程序集成(转)
http://kb.cnblogs.com/page/521644/ 摘要:总体上讲,SOA 和 Web API 似乎解决的是同一个问题:以实时的.可重用的方式公开业务功能.本教程将分析这些举措有何不 ...
- (转)集成架构:对比 Web API 与面向服务的架构和企业应用程序集成
摘要:总体上讲,SOA 和 Web API 似乎解决的是同一个问题:以实时的.可重用的方式公开业务功能.本教程将分析这些举措有何不同,以及如何将它们融入到一个不断演变的集成架构中.文中还将讨论 API ...
- SOA-面向服务的架构
一.什么是SOA? SOA 面向服务架构,是一个架构思想,是跨语言和平台的.SOA宗旨简单明了,根据项目服务完成架构搭建,以服务为基准点完成组件化和模块化.提供服务是项目的基本内容,其他的contro ...
- Atitit.架构设计趋势 设计模式 ---微服务架构 soa
Atitit.架构设计趋势 设计模式 ---微服务架构 soa 什么是微服务架构?1 .微服务与SOA的关系 :微服务架架构师面向服务架构(SOA)的一种特定实现1 微服务与康威定律2 微服务的一些 ...
- 亚马逊如何变成 SOA(面向服务的架构)?
阮一峰 日期: 2016年9月10日 上一篇文章,我摘录了<程序员的呐喊>.这本书有趣的内容太多,今天再摘录一段. 1. 亚马逊公司不仅是世界最大的网络书店,还是世界最大的云服务商.它是怎 ...
- 面向服务体系架构(SOA)和数据仓库(DW)的思考基于 IBM 产品体系搭建基于 SOA 和 DW 的企业基础架构平台
面向服务体系架构(SOA)和数据仓库(DW)的思考 基于 IBM 产品体系搭建基于 SOA 和 DW 的企业基础架构平台 当前业界对面向服务体系架构(SOA)和数据仓库(Data Warehouse, ...
- 面向服务的体系架构SOA
面向服务的体系架构SOA 序言 在.Net的世界中,一提及SOA,大家想到的应该是Web Service,WCF,还有人或许也会在.NET MVC中的Web API上做上标记,然后泛泛其谈! 的确,微 ...
- 面向服务的架构(SOA)
SOA架构基础概念 面向服务的架构(SOA) 在深入探讨什么是面向服务的架构(SOA)之前,先建立一些基本的概念和术语的基本描述而非严格定义,所以也许有些定义在业内还存留争议,此处暂且忽略. 架构基础 ...
随机推荐
- python-os模块使用
1.合并路径 os.path.join("c:\\music\\ap\\0","mav.mp3") 'c:\\music\\ap\\0\\mav.mp3' 2. ...
- Kubernetes 笔记 04 架构是个好东西
本文首发于我的公众号 Linux云计算网络(id: cloud_dev),专注于干货分享,号内有 10T 书籍和视频资源,后台回复「1024」即可领取,欢迎大家关注,二维码文末可以扫. Hi,大家好, ...
- 巡风源码阅读与分析---view.py
巡风xunfeng----巡风源码阅读与分析 巡风是一款适用于企业内网的漏洞快速应急.巡航扫描系统,通过搜索功能可清晰的了解内部网络资产分布情况,并且可指定漏洞插件对搜索结果进行快速漏洞检测并输出结果 ...
- python高级-动态特性(20)
一.动态语⾔的定义 动态语言是在运行时确定数据类型的语言.变量使用之前不需要类型声明,通常变量的类型是被赋值的那个值的类型.现在比较热门的动态语言有:Python.PHP.JavaScript.Obj ...
- Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(二):部署
前面又是废话 我之前写过: Asp.Net Core 程序部署到Linux(centos)生产环境(一):普通部署 Asp.Net Core 程序部署到Linux(centos)生产环境(二):doc ...
- Node.js 进程平滑离场剖析
本文由云+社区发表 作者:草小灰 使用 Node.js 搭建 HTTP Server 已是司空见惯的事.在生产环境中,Node 进程平滑重启直接关系到服务的可靠性,它的重要性不容我们忽视.既然是平滑重 ...
- [七]基础数据类型之Float详解
Float 基本数据类型float 的包装类 Float 类型的对象包含一个 float 类型的字段 属性简介 用来以二进制补码形式表示 float 值的比特位数 public sta ...
- CAN总线学习记录之三:总线中主动错误和被动错误的通俗解释
首先建议把广泛使用的"主动错误"和"被动错误"概念换成"主动报错"和"被动报错". 1. 主动报错站点 只要检查到错误, ...
- Python并发编程之谈谈线程中的“锁机制”(三)
大家好,并发编程 进入第三篇. 今天我们来讲讲,线程里的锁机制. 本文目录 何为Lock( 锁 )?如何使用Lock( 锁 )?为何要使用锁?可重入锁(RLock)防止死锁的加锁机制饱受争议的GIL( ...
- Scala(四) —— 集合
一.List var x = List(1,2,3,4) //x:List[Int] = List(1, 2, 3, 4) var y = List("x","y&quo ...