SOA构架介绍

1.SOA定义

SOA面向服务的架构是一种计算机环境设计、开发、部署和管理离散模型的方法,SOA中所有的功能都被定义成立独立的服务,所有的服务通过总线(ESB)或者流程管理连接。这种松耦合的结构使得服务器在交互的过程中无需考虑双方内部细节,以最小的代价整合已经存在的各种异结构。主要有3种抽象级别:操作、服务和业务流程

操作:通常会导致读、写、修改一个或多个持久性数据

服务:代表了操作的逻辑分组

业务流程:为了实行特定业务目标而执行的一组长期运行的动作或活动

2.SOA的特征

松耦合:松耦合旨在使用者和提供者在服务实现和用户如何使用服务方面隔离,基于服务接口的信息,信息接口能兼容更多中传输方式,基于消息可以采用同步和异步的传输。

粗粒度:选择正确的有效的粗粒度服务,有助于组合出新的业务流程和应用程序。

服务粒度:指的是服务所公开功能的范围,一般分为粗粒度和细粒度

粗粒度:能够提供高层业务逻辑的可用性服务

细粒度:能够提供少量的业务流程可用性的服务

标准化接口:SOA通过服务接口的标准化描述,使得该服务可以在任何异构平台和任何用户接口中使用。包括:传输协议、消息格式等。

3.服务构件和传统构件得区别:

(1).服务构件往往是粗粒度的,传统构件往往是细粒度居多

(2).服务构(SCA)件主要是使用标准化的接口描述语言接口,传统构件主要是具体的API形式

(3).服务构件的实现与具体的语言无关,传统构件需要绑定某种特殊的语言

4.SOA设计原则

  1. 明确定义接口
  2. 粗粒度
  3. 松耦合
  4. 自包含和模块化:服务封装了在业务层稳定,重复出现的活动和构件,实现服务的功能实体完全独立
  5. 互操行,兼容性,策略声明mian

5.面向服务的分析与设计SOAD

SOAD分为三层:

①基础设计层:采用了OOAD的思想,主要目标是能够进性快速而有效的设计、开发以及执行灵活且可扩展的底层服务构件

②体系结构层:采用EA的理论框架,以表示业务服务的逻辑构件为中心,并且集中于定义服务之间的接口和服务级协定

③业务层:采用了BPM规范

6.SOA关键技术

1.发现服务层:帮助客户端应用程序解析远程服务位置,UDDI规范描述了服务的概念提供标准接口,企业可以发布自己的服务提供其他企业查询和调用,也可以查询特定服务描述信息“一次注册到处服务”

2.描述服务层:为客户端应用程序提供正确地与远程服务交互的描述信息,WSDL为服务提供者提供以xml格式描述服务请求的标准格式,将网络服务描述为能够进行消息交换的通信端点集合。

3.编码格式层:为客户端和服务器之间提供一个标准的,独立与平台交换编码风格XML实现

4.传输协议层:提供网络通信协议(http,smip)

5.消息格式层:保证客户端应用程序和服务器端在格式设置上保持一致,通过SOAP实现,SOAP定义了服务请求者和提供者之间的消息传输规范

7.SOA实现方法

1.Web Service

服务提供者:

服务请求者:

服务注册中心:

2.服务注册表

3.企业服务总线ESB

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/691991.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Linux】动态库与静态库的底层比较

送给大家一句话: 人生最遗憾的,莫过于,轻易地放弃了不该放弃的,固执地坚持了不该坚持的。 – 柏拉图 (x(x_(x_x(O_o)x_x)_x)x) (x(x_(x_x(O_o)x_x)_x)x) (x(x_(x_x(O_o)x_x)_x)x) 底层比较 1 前言2 编译使用比较2 如何加载Than…

51基于单片机的温室大棚系统设计

设计摘要: 本设计旨在基于51单片机和蓝牙技术,实现一个功能完善的温室大棚系统。该系统具备以下主要功能:首先,通过连接的显示屏能够实时地显示当前的温度和湿度信息,方便用户了解温室内的环境变化。其次,…

java项目之校园失物招领系统(springboot+vue+mysql)

风定落花生,歌声逐流水,大家好我是风歌,混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的校园失物招领系统。项目源码以及部署相关请联系风歌,文末附上联系信息 。 项目简介: 校园失物招领系统的主要…

【Linux】-Linux的实用操作:快捷键与软件安装操作、构建软连接、日期时区的设置[4]

目录 一、各类小技巧(快捷键) 1、ctrl c 强制停止 2、ctrl d 退出或登出 3、历史命令搜索 4、光标移动快捷键 5、清屏 二、软件安装 1、yum命令 2、apt命令 - 扩展(ubuntu) 三、systemctl命令 四、软连接 1、ln命令…

商业数据分析--时间序列图及趋势分析

绘制时间序列图,并指出存在什么样的状态如上两图: 可见状态:从时间序列图可以看出,这些数据存在明显的季节性波动,每年的第4季度值都最高,而第2季度值最低。同时也存在一些下降的趋势。 通过引进虚拟变量,建立多元线性回归模型。答: 通过引入虚拟变量,我们可以建立如下的…

ViLT 浅析

ViLT 浅析 论文链接:ViLT 文章目录 ViLT 浅析创新点网络结构总结 创新点 本文先分析了4种不同类型的Vision-and-Language Pretraining(VLP) 其中每个矩形的高表示相对计算量大小,VE、TE和MI分别是visual embedding、text embedding和modality interact…

OSTE-Web-Log-Analyzer:基于Python的Web服务器日志自动化分析工具

关于OSTE-Web-Log-Analyzer OSTE-Web-Log-Analyzer是一款功能强大的Web服务器日志自动化分析工具,该工具专为安全研究人员设计,能够使用Python Web日志分析工具(Python Web Log Analyzer)帮助广大研究人员以自动化的形式实现Web服…

【计算机毕业设计】基于微信小程序校友会系统的实现

由于APP软件在开发以及运营上面所需成本较高,而用户手机需要安装各种APP软件,因此占用用户过多的手机存储空间,导致用户手机运行缓慢,体验度比较差,进而导致用户会卸载非必要的APP,倒逼 管理者必须改变运营…

MySQL数据库基础(数据库操作,常用数据类型,表的操作)

MySQL数据库基础(数据库操作,常用数据类型,表的操作) 前言 数据库的操作1.显示当前数据库2.创建数据库3.使用数据库4.删除数据库 常用数据类型1.数值类型2.字符串类型3.日期类型 表的操作1.查看表结构2.创建表3.删除表 总结 前言 …

易图讯三维电子沙盘-大数据处理服务

易图讯科技10名高级大数据工程师,高效、快速进行POI、DEM、高清卫星影像、地形地貌、路网、矢量地图等海量大数据处理服务。 免费专业提供POI、AOI、DEM、高清卫星影像、地形地貌、路网、矢量地图等海量大数据处理服务。 1年更新2次POI、高清卫星影像。

04、SpringBoot 源码分析 - SpringApplication启动流程四

SpringBoot 源码分析 - SpringApplication启动流程四 初始化基本流程SimpleApplicationEventMulticaster的multicastEvent广播事件resolveDefaultEventType获取ResolvableType实例ResolvableType的forInstance创建ResolvableType实例 开始广播AbstractApplicationEventMulticas…

如何在bud里弄3d模型?---模大狮模型网

随着数字化设计的不断发展,越来越多的设计软件提供了对3D模型的支持,为设计师们带来了更广阔的创作空间。Bud作为一款功能强大的设计工具,也提供了添加和编辑3D模型的功能,让用户能够更加灵活地进行设计创作。本文将为您详细介绍如…