102、SOA、分布式、微服务之间有什么关系和区别?

SOA、分布式、微服务之间有什么关系和区别?

  • 分布式架构是指将单体架构中的各个部分拆分,然后部署到不同的机器或进程中去,SOA和微服务基本上都是分布式架构师
  • SOA是一种面向服务的架构,系统的所有服务都注册在总线上,当调用服务时,从总线上查找服务信息,然后调用
  • 微服务是一种更彻底的面向服务的架构,将系统中各个功能个体抽成一个个小的应用程序,基本保持一个应用对应的一个服务的架构

额外补充

  • 在单体架构中所有的子模块都在统一进程里,不存在进程之间的调用,当一个模块想要调用另一个模块时直接注入实例,调用实例即可。
  • 微服务------将一个系统拆分成若干个独立的模块,运行于独立的进程中。每一个子模块也被叫做一个"微服务",并且每个服务都有属于自己的数据库,极大降低了事故发生的概率
  • 但对于微服务而言,模块间的调用跨越了进程。要想得到目标的实例可不能直接进行注入,于是就需要将一个个子模块,也就是微服务注册到Nacos(注册&配置中心)并进行相关配置,通过Feign实现服务间的远程调用,并使用Gataway做权限认证。为了保证微服务模块间消息的高可用与服务响应的速度则是使用到了异步通信工具MQ,这些治理的组件得到了Spring的整合,因此SpringCloud通常被拿来用作服务治理的方案。
相关推荐
IT大白鼠1 分钟前
MySQL 分布式集群系列 · 第二篇:架构深度拆解--NDB 三大核心节点
分布式·mysql·架构
大牧师4 分钟前
Nest.js 微服务入门教程
开发语言·javascript·后端·微服务·node.js·nest.js·nest
海宇AI6 分钟前
零信任架构实战:基于海宇运营商近3个月平均账单构建自动化P2P信审网关
人工智能·架构·自动化·p2p
醉颜凉9 分钟前
Kafka ISR与AR深度解析:副本同步机制核心概念
分布式·架构·kafka·ar
nxb55610 分钟前
云原生:kubernetes的service
微服务·云原生·容器·kubernetes
陈皮糖..15 分钟前
基于 Kubernetes 与 GitLab CI/CD 的云原生自动化交付平台
运维·ci/cd·云原生·架构·kubernetes·自动化·gitlab
greatofdream28 分钟前
TorchInductor 完整原理与架构教程
架构
步行cgn42 分钟前
Spring Environment 详解:Spring Boot 配置管理的核心接口
spring boot·python·spring
MindUp42 分钟前
AI算命背后的技术逻辑:从Prompt设计到排盘引擎的三款产品实测对比
人工智能·架构
Wang's Blog42 分钟前
Java框架快速入门: Spring Security+OAuth2之工程结构与开发环境配置
java·spring·状态模式