大家好,我是升仔
-
引言
在微服务架构中,服务之间的依赖错综复杂。一旦某个服务出现问题,很容易引发连锁反应,导致整个系统瘫痪。Sentinel 就是为了解决这类问题而生的。它通过流量控制、熔断降级等机制,保护服务不被过多流量压垮,同时也确保系统的稳定运行。
实战场景
假设我们有一个商品服务(Product Service)和订单服务(Order Service),订单服务在下单时需要调用商品服务获取商品信息。我们将在商品服务中集成 Sentinel 来实现流量控制。
环境准备
- JDK 1.8 或更高版本
- Maven 3.6 或更高版本
- Spring Boot 2.3.0.RELEASE
- Spring Cloud Hoxton.SR6
- Spring Cloud Alibaba 2.2.1.RELEASE
项目创建
- 创建一个 Spring Boot 项目,添加
spring-cloud-starter-alibaba-sentinel
依赖。 - 配置文件
application.yml
中添加 Sentinel 的配置。
spring: cloud: sentinel: transport: dashboard: localhost:8080 # Sentinel 控制台地址
商品服务(Produ