java soa是什么_什么是SOA呢

java soa是什么_什么是SOA呢关于SOA(Service-OrientedArchitecture),最近多次听到这概念,有点懵,网上找了些资料,一起来看看。SOA的概念SOA是由Garnter1996年提出的概念(架构如图1所示),将应用程序的不同功能单元(称为服务)进行拆分,并通过这些服务之间定义良好的接口和协议联系起来。接口是采用中立的方式进行定义的,目的是为了让软件变的有弹性,能够快速响应业务的需求,使开发人员以最…

大家好,又见面了,我是你们的朋友全栈君。

关于SOA (Service-Oriented Architecture),最近多次听到这概念,有点懵,网上找了些资料,一起来看看。

SOA的概念

SOA是由Garnter1996年提出的概念(架构如图1所示),将应用程序的不同功能单元(称为服务)进行拆分,并通过这些服务之间定义良好的接口和协议联系起来。接口是采用中立的方式进行定义的,目的是为了让软件变的有弹性,能够快速响应业务的需求,使开发人员以最小的软件变更应对迭代多变的需求。3c50fa92364bedc86b4dd3cc6020eab1.png图1 SOA架构

SOA的核心要素

SOA的目标是实现灵活可变的软件系统,其核心要素为标准化封装、软件复用、松耦合等。

标准化封装

传统架构的软件互操作方面,中间件只是实现了访问互操作,即通过标准化API实现对同类系统的调用互操作,而连接互操作还是依赖于特定的访问协议,如JAVA使用的RMI。而SOA通过标准的、支持Internet、与操作系统无关的SOAP协议实现了连接互操作。而且服务的封装是采用XML协议,具有自解析和自定义的特性,因此基于SOA的中间件还可以实现语义互操作。

软件复用

软件复用指的是同一软件不做修改或者稍作修改就可重复使用,类似于将软件做成标准件。从软件发展的来看,就是不断提高其抽象等级,提高复用等级。5aa332b928cd93b98dbf3a4b995012f5.png

传统架构的核心是组件对象的管理,由于构件实现和运行支撑技术之间存在着较大的异构性,不同技术设计和实现的构件之间无法直接组装式复用。

而SOA的重要特征就是以服务为核心。通过服务,或服务组件来实现更高层次的复用、解耦和互操作,即SOA架构中间件。因为服务是通过标准封装,服务组件之间的组装、编排和重组,来实现服务的复用。而且这种复用,可以在不同企业之间,全球复用,达到复用的最高级别,并且是动态可配置的复用。

松耦合

传统软件将软件核心三部分网络连接、数据转换、业务逻辑全部耦合在一起,导致软件升级或修改“牵一发而动全身”,难以快速适应变化,而SOA架构,通过服务的封装,实现了业务逻辑与网络连接、数据转换等进行完全的解耦。

为什么需要SOA

SOA本质是由业务需求、技术更新推动,业务需求的拉动,希望快速解决业务应用的问题;技术发展的推动,使得SOA具备了技术上的可行性,软件技术的发展推动了IT创新的商业价值。

对于汽车行业而言,由于智能网联汽车的发展,需要大量的控制器协调工作来实现,当前ECU是基于信号的点对点通信,微小的交互变更带来多节点的软件变动,不具备灵活性和扩展性,

参考:1、http://blog.vsharing.com/fengjicheng/A1059842.html

2、联电公众号内容。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/147984.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 设计模式—工厂方法

    设计模式—工厂方法

    2022年1月18日
    53
  • CreateEvent方法详解

    CreateEvent方法详解HANDLECreateEvent(  LPSECURITY_ATTRIBUTESlpEventAttributes,//安全属性  BOOLbManualReset,//复位方式  BOOLbInitialState,//初始状态  LPCTSTRlpName//对象名称);调用示例:hEvent=CreateEvent(NULL,TRUE,…

    2022年7月12日
    24
  • scratch编程小游戏——黄金矿工

    黄金矿工的玩法就是操控一个不断摆来摆去的钩子去挖出黄金,现在我们就来用scratch编一个黄金矿工首先新建好变量:矿车要画出许多的造型:代码:钩爪的绳索是这个游戏最为复制的一点,方法是移动后画出一条线,返回时用背景一样的颜色来覆盖,我们首先来画出造型:红色的是中心位置代码如下:(此代码需要用到一部分自定义,不懂的见文章末尾链接)自定义部分是这个代码的核心:接下来是黄金,造型的话要画出三个:大、中、小各一个代码如下:黄金代码是程序中非常重要的一环,一定不要有差错现

    2022年4月4日
    2.3K
  • C# CultureInfo列表详细说明

    C# CultureInfo列表详细说明””(空字符串)固定区域性 af 南非荷兰语 af-ZA 南非荷兰语(南非) sq 阿尔巴尼亚语 sq-AL 阿尔巴尼亚语(阿尔巴尼亚) ar 阿拉伯语 ar-DZ 阿拉伯语(阿尔及利亚) ar-BH 阿拉伯语(巴林) ar-EG 阿拉伯语(埃及) ar-IQ 阿拉伯语(伊拉克) 

    2022年6月19日
    25
  • 不堪入目!某酒店社交App充斥大量涉黄信息

    点击上方“全栈程序员社区”,星标公众号重磅干货,第一时间送达          正文    近年来网…

    2021年6月28日
    121
  • JVM常见面试题及详解

    JVM常见面试题及详解虚拟机是一种抽象化的计算机,通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机有自己完善的硬体架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。Java虚拟机屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。简单来说JVM是用来解析和运行Java程序的。

    2022年8月29日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号