SpringCloud微服务Gateway网关简单集成Sentinel

Sentinel是阿里巴巴开源的一款面向分布式服务架构的轻量级流量控制、熔断降级组件。Sentinel以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度来帮助保护服务的稳定性。

官方文档:https://sentinelguard.io/zh-cn/docs/introduction.html

主要作用

  1. 实时监控:Sentinel可以实时监控分布式系统的运行情况,包括系统的负载、吞吐量、延迟等关键指标,实时了解系统的运行状态。
  2. 流量控制:Sentinel可以控制每个服务或接口的并发请求数量,避免因为并发请求过多导致服务崩溃。它可以根据预设的规则对系统的流量进行控制,当系统的流量超出设定的阈值时,可以进行限流操作,保护系统不被过载压垮。
  3. 降级处理:当系统出现异常或者负载过高时,Sentinel可以根据预设的降级策略,自动对部分功能进行降级处理,保证系统的核心功能正常运行。这通常涉及对非核心服务进行限流或快速返回处理,以释放资源保证核心任务的正常运行。
  4. 熔断机制:通过熔断机制,Sentinel可以在系统出现故障或异常时,暂时关闭故障的服务,避免故障的扩散,保证系统的稳定性。这类似于电路中的保险丝,当电流过大时自动熔断以保护电路。
  5. 实时报警:Sentinel可以根据预设的规则,对系统的异常情况进行实时报警,及时通知相关人员进行处理,避免问题扩大化。

下载Sentinel (下载前看一下对应版本号)

下载链接:https://github.com/alibaba/Sentinel/releases

下载好之后运行登录:(最好不要用默认端口):启动命令

java -Dserver.port=8077 -jar sentinel-dashboard-1.8.6.jar

访问:
在gateway网关服务中引入依赖并添加配置:

随便请求一个controller就可以看到管理的服务了

我们可以在这里做一些操作控制。可以通过服务id或者api分组进行规则设置,这里是设置限流规则。

测试的话我们可以使用jmeter
下载地址:https://jmeter.apache.org/download_jmeter.cgi

相关推荐
蝎子莱莱爱打怪3 天前
XZLL-IM干货系列 04|Netty 长连接实战:Pipeline 怎么排、心跳怎么跳、连接怎么管
后端·微服务·面试
SamDeepThinking4 天前
Java微服务练习方式
java·后端·微服务
米丘7 天前
微前端之 Web Components 完全指南
微服务·html
霸道流氓气质10 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
慧一居士10 天前
Feign的GET请求如何传递对象参数?
java·spring cloud
我登哥MVP10 天前
SpringCloud Alibaba 核心组件解析:服务链路追踪
java·spring boot·后端·spring·spring cloud·java-ee·maven
慧一居士10 天前
SpringCloud 微服务Feigin 用的完整调用端和被调用的示例
java·spring cloud
霸道流氓气质10 天前
Spring Boot 微服务性能优化完全指南
spring boot·微服务·性能优化
地瓜伯伯10 天前
从MESI缓存一致性协议讲透synchronized的底层
java·spring boot·spring·spring cloud·微服务·springcloud
Devin~Y10 天前
大厂 Java 面试实录:从音视频内容社区到 AI RAG 的全链路技术设计
java·spring boot·redis·spring cloud·微服务·kafka·音视频