Spring Cloud之Sentinel框架

本文详细介绍了Sentinel作为Spring Cloud Alibaba的组件,用于保障服务稳定性。内容涵盖Sentinel的基本概念、应用场景、实时状态监控、与Spring Cloud的整合,以及Sentinel的限流、降级配置和自定义处理方法的实战演示。
摘要由CSDN通过智能技术生成


前言

提示:这里可以添加本文要记录的大概内容:

前面介绍了Spring Cloud框架集中的Dubbo和Seata框架,本文将介绍通过Sentinel框架保障服务器运行的稳定性。


提示:以下是本篇文章正文内容,下面案例可供参考

一、什么是Sentinel

官网地址

https://sentinelguard.io/zh-cn/

下载地址

https://github.com/alibaba/Sentinel/releases

Sentinel也是Spring Cloud Alibaba的组件

Sentinel英文翻译"哨兵\门卫"

随着微服务的流行,服务和服务之间的稳定性变得越来越重要。Sentinel 以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。

二、为什么需要Sentinel

为了保证服务器运行的稳定性,在请求数到达设计最高值时,将过剩的请求限流,保证在设计的请求数内的请求能够稳定完成处理

  • 丰富的应用场景

    双11,秒杀,12306抢火车票

  • 完备的实时状态监控

    可以支持显示当前项目各个服务的运行和压力状态,分析出每台服务器处理的秒级别的数据

  • 广泛的开源生态

    很多技术可以和Sentinel进行整合,SpringCloud,Dubbo,而且依赖少配置简单

  • 完善的SPI扩展

    Sentinel支持程序设置各种自定义的规则

三、Sentinel基本配置

我们的限流针对的是控制器方法

我们找一个简单的模块来测试和观察限流效果

在csmall-stock-webapi模块中

添加sentinel的依赖

<!--    Sentinel 依赖    -->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
</dependency>

application-dev.yml文件添加配置

cloud:
  #和Nacos同级
  sentinel:
    transport:
      dashboard: localhost:8080 # 配置sentinel仪表台的位置
      # 执行限流的端口号,每个项目唯一(别的项目例如cart模块,再设置的话就不能用8721了)
      port: 8721
  nacos:
    discovery
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值