解决方法
1、在pom.xml中增加sentinel-web-servlet的依赖,我使用的版本是1.7.1
<dependency><groupId>com.alibaba.csp</groupId><artifactId>sentinel-web-servlet</artifactId>
</dependency>
2、在项目中添加一个FilterContextConfig配置类,自己构建CommonFilter实例
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 {@Beanpublic 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