欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

解決Sentinel鏈路模式規(guī)則無效問題

 更新時間:2025年01月02日 10:09:34   作者:后會無期77  
本文介紹了如何在Spring Cloud Alibaba項目中使用Sentinel鏈路流控規(guī)則,并解決規(guī)則不生效的問題,通過關(guān)閉Sentinel過濾器,可以避免重復(fù)統(tǒng)計請求

前言

如何使用Sentinel鏈路流控規(guī)則?

如何解決鏈路模式規(guī)則不生效?

解決方案

當(dāng)前項目的版本信息

  • SpringBoot 版本2.3.2.RELEASE
  • spring-cloud版本Hoxton.SR8
  • spring-cloud-alibaba版本2.2.5.RELEASE

1.引入依賴

<dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
        </dependency>

        <dependency>
            <groupId>com.alibaba.csp</groupId>
            <artifactId>sentinel-web-servlet</artifactId>
        </dependency>

2.關(guān)閉sentinel的過濾器

(如果不設(shè)置或者不關(guān)閉,會出現(xiàn)重復(fù)統(tǒng)計問題)

spring:
  cloud:
    sentinel:
      filter:
        enabled: false

3.添加上下文過濾器

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 registrationBean = new FilterRegistrationBean();
        registrationBean.setFilter(new CommonFilter());
        registrationBean.addUrlPatterns("/*");
        registrationBean.addInitParameter(CommonFilter.WEB_CONTEXT_UNIFY, "false");
        registrationBean.setName("sentinelFilter");
        registrationBean.setOrder(1);
        return registrationBean;
    }
}

4.編寫測試代碼

5.啟動服務(wù)器

請求一下上面編輯的兩個接口,查看sentinel-dashboard控制臺,顯示出兩條鏈路

6.編寫鏈路規(guī)則,并保存

下圖表示鏈路/hello1對findById這個資源的訪問為每秒1次。

7.請求/hello1這個接口

頻繁刷新,會出現(xiàn)失敗。而頻繁請求/hello2這條鏈路則不會失敗。

問題

如果不關(guān)閉sentinel過濾器會發(fā)生什么?

發(fā)送一次請求,sentinel就會統(tǒng)計兩次請求。

所以請注意關(guān)閉sentinel過濾器

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論