【架构-11】SOA和微服务?

什么是SOA?

SOA是面向服务的架构,是一种软件架构模式,旨在通过将应用程序拆分成可重用的服务来提高应用程序的灵活性、可维护性和可扩展性。它将应用程序的不同功能单元(称为服务)通过这些服务之间良好的接口联系起来。

什么是ESB?

SOA中心化的实现方式就是ESB,企业服务总线,像是一根管线,用于连接各个节点。为了集成不同系统,不同协议的服务,ESB做了消息的转换解释和路由等工作,让不同的服务互联。

特点:(1)SOA的实现方式,总线作用,服务连接和整合(2)服务注册管理(3)发现、路由和转换解释(4)传递数据、数据转换、同步、异步

什么是微服务架构?

微服务架构将软件应用程序分成一系列小型的、松耦合的服务模块,每个服务都专注于执行特定的业务功能,通过轻量级的通信机制相互通信,从而形成一个完整的应用系统。每个子系统都是独立的且完整的。
优点 :(1)模块化,松耦合,功能模块间影响少(2)可扩展性、可维护性强(3)技术栈多样性(4)独立部署和伸缩性(5)容错
缺点:(1)服务间的通信开销(2)分布式系统的复杂性(3)数据管理的一致性问题

SOA与微服务的区别

(1)微服务比SOA更加精细,微服务以更多的独立进程的方式存在,互相之间并无影响,而SOA的目标是确保应用能够交互操作。

(2)微服务的接口方式更加通用化,例如Http Restful方式,任何终端可调用,无关平台与语言限制

(3)微服务更倾向于去中心化的部署方式,在互联网业务场景下更适合。

(4)组件大小:SOA是大块业务逻辑,微服务是单独任务或小块业务逻辑。

(5)SOA着重中央管理,微服务着重分散管理。

相关推荐
分布式存储与RustFS4 分钟前
AI 数据湖最佳实践:RustFS 支撑大模型训练的存储架构与性能优化
人工智能·性能优化·架构·对象存储·minio·企业存储·rustfs
2301_7717172110 分钟前
登录生成 Token + 网关解析 Token + 微服务透传 userId
微服务·云原生·架构
2301_8227032016 分钟前
生命科学大分子资产模拟交易系统:基于鸿蒙Flutter跨端架构的高频订单簿与K线图渲染引擎
flutter·华为·架构·开源·harmonyos·鸿蒙
fire-flyer17 分钟前
ClickHouse系列(五):ClickHouse 写入链路全解析(Insert 到 Merge)
大数据·clickhouse·架构
恼书:-(空寄19 分钟前
K8s 网关(Ingress-Nginx/Envoy/云原生网关)20 个高频故障速查手册
云原生·k8s·ingress
大数据新鸟35 分钟前
微服务之Spring Cloud OpenFeign
spring cloud·微服务·架构
大数据新鸟43 分钟前
微服务之Spring Cloud LoadBalancer
java·spring cloud·微服务
heimeiyingwang1 小时前
【架构实战】时序数据库选型:InfluxDB vs TDengine
架构·时序数据库·tdengine
lishutong10061 小时前
Android 性能诊断 V2:基于 Agent Skill 的原生 IDE 融合架构
android·ide·架构
wok1571 小时前
WebMVC 和 WebFlux 架构选型
java·spring·架构·mvc