面相服务的架构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)之前,先建立一些基本的概念和术语的基本描述而非严格定义,所以也许有些定义在业内还存留争议,此处暂且忽略. 架构基础 ...
随机推荐
- Prometheus使用入门
Monitoring with Prometheus读书笔记 原书见: https://www.safaribooksonline.com/library/view/monitoring-with-p ...
- Python内置函数(56)——set
英文文档: class set([iterable]) Return a new set object, optionally with elements taken from iterable. s ...
- 【Maven】---坐标与依赖
Maven坐标与依赖 最近想深度学习下maven,找到一本书叫<Maven实战>,这本书讲的确实很好,唯一遗憾的是当时maven教学版本是3.0.0的,而目前已经到了3.5.4了,版本存在 ...
- VSCode入门----设置成中文
将VScode设置成中文. 1.如下图,安装中文插件,点击左边后,输入chinese搜索,然后选择中文件简体进行安装. 2.按住Ctrl+Shift+P,然后输入 configure ,如下图,选择“ ...
- Spring Boot分布式系统实践【扩展1】shiro+redis实现session共享、simplesession反序列化失败的问题定位及反思改进
前言 调试之前请先关闭Favicon配置 spring: favicon: enabled: false 不然会发现有2个请求(如果用nginx+ 浏览器调试的话) 序列化工具类[ ...
- Connection open error . Connection Timeout Expired. The timeout period elapsed during the post-login phase.
是这样的,最近我在开发Api(重构),用的数据库是Sqlserver,使用的Orm是 SqlSugar(别问我为什么选这个,boss选的同时我也想支持国人写的东西,且文档也很全). 被催的是,写好了程 ...
- leetcode — binary-tree-zigzag-level-order-traversal
import java.util.ArrayList; import java.util.Arrays; import java.util.List; /** * Source : https://o ...
- ES6躬行记(20)——类
ES6正式将类(Class)的概念在语法层面标准化,今后不必再用构造函数模拟类的行为.而ES6引入的类本质上只是个语法糖(即代码更为简洁.语义更为清晰),其大部分功能(例如继承.封装和复用等)均可在E ...
- Git合并不同url的项目
本文由云+社区发表 作者:工程师小熊 摘要:为了让项目能实现Git+Gerrit+Jenkin的持续集成,我们把项目从Git上迁移到了Gerrit上,发现有的同事在老Git提交代码,因为Gerrit做 ...
- python基础5--输入输出、错误与异常
1.键盘输入输出 输入:input()和raw_input() 输出:str()和format raw_input([prompt]) 函数从标准输入读取一个行,并返回一个字符串(去掉结尾的换行符): ...