什么是SOA架构?

什么是SOA架构?一.SOA的概念1.1.SOA(Service-OrientedArchitecture)面向服务的架构:Gartnet把它定义为一种软件的设计方法 百度百科把它定义为一个组件模型 W3C把它定义为一种应用程序架构(https://www.w3school.com.cn/w3c/w3c_china.asp) 专家Davis说它是一种设计思想 总之,SOA不是具体的技术实现SOA的实现SOA实现层面包含两个最重要的概念:面向服务的通信(SOCService-Oriented…

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

一. SOA的概念

1.1. SOAService-Oriented Architecture)面向服务的架构:

  • Gartnet把它定义为一种软件的设计方法
  • 百度百科把它定义为一个组件模型
  • W3C把它定义为一种应用程序架构(https://www.w3school.com.cn/w3c/w3c_china.asp)
  • 专家Davis说它是一种设计思想
  • 总之,SOA不是具体的技术实现

SOA的实现

SOA实现层面包含两个最重要的概念:

  • 面向服务的通信SOC Service-Oriented Communicaiton)
  • 面向服务的软件架构SOSA Service-Oriented Software Architecture)

服务(Service)是实现某种功能的函数或方法,离散的功能单元,可以被远程访问并且能够独立运行和更新。

SOC的简介

SOCService-Oriented Communicaiton)面向服务的通信:

  • 谁和谁进行通信:服务提供者和服务接受者,即:服务端和客户端
  • 怎么通信:服务端实现服务接口并提供服务功能,客户端使用服务接口并调研服务功能
  • 服务太多怎么处理:服务端在服务代理里面进行注册,声明它能够提供哪些服务;客户端在需要服务的时候进行查找,找到后进行调用

什么是SOA架构?

SOC的实现方式

  1. SOME/IP(Service-Oriented MiddlewarE Over IP) 面向服务的IP中间件
  2. DDS(Data Distribution Service)数据分发服务
  3. RESTful(Representational State Transfer)

SOSA的实现方式

  1. AUTOSAR Adaptive Platform

为什么用SOA架构?

SOAService-Oriented Architecture)的特点:

  • 易于扩展
  • 灵活的平台
  • 服务通信标准化
  • 服务间:松耦合,无状态,无依赖
  • 服务内:高内聚,完整,可复用,可灵活重组

通过对比传统静态交互和SOA动态交互,可以看出SOA架构的优势:

  1. 传统静态交互及其缺陷

    域控制器之间通过静态配置进行交互:

    • 实线箭头 表示 信号流
    • 虚线箭头 表示 新增/变更的信号
    • 紫色框 表示 新增/变更的功能
    • 黑色框 表示 新增/变更的控制 

 

 

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

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/148646.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 实例分割论文_图像实例分割

    实例分割论文_图像实例分割作者丨youtober@知乎(已授权)来源丨https://zhuanlan.zhihu.com/p/412675982编辑丨极市平台导读本文综述基于实例分割的最新进展和发展历程,首先介…

  • JvisualVM_jvm详解

    JvisualVM_jvm详解VisualVM是Netbeans的profile子项目,已在JDK6.0update7中自带,能够监控线程,内存情况,查看方法的CPU时间和内存中的对象,已被GC的对象,反向查看分配的堆栈(如100个String对象分别由哪几个对象分配出来的)。在JDK_HOME/bin(默认是C:\ProgramFiles\Java\jdk1.6.0_13\bin)目录下面,有一个jvisualv…

    2022年10月26日
  • rsync服务的三种模式测试[通俗易懂]

    rsync服务的三种模式测试[通俗易懂]目录1什么是rsync1.1rsync简介rsync特性1.3rsync的企业工作场景说明2rsync三种模式:2.1rsync常用参数选项2.2rsync本地模式2.3rsyncshell模式2.4rsyncdaemon模式3rsync服务故障模拟4rsync多模块实战5rsync排除及无差异同步实战6rsync优缺点6….

    2022年10月13日
  • SQL实例整理

    SQL实例整理

    2020年11月12日
  • Linux主机文件777,755,644权限详解[通俗易懂]

    Linux主机文件777,755,644权限详解[通俗易懂]Linux主机的文件读写执行权限设置。一般的网站用的到也就是777、755、644这三种权限。其中每个权限都有三位数字组成,第一位表示所有者的权限,第二位表示同组用户权限,第三位表示公共用户权限,r代表读取权限等于4,w代表写入权限等于2,x代表执行权限等于1。  777的权限就是:rwxrwxrwx 。第一位7等于4+2+1,所以就是rwx,所有者有读取、

  • ViewPager基本用法

    ViewPager基本用法step1:在layout中定义一个ViewPager组件。step2:在Activity中获取ViewPager的引用。step3:为ViewPager设置适配器,step4:为ViewPa

发表回复

您的电子邮箱地址不会被公开。

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