Sentinel链路流控模式失效的解决方法

解决方法

1、在pom.xml 中增加sentinel-web-servlet的依赖,我使用的版本是1.7.1

XML 复制代码
<dependency>
	<groupId>com.alibaba.csp</groupId>
	<artifactId>sentinel-web-servlet</artifactId>
</dependency>

2、在项目中添加一个FilterContextConfig配置类,自己构建CommonFilter实例

java 复制代码
import com.alibaba.csp.sentinel.adapter.servlet.CommonFilter;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class FilterContextConfig {
    @Bean
    public FilterRegistrationBean sentinelFilterRegistration() {
        FilterRegistrationBean registration = new FilterRegistrationBean();
        registration.setFilter(new CommonFilter());
        registration.addUrlPatterns("/*");
        // 入口资源关闭聚合
        registration.addInitParameter(CommonFilter.WEB_CONTEXT_UNIFY, "false");
        registration.setName("sentinelFilter");
        registration.setOrder(1);
        return registration;
    }
}

3、重新配置链路流控规则,如下图:

刷新 /sayHello2多次,可以看到限流成功了,如下图 :

后台console报com.alibaba.csp.sentinel.slots.block.flow.FlowException: null

相关推荐
pengyu几秒前
【Java设计原则与模式之系统化精讲:壹】 | 编程世界的道与术(实战指导篇)
java·后端·设计模式
日月星辰Ace3 分钟前
JVM 垃圾回收简介
java
掉头发的王富贵6 分钟前
Arthas神器入门:动态调试Java应用,轻松搞定生产环境Bug!
java·后端·debug
Java陈序员11 分钟前
再见 Navicat!一款开源的 Web 数据库管理工具!
java·react.js·docker
知其然亦知其所以然27 分钟前
RAG 结果太水?用 RRF + Reranker 重排,效果翻倍提升!
java·后端·llm
SimonKing29 分钟前
吊打面试官系列:Spring为什么不推荐使用字段依赖注入?
java·后端·架构
魔镜魔镜_谁是世界上最漂亮的小仙女36 分钟前
java-集合
java·后端·程序员
真实的菜38 分钟前
消息队列高级特性与原理:解锁分布式系统的底层逻辑
java
若水不如远方39 分钟前
java范型
java
凌辰揽月41 分钟前
Web后端基础(基础知识)
java·开发语言·前端·数据库·学习·算法