微服务基础设施怎么建设,如何选择微服务框架

微服务基础设施架构全貌

微服务 vs SOA

微服务基础设施优先级

微服务框架核心

模式1-嵌入式SDK式

【优点】

  1. 架构简单,天然支持高性能、高可用;

  2. 维护简单,无需维护独立的 Proxy 节点。

【缺点】

  1. 应用侵入,需要集成 SDK,并联动升级;

  2. 多语言重复开发 SDK

模式2-反向代理式

【优点】

  1. 应用无侵入;

  2. 天然支持多语言。

【缺点】

  1. Service Proxy 需要通过集群来做高性能、高可用;

  2. 维护复杂,需要维护 Service Proxy 集群。

模式3 - 网络代理式(Service Mesh)

【优点】

  1. 应用无侵入;

  2. 天然支持多语言;

  3. 天然支持架构高性能、高可用。

【缺点】

  1. 维护复杂,需要维护每台服务器上的 Service Proxy;

  2. 单台服务器的 Service Proxy 是单点;

  3. 全链路请求性能会下降。

微服务框架模式对比

|------|---------------|-------------------|-------------------------|
| | 嵌入SDK | 反向代理 | 网络代理 |
| 多语言 | 每个语言都需要开发SDK | 天然支持多语言 | 天然支持多语言 |
| 应用侵入 | 需要集成SDK | 无 | 无 |
| 可维护性 | 无需额外维护工作 | 维护Proxy服务器集群 | 维护每台机器上的Proxy节点,数量非常多。 |
| 高性能 | 天然支持 | 需要通过Proxy集群来实现 | 整体架构是高性能的,但全链路请求性能会下降 |
| 高可用 | 天然支持 | 需要通过Proxy集群来实现 | 整体架构高可用,单台服务器上的proxy是单点 |
| 适应场景 | 团队技术栈统一为单个单语言 | 团队技术栈多语言,服务集群规模不大 | 团队技术栈多语言,服务集群规模超级大 |

常见的微服务框架

嵌入式 SDK 样例 - Dubbo

Apache Dubbo 是一款高性能、轻量级的开源 Java 服务框架,提供了六大核心能力:

  1. 面向接口代理的高性能 RPC 调用;

  2. 智能容错和负载均衡;

  3. 服务自动注册和发现;

  4. 高度可扩展能力;

  5. 运行期流量调度;

  6. 可视化的服务治理与运维。

嵌入式 SDK 样例 - Spring Cloud

反向代理式案例 - APISIX

Service Mesh 案例 - Istio

如何选择开源微服务框架

相关推荐
郑州光合科技余经理9 分钟前
家政O2O平台解析:从0搭建上门预约小程序解决方案
android·java·开发语言·前端·小程序·架构·php
李福春35 分钟前
SpecCoding + Harness:把 Vibe Coding 从「灵感」钉成「可交付」
架构
野蛮人6号38 分钟前
黑马天机学堂系列问题之域名无法正常使用
java·spring cloud·天机学堂
kisshyshy39 分钟前
《川剧变脸 × React 状态管理?我在浏览器里跑了个端侧大模型》
前端·react.js·架构
学计算机的计算基40 分钟前
回溯算法下篇:四道经典题讲透约束剪枝、原地标记、预计算与状态压缩
java·笔记·算法
小小猪的春天1 小时前
AI Code Review 例外决策框架:手动忽略警告之前,先回答4个问题
后端·架构
码云骑士1 小时前
71-Agent记忆系统-短期记忆-长期记忆-向量知识库三层架构
python·架构
后端优选官1 小时前
上海Agent开发公司:企业级智能体软件的技术架构与落地评估
数据库·人工智能·架构·软件开发·开发经验·上海
极光技术熊1 小时前
AI应用开发中的流式输出:从协议原理到工程实战的完整指南
后端·架构
小帽子_1231 小时前
PCS 电池双向充放电控制策略与均衡配合方案
架构