‹ 返回笔记 Esc·

Spring Cloud 问题与修复

Spring Cloud 原生与阿里对比 Native (~~Eureka~~) Consul 服务注册 (~~Hystrix~~) Resilience4j 服务熔断和降级 (~~Ribbon~~)…

Spring Cloud 原生与阿里对比

技术功能 Spring Cloud Spring Cloud Alibaba
服务注册与发现 Eureka / Consul Nacos
配置管理 Spring Cloud Config / Consul Nacos
熔断、限流、降级、流量控制 Hystrix / Resilience4j Sentinel
消息队列 RabbitMQ / Kafka RocketMQ
分布式事务 Atomikos / Narayana Seata
负载均衡 Ribbon
OpenFeign / LoadBalancer
Nacos / LoadBalancer
分布式链路追踪 Sleuth /
Micrometer Tracing & Zipkin(可视化)
SkyWalking
API 网关 Zuul / Spring Cloud Gateway Spring Cloud Gateway

Native

(Eureka) Consul 服务注册

(Hystrix) Resilience4j 服务熔断和降级

(Ribbon) OpenFeign 服务调用 LoadBalancer 客户端负载均衡调用

(Sleuth) Micrometer Tracing 分布式链路追踪

ZipKin 调用链分析可视化界面(需要安装)

(Zuul) Gateway 服务网关

1- Route 路由 - 以微服务名称动态获取服务 URI
2- Predicate 断言
3    * After 在什么之前访问
4    * Before 在什么之后访问
5    * Cookie 带 Cookie 才能访问
6- Filter 过滤 - 修改或删除请求头、请求路径等

Alibaba

Nacos 服务注册和配置

1- 配置规则
2    * DataID
3    * Group
4    * Namespace

Sentinel 服务熔断和降级

1- 可以整合 OpenFeign 服务降级
2- 可以整合 GateWay 服务限流
3- `@SentinelResource` 流量防卫防护注解
4    * 属性 - [ value、blockHandler、fallback]
5- 流控
6    * 模式 - [ 直接、关联、链路 ]
7    * 效果 - [ 快速失败、(预热) Warm Up、排队等待 ]
8    * 阈值类型 - [ QPS、并发线程数 ]
9- 熔断 - 达成目标暂时中断请求
10    * 策略 - [ 慢调用比例、异常比例、异常数 ]
11- 热点 - 对传入的热点参数进行限制
12- 授权
13    * 类型 - [ 白名单、黑名单 ]
14- 持久化 - 使用 Nacos 来配置
1sentinel:
2  datasource:
3    ds1:
4      nacos:
5        server-addr: 127.0.0.1:8848
6        dataId: sentinel-gateway
7        groupId: DEFAULT_GROUP
8        data-type: json
9        rule-type: flow

Seata 分布式事务管理 - 多个业务执行数据库修改,如有报错则全部回退

1- 数据库建表(xid)
2- @GlobalTransactional

SkyWalking 分布式系统观测和性能监控平台

1- 分布式追踪
2- 性能监控

Dubbo RPC 框架

Arthas (Java 诊断工具)

1- 热更新方法
2- 跟踪方法调用

RocketMQ (分布式消息队列)


微服务引擎 MSE 面向主流微服务场景提供:注册配置和分布式协调(Nacos/ZooKeeper/Eureka)、云原生网关(Higress/Nginx/Envoy)、服务治理(Spring Cloud/Dubbo/Sentinel)以及任务调度(XXL-JOB/ElasticJob/K8s Job/Spring @Scheduled)等产品和能力。

https://help.aliyun.com/zh/mse/product-overview/what-is-mse/?spm=5176.14952521.J_5253785160.5.7b5623bc0UKdub