SpringCloud_11Sentinel实现熔断与限流学习笔记

笔记地址
SpringCloud_11Sentinel实现熔断与限流学习笔记_第1张图片

1.Sentinel是什么

SpringCloud_11Sentinel实现熔断与限流学习笔记_第2张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第3张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第4张图片

2.Sentinel下载安装运行

SpringCloud_11Sentinel实现熔断与限流学习笔记_第5张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第6张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第7张图片
在这里插入图片描述

3.Sentinel初始化监控

SpringCloud_11Sentinel实现熔断与限流学习笔记_第8张图片
在这里插入图片描述
SpringCloud_11Sentinel实现熔断与限流学习笔记_第9张图片

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <parent>
        <artifactId>springcloud2020</artifactId>
        <groupId>com.atguigu.springcolud</groupId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>cloudalibaba-sentinel-service8401</artifactId>

    <dependencies>
        <!--SpringCloud ailibaba nacos -->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
        <!--SpringCloud ailibaba sentinel-datasource-nacos 后续做持久化用到 -->
        <dependency>
            <groupId>com.alibaba.csp</groupId>
            <artifactId>sentinel-datasource-nacos</artifactId>
        </dependency>
        <!--SpringCloud  alibaba  sentinel-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-openfeign</artifactId>
        </dependency>
        <!-- SpringBoot整合Web组件 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <!--日常通用jar包配置-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
</project>

换网ip变了
SpringCloud_11Sentinel实现熔断与限流学习笔记_第10张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第11张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第12张图片
在这里插入图片描述
SpringCloud_11Sentinel实现熔断与限流学习笔记_第13张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第14张图片

4.流控规则

SpringCloud_11Sentinel实现熔断与限流学习笔记_第15张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第16张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第17张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第18张图片
直接
SpringCloud_11Sentinel实现熔断与限流学习笔记_第19张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第20张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第21张图片
快速点击,超峰值
SpringCloud_11Sentinel实现熔断与限流学习笔记_第22张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第23张图片
多次点击,无反应
SpringCloud_11Sentinel实现熔断与限流学习笔记_第24张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第25张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第26张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第27张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第28张图片
关联
SpringCloud_11Sentinel实现熔断与限流学习笔记_第29张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第30张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第31张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第32张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第33张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第34张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第35张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第36张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第37张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第38张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第39张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第40张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第41张图片
等线程结束后恢复正常
SpringCloud_11Sentinel实现熔断与限流学习笔记_第42张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第43张图片
预热
SpringCloud_11Sentinel实现熔断与限流学习笔记_第44张图片
5秒钟时间预热,从10/3达到10
SpringCloud_11Sentinel实现熔断与限流学习笔记_第45张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第46张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第47张图片
快速点击,5秒以后不再报错
SpringCloud_11Sentinel实现熔断与限流学习笔记_第48张图片
在这里插入图片描述
在这里插入图片描述
排队等待
SpringCloud_11Sentinel实现熔断与限流学习笔记_第49张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第50张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第51张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第52张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第53张图片
在这里插入图片描述
SpringCloud_11Sentinel实现熔断与限流学习笔记_第54张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第55张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第56张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第57张图片
在这里插入图片描述
SpringCloud_11Sentinel实现熔断与限流学习笔记_第58张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第59张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第60张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第61张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第62张图片
慢调用比例
SpringCloud_11Sentinel实现熔断与限流学习笔记_第63张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第64张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第65张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第66张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第67张图片
停止jmeter后正常
SpringCloud_11Sentinel实现熔断与限流学习笔记_第68张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第69张图片
异常比例
SpringCloud_11Sentinel实现熔断与限流学习笔记_第70张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第71张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第72张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第73张图片
停止jmeter后,点击一下
SpringCloud_11Sentinel实现熔断与限流学习笔记_第74张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第75张图片
异常数
SpringCloud_11Sentinel实现熔断与限流学习笔记_第76张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第77张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第78张图片
在这里插入图片描述
SpringCloud_11Sentinel实现熔断与限流学习笔记_第79张图片

5.热点key限流

SpringCloud_11Sentinel实现熔断与限流学习笔记_第80张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第81张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第82张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第83张图片
快速点击,超过每秒一次
SpringCloud_11Sentinel实现熔断与限流学习笔记_第84张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第85张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第86张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第87张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第88张图片
快速点击,超过每秒一次
SpringCloud_11Sentinel实现熔断与限流学习笔记_第89张图片

SpringCloud_11Sentinel实现熔断与限流学习笔记_第90张图片
无p1,快速点击,超过每秒一次
SpringCloud_11Sentinel实现熔断与限流学习笔记_第91张图片
参数例外项
SpringCloud_11Sentinel实现熔断与限流学习笔记_第92张图片
当p1=5时,阈值200,快速点击,不会被限流
SpringCloud_11Sentinel实现熔断与限流学习笔记_第93张图片
添加异常
SpringCloud_11Sentinel实现熔断与限流学习笔记_第94张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第95张图片
在这里插入图片描述

6.系统规则

SpringCloud_11Sentinel实现熔断与限流学习笔记_第96张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第97张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第98张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第99张图片
快速点击,超过每秒一次
SpringCloud_11Sentinel实现熔断与限流学习笔记_第100张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第101张图片

7.SentinelResource配置

SpringCloud_11Sentinel实现熔断与限流学习笔记_第102张图片
1
SpringCloud_11Sentinel实现熔断与限流学习笔记_第103张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第104张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第105张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第106张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第107张图片
快速点击,超过每秒一次
在这里插入图片描述
关闭8401后
SpringCloud_11Sentinel实现熔断与限流学习笔记_第108张图片
2
SpringCloud_11Sentinel实现熔断与限流学习笔记_第109张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第110张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第111张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第112张图片
快速点击,超过每秒一次
SpringCloud_11Sentinel实现熔断与限流学习笔记_第113张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第114张图片
3
SpringCloud_11Sentinel实现熔断与限流学习笔记_第115张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第116张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第117张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第118张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第119张图片
快速点击,超过每秒一次
SpringCloud_11Sentinel实现熔断与限流学习笔记_第120张图片
在这里插入图片描述
SpringCloud_11Sentinel实现熔断与限流学习笔记_第121张图片

8.服务熔断

SpringCloud_11Sentinel实现熔断与限流学习笔记_第122张图片
9003和9004配置一样
SpringCloud_11Sentinel实现熔断与限流学习笔记_第123张图片

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <parent>
        <artifactId>springcloud2020</artifactId>
        <groupId>com.atguigu.springcolud</groupId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>cloudalibaba-provider-payment9003</artifactId>

    <dependencies>
        <!--引入自己定义的api通用包。可以使用Payment支付Entity-->
        <dependency>
            <groupId>com.atguigu.springcolud</groupId>
            <artifactId>cloud-api-commons</artifactId>
            <version>${
     project.version}</version>
        </dependency>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
        <!--  web组件      -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
</project>

SpringCloud_11Sentinel实现熔断与限流学习笔记_第124张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第125张图片

package com.atguigu.springcloud.controller;

import com.atguigu.springcloud.entities.CommonResult;
import com.atguigu.springcloud.entities.Payment;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import java.util.HashMap;

@RestController
public class PaymentController {
     
    @Value("${server.port}")
    private String serverPort;

    public static HashMap<Long, Payment> hashMap = new HashMap<>();

    static {
     
        hashMap.put(1L, new Payment(1L, "28a8c1e3bc2742d8848569891fb42181"));
        hashMap.put(2L, new Payment(2L, "bba4c1e3bc2742d8848569891fb42182"));
        hashMap.put(3L, new Payment(3L, "6ua5c1e3bc2742d8848569891fb42183"));
    }

    @GetMapping(value = "/paymentSQL/{id}")
    public CommonResult<Payment> paymentSQL(@PathVariable("id") Long id){
     
        Payment payment = hashMap.get(id);
        CommonResult<Payment> result = new CommonResult<>(200, "from mysql,serverPort: " + serverPort, payment);
        return result;
    }
}

在这里插入图片描述
SpringCloud_11Sentinel实现熔断与限流学习笔记_第126张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第127张图片

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <parent>
        <artifactId>springcloud2020</artifactId>
        <groupId>com.atguigu.springcolud</groupId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>cloudalibaba-consumer-nacos-order84</artifactId>

    <dependencies>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-openfeign</artifactId>
        </dependency>
        <!--SpringCloud ailibaba nacos -->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
        <!-- 引入自己定义的api通用包,可以使用Payment支付Entity -->
        <dependency>
            <groupId>com.atguigu.springcolud</groupId>
            <artifactId>cloud-api-commons</artifactId>
            <version>${
     project.version}</version>
        </dependency>
        <!-- SpringBoot整合Web组件 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <!--日常通用jar包配置-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
</project>

SpringCloud_11Sentinel实现熔断与限流学习笔记_第128张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第129张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第130张图片

package com.atguigu.springcloud.controller;

import com.alibaba.csp.sentinel.annotation.SentinelResource;
import com.alibaba.csp.sentinel.slots.block.BlockException;
import com.atguigu.springcloud.entities.CommonResult;
import com.atguigu.springcloud.entities.Payment;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;

import javax.annotation.Resource;
@RestController
@Slf4j
public class CircleBreakerController
{
     
    public static final String SERVICE_URL = "http://nacos-payment-provider";

    @Resource
    private RestTemplate restTemplate;

    @RequestMapping("/consumer/fallback/{id}")
    @SentinelResource(value = "fallback") //没有配置
    //@SentinelResource(value = "fallback",fallback = "handlerFallback") //fallback只负责业务异常
    //@SentinelResource(value = "fallback",blockHandler = "blockHandler") //blockHandler只负责sentinel控制台配置违规
    //@SentinelResource(value = "fallback",fallback = "handlerFallback",blockHandler = "blockHandler",)
    public CommonResult<Payment> fallback(@PathVariable Long id)
    {
     
        CommonResult<Payment> result = restTemplate.getForObject(SERVICE_URL + "/paymentSQL/"+id,CommonResult.class,id);

        if (id == 4) {
     
            throw new IllegalArgumentException ("IllegalArgumentException,非法参数异常....");
        }else if (result.getData() == null) {
     
            throw new NullPointerException ("NullPointerException,该ID没有对应记录,空指针异常");
        }

        return result;
    }
}

在这里插入图片描述
在这里插入图片描述
SpringCloud_11Sentinel实现熔断与限流学习笔记_第131张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第132张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第133张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第134张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第135张图片

package com.atguigu.springcloud.controller;

import com.alibaba.csp.sentinel.annotation.SentinelResource;
import com.alibaba.csp.sentinel.slots.block.BlockException;
import com.atguigu.springcloud.entities.CommonResult;
import com.atguigu.springcloud.entities.Payment;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;

import javax.annotation.Resource;
@RestController
@Slf4j
public class CircleBreakerController
{
     
    public static final String SERVICE_URL = "http://nacos-payment-provider";

    @Resource
    private RestTemplate restTemplate;

    @RequestMapping("/consumer/fallback/{id}")
    //@SentinelResource(value = "fallback") //没有配置
    //@SentinelResource(value = "fallback",fallback = "handlerFallback") //fallback只负责业务异常
    @SentinelResource(value = "fallback",blockHandler = "blockHandler") //blockHandler只负责sentinel控制台配置违规
    public CommonResult<Payment> fallback(@PathVariable Long id)
    {
     
        CommonResult<Payment> result = restTemplate.getForObject(SERVICE_URL + "/paymentSQL/"+id,CommonResult.class,id);

        if (id == 4) {
     
            throw new IllegalArgumentException ("IllegalArgumentException,非法参数异常....");
        }else if (result.getData() == null) {
     
            throw new NullPointerException ("NullPointerException,该ID没有对应记录,空指针异常");
        }

        return result;
    }

    //本例是blockHandler
    public CommonResult blockHandler(@PathVariable  Long id,BlockException blockException) {
     
        Payment payment = new Payment(id,"null");
        return new CommonResult<>(445,"blockHandler-sentinel限流,无此流水: blockException  "+blockException.getMessage(),payment);
    }

    //本例是fallback
    public CommonResult handlerFallback(@PathVariable  Long id,Throwable e) {
     
        Payment payment = new Payment(id,"null");
        return new CommonResult<>(444,"兜底异常handlerFallback,exception内容  "+e.getMessage(),payment);
    }
}

SpringCloud_11Sentinel实现熔断与限流学习笔记_第136张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第137张图片
快速点击,超过每秒2次
在这里插入图片描述
SpringCloud_11Sentinel实现熔断与限流学习笔记_第138张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第139张图片
快速点击,超过每秒1次
在这里插入图片描述
在这里插入图片描述
SpringCloud_11Sentinel实现熔断与限流学习笔记_第140张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第141张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第142张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第143张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第144张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第145张图片
在这里插入图片描述
SpringCloud_11Sentinel实现熔断与限流学习笔记_第146张图片
在这里插入图片描述
SpringCloud_11Sentinel实现熔断与限流学习笔记_第147张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第148张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第149张图片
启动报错

D:\JAVA\jdk1.8.0_131\bin\java.exe -XX:TieredStopAtLevel=1 -noverify -Dspring.output.ansi.enabled=always -Dcom.sun.management.jmxremote -Dspring.jmx.enabled=true -Dspring.liveBeansView.mbeanDomain -Dspring.application.admin.enabled=true "-javaagent:D:\JAVA\idea\IntelliJ IDEA 2019.3.3\lib\idea_rt.jar=3042:D:\JAVA\idea\IntelliJ IDEA 2019.3.3\bin" -Dfile.encoding=UTF-8 -classpath D:\JAVA\jdk1.8.0_131\jre\lib\charsets.jar;D:\JAVA\jdk1.8.0_131\jre\lib\deploy.jar;D:\JAVA\jdk1.8.0_131\jre\lib\ext\access-bridge-64.jar;D:\JAVA\jdk1.8.0_131\jre\lib\ext\cldrdata.jar;D:\JAVA\jdk1.8.0_131\jre\lib\ext\dnsns.jar;D:\JAVA\jdk1.8.0_131\jre\lib\ext\jaccess.jar;D:\JAVA\jdk1.8.0_131\jre\lib\ext\jfxrt.jar;D:\JAVA\jdk1.8.0_131\jre\lib\ext\localedata.jar;D:\JAVA\jdk1.8.0_131\jre\lib\ext\nashorn.jar;D:\JAVA\jdk1.8.0_131\jre\lib\ext\sunec.jar;D:\JAVA\jdk1.8.0_131\jre\lib\ext\sunjce_provider.jar;D:\JAVA\jdk1.8.0_131\jre\lib\ext\sunmscapi.jar;D:\JAVA\jdk1.8.0_131\jre\lib\ext\sunpkcs11.jar;D:\JAVA\jdk1.8.0_131\jre\lib\ext\zipfs.jar;D:\JAVA\jdk1.8.0_131\jre\lib\javaws.jar;D:\JAVA\jdk1.8.0_131\jre\lib\jce.jar;D:\JAVA\jdk1.8.0_131\jre\lib\jfr.jar;D:\JAVA\jdk1.8.0_131\jre\lib\jfxswt.jar;D:\JAVA\jdk1.8.0_131\jre\lib\jsse.jar;D:\JAVA\jdk1.8.0_131\jre\lib\management-agent.jar;D:\JAVA\jdk1.8.0_131\jre\lib\plugin.jar;D:\JAVA\jdk1.8.0_131\jre\lib\resources.jar;D:\JAVA\jdk1.8.0_131\jre\lib\rt.jar;D:\ideaPage\springcloud2020\cloudalibaba-consumer-nacos-order84\target\classes;D:\apache-maven-3.6.1\respository\com\alibaba\cloud\spring-cloud-starter-alibaba-sentinel\2.2.0.RELEASE\spring-cloud-starter-alibaba-sentinel-2.2.0.RELEASE.jar;D:\apache-maven-3.6.1\respository\com\alibaba\cloud\spring-cloud-alibaba-sentinel\2.2.0.RELEASE\spring-cloud-alibaba-sentinel-2.2.0.RELEASE.jar;D:\apache-maven-3.6.1\respository\com\alibaba\csp\sentinel-transport-simple-http\1.7.1\sentinel-transport-simple-http-1.7.1.jar;D:\apache-maven-3.6.1\respository\com\alibaba\csp\sentinel-transport-common\1.7.1\sentinel-transport-common-1.7.1.jar;D:\apache-maven-3.6.1\respository\com\alibaba\csp\sentinel-datasource-extension\1.7.1\sentinel-datasource-extension-1.7.1.jar;D:\apache-maven-3.6.1\respository\com\alibaba\fastjson\1.2.62\fastjson-1.2.62.jar;D:\apache-maven-3.6.1\respository\com\alibaba\csp\sentinel-annotation-aspectj\1.7.1\sentinel-annotation-aspectj-1.7.1.jar;D:\apache-maven-3.6.1\respository\com\alibaba\csp\sentinel-core\1.7.1\sentinel-core-1.7.1.jar;D:\apache-maven-3.6.1\respository\org\aspectj\aspectjrt\1.9.5\aspectjrt-1.9.5.jar;D:\apache-maven-3.6.1\respository\org\aspectj\aspectjweaver\1.9.5\aspectjweaver-1.9.5.jar;D:\apache-maven-3.6.1\respository\com\alibaba\cloud\spring-cloud-circuitbreaker-sentinel\2.2.0.RELEASE\spring-cloud-circuitbreaker-sentinel-2.2.0.RELEASE.jar;D:\apache-maven-3.6.1\respository\com\alibaba\csp\sentinel-reactor-adapter\1.7.1\sentinel-reactor-adapter-1.7.1.jar;D:\apache-maven-3.6.1\respository\com\alibaba\csp\sentinel-spring-webflux-adapter\1.7.1\sentinel-spring-webflux-adapter-1.7.1.jar;D:\apache-maven-3.6.1\respository\com\alibaba\csp\sentinel-spring-webmvc-adapter\1.7.1\sentinel-spring-webmvc-adapter-1.7.1.jar;D:\apache-maven-3.6.1\respository\com\alibaba\csp\sentinel-parameter-flow-control\1.7.1\sentinel-parameter-flow-control-1.7.1.jar;D:\apache-maven-3.6.1\respository\com\googlecode\concurrentlinkedhashmap\concurrentlinkedhashmap-lru\1.4.2\concurrentlinkedhashmap-lru-1.4.2.jar;D:\apache-maven-3.6.1\respository\com\alibaba\csp\sentinel-cluster-server-default\1.7.1\sentinel-cluster-server-default-1.7.1.jar;D:\apache-maven-3.6.1\respository\com\alibaba\csp\sentinel-cluster-common-default\1.7.1\sentinel-cluster-common-default-1.7.1.jar;D:\apache-maven-3.6.1\respository\io\netty\netty-handler\4.1.50.Final\netty-handler-4.1.50.Final.jar;D:\apache-maven-3.6.1\respository\io\netty\netty-common\4.1.50.Final\netty-common-4.1.50.Final.jar;D:\apache-maven-3.6.1\respository\io\netty\netty-resolver\4.1.50.Final\netty-resolver-4.1.50.Final.jar;D:\apache-maven-3.6.1\respository\io\netty\netty-buffer\4.1.50.Final\netty-buffer-4.1.50.Final.jar;D:\apache-maven-3.6.1\respository\io\netty\netty-transport\4.1.50.Final\netty-transport-4.1.50.Final.jar;D:\apache-maven-3.6.1\respository\io\netty\netty-codec\4.1.50.Final\netty-codec-4.1.50.Final.jar;D:\apache-maven-3.6.1\respository\com\alibaba\csp\sentinel-cluster-client-default\1.7.1\sentinel-cluster-client-default-1.7.1.jar;D:\apache-maven-3.6.1\respository\com\alibaba\cloud\spring-cloud-alibaba-sentinel-datasource\2.2.0.RELEASE\spring-cloud-alibaba-sentinel-datasource-2.2.0.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\springframework\boot\spring-boot-starter-aop\2.3.1.RELEASE\spring-boot-starter-aop-2.3.1.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\springframework\boot\spring-boot-starter\2.3.1.RELEASE\spring-boot-starter-2.3.1.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\springframework\boot\spring-boot-starter-logging\2.3.1.RELEASE\spring-boot-starter-logging-2.3.1.RELEASE.jar;D:\apache-maven-3.6.1\respository\ch\qos\logback\logback-classic\1.2.3\logback-classic-1.2.3.jar;D:\apache-maven-3.6.1\respository\ch\qos\logback\logback-core\1.2.3\logback-core-1.2.3.jar;D:\apache-maven-3.6.1\respository\org\apache\logging\log4j\log4j-to-slf4j\2.13.3\log4j-to-slf4j-2.13.3.jar;D:\apache-maven-3.6.1\respository\org\apache\logging\log4j\log4j-api\2.13.3\log4j-api-2.13.3.jar;D:\apache-maven-3.6.1\respository\org\slf4j\jul-to-slf4j\1.7.30\jul-to-slf4j-1.7.30.jar;D:\apache-maven-3.6.1\respository\jakarta\annotation\jakarta.annotation-api\1.3.5\jakarta.annotation-api-1.3.5.jar;D:\apache-maven-3.6.1\respository\org\yaml\snakeyaml\1.26\snakeyaml-1.26.jar;D:\apache-maven-3.6.1\respository\org\springframework\cloud\spring-cloud-starter-openfeign\2.2.3.RELEASE\spring-cloud-starter-openfeign-2.2.3.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\springframework\cloud\spring-cloud-starter\2.2.3.RELEASE\spring-cloud-starter-2.2.3.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\springframework\cloud\spring-cloud-context\2.2.3.RELEASE\spring-cloud-context-2.2.3.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\springframework\security\spring-security-rsa\1.0.9.RELEASE\spring-security-rsa-1.0.9.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\bouncycastle\bcpkix-jdk15on\1.64\bcpkix-jdk15on-1.64.jar;D:\apache-maven-3.6.1\respository\org\bouncycastle\bcprov-jdk15on\1.64\bcprov-jdk15on-1.64.jar;D:\apache-maven-3.6.1\respository\org\springframework\cloud\spring-cloud-openfeign-core\2.2.3.RELEASE\spring-cloud-openfeign-core-2.2.3.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\springframework\cloud\spring-cloud-netflix-ribbon\2.2.3.RELEASE\spring-cloud-netflix-ribbon-2.2.3.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\springframework\cloud\spring-cloud-netflix-archaius\2.2.3.RELEASE\spring-cloud-netflix-archaius-2.2.3.RELEASE.jar;D:\apache-maven-3.6.1\respository\io\github\openfeign\form\feign-form-spring\3.8.0\feign-form-spring-3.8.0.jar;D:\apache-maven-3.6.1\respository\io\github\openfeign\form\feign-form\3.8.0\feign-form-3.8.0.jar;D:\apache-maven-3.6.1\respository\commons-fileupload\commons-fileupload\1.4\commons-fileupload-1.4.jar;D:\apache-maven-3.6.1\respository\commons-io\commons-io\2.2\commons-io-2.2.jar;D:\apache-maven-3.6.1\respository\org\springframework\spring-web\5.2.7.RELEASE\spring-web-5.2.7.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\springframework\spring-beans\5.2.7.RELEASE\spring-beans-5.2.7.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\springframework\cloud\spring-cloud-commons\2.2.3.RELEASE\spring-cloud-commons-2.2.3.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\springframework\security\spring-security-crypto\5.3.3.RELEASE\spring-security-crypto-5.3.3.RELEASE.jar;D:\apache-maven-3.6.1\respository\io\github\openfeign\feign-core\10.10.1\feign-core-10.10.1.jar;D:\apache-maven-3.6.1\respository\io\github\openfeign\feign-slf4j\10.10.1\feign-slf4j-10.10.1.jar;D:\apache-maven-3.6.1\respository\org\slf4j\slf4j-api\1.7.30\slf4j-api-1.7.30.jar;D:\apache-maven-3.6.1\respository\io\github\openfeign\feign-hystrix\10.10.1\feign-hystrix-10.10.1.jar;D:\apache-maven-3.6.1\respository\com\netflix\archaius\archaius-core\0.7.6\archaius-core-0.7.6.jar;D:\apache-maven-3.6.1\respository\com\google\code\findbugs\jsr305\3.0.1\jsr305-3.0.1.jar;D:\apache-maven-3.6.1\respository\commons-configuration\commons-configuration\1.8\commons-configuration-1.8.jar;D:\apache-maven-3.6.1\respository\commons-lang\commons-lang\2.6\commons-lang-2.6.jar;D:\apache-maven-3.6.1\respository\com\google\guava\guava\29.0-android\guava-29.0-android.jar;D:\apache-maven-3.6.1\respository\com\google\guava\failureaccess\1.0.1\failureaccess-1.0.1.jar;D:\apache-maven-3.6.1\respository\com\google\guava\listenablefuture\9999.0-empty-to-avoid-conflict-with-guava\listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar;D:\apache-maven-3.6.1\respository\org\checkerframework\checker-compat-qual\2.5.5\checker-compat-qual-2.5.5.jar;D:\apache-maven-3.6.1\respository\com\google\errorprone\error_prone_annotations\2.3.4\error_prone_annotations-2.3.4.jar;D:\apache-maven-3.6.1\respository\com\google\j2objc\j2objc-annotations\1.3\j2objc-annotations-1.3.jar;D:\apache-maven-3.6.1\respository\com\fasterxml\jackson\core\jackson-annotations\2.11.0\jackson-annotations-2.11.0.jar;D:\apache-maven-3.6.1\respository\com\fasterxml\jackson\core\jackson-core\2.11.0\jackson-core-2.11.0.jar;D:\apache-maven-3.6.1\respository\com\netflix\hystrix\hystrix-core\1.5.18\hystrix-core-1.5.18.jar;D:\apache-maven-3.6.1\respository\io\reactivex\rxjava\1.3.8\rxjava-1.3.8.jar;D:\apache-maven-3.6.1\respository\com\alibaba\cloud\spring-cloud-starter-alibaba-nacos-discovery\2.2.0.RELEASE\spring-cloud-starter-alibaba-nacos-discovery-2.2.0.RELEASE.jar;D:\apache-maven-3.6.1\respository\com\alibaba\cloud\spring-cloud-alibaba-nacos-discovery\2.2.0.RELEASE\spring-cloud-alibaba-nacos-discovery-2.2.0.RELEASE.jar;D:\apache-maven-3.6.1\respository\com\alibaba\nacos\nacos-client\1.1.4\nacos-client-1.1.4.jar;D:\apache-maven-3.6.1\respository\com\alibaba\nacos\nacos-common\1.1.4\nacos-common-1.1.4.jar;D:\apache-maven-3.6.1\respository\org\apache\commons\commons-lang3\3.10\commons-lang3-3.10.jar;D:\apache-maven-3.6.1\respository\com\alibaba\nacos\nacos-api\1.1.4\nacos-api-1.1.4.jar;D:\apache-maven-3.6.1\respository\commons-codec\commons-codec\1.14\commons-codec-1.14.jar;D:\apache-maven-3.6.1\respository\io\prometheus\simpleclient\0.5.0\simpleclient-0.5.0.jar;D:\apache-maven-3.6.1\respository\com\alibaba\spring\spring-context-support\1.0.5\spring-context-support-1.0.5.jar;D:\apache-maven-3.6.1\respository\org\springframework\cloud\spring-cloud-starter-netflix-ribbon\2.2.3.RELEASE\spring-cloud-starter-netflix-ribbon-2.2.3.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\springframework\cloud\spring-cloud-starter-netflix-archaius\2.2.3.RELEASE\spring-cloud-starter-netflix-archaius-2.2.3.RELEASE.jar;D:\apache-maven-3.6.1\respository\com\netflix\ribbon\ribbon\2.3.0\ribbon-2.3.0.jar;D:\apache-maven-3.6.1\respository\com\netflix\ribbon\ribbon-transport\2.3.0\ribbon-transport-2.3.0.jar;D:\apache-maven-3.6.1\respository\io\reactivex\rxnetty-contexts\0.4.9\rxnetty-contexts-0.4.9.jar;D:\apache-maven-3.6.1\respository\io\reactivex\rxnetty-servo\0.4.9\rxnetty-servo-0.4.9.jar;D:\apache-maven-3.6.1\respository\javax\inject\javax.inject\1\javax.inject-1.jar;D:\apache-maven-3.6.1\respository\io\reactivex\rxnetty\0.4.9\rxnetty-0.4.9.jar;D:\apache-maven-3.6.1\respository\com\netflix\ribbon\ribbon-core\2.3.0\ribbon-core-2.3.0.jar;D:\apache-maven-3.6.1\respository\com\netflix\ribbon\ribbon-httpclient\2.3.0\ribbon-httpclient-2.3.0.jar;D:\apache-maven-3.6.1\respository\commons-collections\commons-collections\3.2.2\commons-collections-3.2.2.jar;D:\apache-maven-3.6.1\respository\org\apache\httpcomponents\httpclient\4.5.12\httpclient-4.5.12.jar;D:\apache-maven-3.6.1\respository\org\apache\httpcomponents\httpcore\4.4.13\httpcore-4.4.13.jar;D:\apache-maven-3.6.1\respository\com\sun\jersey\jersey-client\1.19.1\jersey-client-1.19.1.jar;D:\apache-maven-3.6.1\respository\com\sun\jersey\jersey-core\1.19.1\jersey-core-1.19.1.jar;D:\apache-maven-3.6.1\respository\javax\ws\rs\jsr311-api\1.1.1\jsr311-api-1.1.1.jar;D:\apache-maven-3.6.1\respository\com\sun\jersey\contribs\jersey-apache-client4\1.19.1\jersey-apache-client4-1.19.1.jar;D:\apache-maven-3.6.1\respository\com\netflix\servo\servo-core\0.12.21\servo-core-0.12.21.jar;D:\apache-maven-3.6.1\respository\com\netflix\netflix-commons\netflix-commons-util\0.3.0\netflix-commons-util-0.3.0.jar;D:\apache-maven-3.6.1\respository\com\netflix\ribbon\ribbon-loadbalancer\2.3.0\ribbon-loadbalancer-2.3.0.jar;D:\apache-maven-3.6.1\respository\com\netflix\netflix-commons\netflix-statistics\0.1.1\netflix-statistics-0.1.1.jar;D:\ideaPage\springcloud2020\cloud-api-commons\target\classes;D:\apache-maven-3.6.1\respository\cn\hutool\hutool-all\5.1.0\hutool-all-5.1.0.jar;D:\apache-maven-3.6.1\respository\org\springframework\boot\spring-boot-starter-web\2.3.1.RELEASE\spring-boot-starter-web-2.3.1.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\springframework\boot\spring-boot-starter-json\2.3.1.RELEASE\spring-boot-starter-json-2.3.1.RELEASE.jar;D:\apache-maven-3.6.1\respository\com\fasterxml\jackson\core\jackson-databind\2.11.0\jackson-databind-2.11.0.jar;D:\apache-maven-3.6.1\respository\com\fasterxml\jackson\datatype\jackson-datatype-jdk8\2.11.0\jackson-datatype-jdk8-2.11.0.jar;D:\apache-maven-3.6.1\respository\com\fasterxml\jackson\datatype\jackson-datatype-jsr310\2.11.0\jackson-datatype-jsr310-2.11.0.jar;D:\apache-maven-3.6.1\respository\com\fasterxml\jackson\module\jackson-module-parameter-names\2.11.0\jackson-module-parameter-names-2.11.0.jar;D:\apache-maven-3.6.1\respository\org\springframework\boot\spring-boot-starter-tomcat\2.3.1.RELEASE\spring-boot-starter-tomcat-2.3.1.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\apache\tomcat\embed\tomcat-embed-core\9.0.36\tomcat-embed-core-9.0.36.jar;D:\apache-maven-3.6.1\respository\org\glassfish\jakarta.el\3.0.3\jakarta.el-3.0.3.jar;D:\apache-maven-3.6.1\respository\org\apache\tomcat\embed\tomcat-embed-websocket\9.0.36\tomcat-embed-websocket-9.0.36.jar;D:\apache-maven-3.6.1\respository\org\springframework\spring-webmvc\5.2.7.RELEASE\spring-webmvc-5.2.7.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\springframework\spring-aop\5.2.7.RELEASE\spring-aop-5.2.7.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\springframework\spring-context\5.2.7.RELEASE\spring-context-5.2.7.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\springframework\spring-expression\5.2.7.RELEASE\spring-expression-5.2.7.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\springframework\boot\spring-boot-starter-actuator\2.3.1.RELEASE\spring-boot-starter-actuator-2.3.1.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\springframework\boot\spring-boot-actuator-autoconfigure\2.3.1.RELEASE\spring-boot-actuator-autoconfigure-2.3.1.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\springframework\boot\spring-boot-actuator\2.3.1.RELEASE\spring-boot-actuator-2.3.1.RELEASE.jar;D:\apache-maven-3.6.1\respository\io\micrometer\micrometer-core\1.5.1\micrometer-core-1.5.1.jar;D:\apache-maven-3.6.1\respository\org\hdrhistogram\HdrHistogram\2.1.12\HdrHistogram-2.1.12.jar;D:\apache-maven-3.6.1\respository\org\latencyutils\LatencyUtils\2.0.3\LatencyUtils-2.0.3.jar;D:\apache-maven-3.6.1\respository\org\springframework\boot\spring-boot-devtools\2.3.1.RELEASE\spring-boot-devtools-2.3.1.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\springframework\boot\spring-boot\2.3.1.RELEASE\spring-boot-2.3.1.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\springframework\boot\spring-boot-autoconfigure\2.3.1.RELEASE\spring-boot-autoconfigure-2.3.1.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\projectlombok\lombok\1.16.18\lombok-1.16.18.jar;D:\apache-maven-3.6.1\respository\org\springframework\spring-core\5.2.7.RELEASE\spring-core-5.2.7.RELEASE.jar;D:\apache-maven-3.6.1\respository\org\springframework\spring-jcl\5.2.7.RELEASE\spring-jcl-5.2.7.RELEASE.jar com.atguigu.springcloud.OrderNacosMain84
2020-09-09 09:39:08.575  INFO 8276 --- [  restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v2.3.1.RELEASE)

2020-09-09 09:39:11.430  INFO 8276 --- [  restartedMain] c.atguigu.springcloud.OrderNacosMain84   : No active profile set, falling back to default profiles: default
2020-09-09 09:39:12.810  WARN 8276 --- [  restartedMain] o.s.boot.actuate.endpoint.EndpointId     : Endpoint ID 'service-registry' contains invalid characters, please migrate to a valid format.
2020-09-09 09:39:12.957  INFO 8276 --- [  restartedMain] o.s.cloud.context.scope.GenericScope     : BeanFactory id=a540b342-0084-3bd7-b85b-935102c3b297
2020-09-09 09:39:13.195  INFO 8276 --- [  restartedMain] trationDelegate$BeanPostProcessorChecker : Bean 'com.atguigu.springcloud.service.PaymentService' of type [org.springframework.cloud.openfeign.FeignClientFactoryBean] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2020-09-09 09:39:13.443  INFO 8276 --- [  restartedMain] trationDelegate$BeanPostProcessorChecker : Bean 'spring.cloud.sentinel-com.alibaba.cloud.sentinel.SentinelProperties' of type [com.alibaba.cloud.sentinel.SentinelProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2020-09-09 09:39:13.448  INFO 8276 --- [  restartedMain] trationDelegate$BeanPostProcessorChecker : Bean 'com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration' of type [com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2020-09-09 09:39:14.557  INFO 8276 --- [  restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 84 (http)
2020-09-09 09:39:14.586  INFO 8276 --- [  restartedMain] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2020-09-09 09:39:14.587  INFO 8276 --- [  restartedMain] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.36]
2020-09-09 09:39:14.974  INFO 8276 --- [  restartedMain] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2020-09-09 09:39:14.975  INFO 8276 --- [  restartedMain] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 3525 ms
2020-09-09 09:39:15.316  WARN 8276 --- [  restartedMain] o.s.boot.actuate.endpoint.EndpointId     : Endpoint ID 'nacos-discovery' contains invalid characters, please migrate to a valid format.
2020-09-09 09:39:15.746  INFO 8276 --- [  restartedMain] o.s.b.d.a.OptionalLiveReloadServer       : LiveReload server is running on port 35729
2020-09-09 09:39:15.860  WARN 8276 --- [  restartedMain] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'circleBreakerController': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'com.atguigu.springcloud.service.PaymentService': FactoryBean threw exception on object creation; nested exception is java.lang.AbstractMethodError: com.alibaba.cloud.sentinel.feign.SentinelContractHolder.parseAndValidateMetadata(Ljava/lang/Class;)Ljava/util/List;
2020-09-09 09:39:15.865  INFO 8276 --- [  restartedMain] o.apache.catalina.core.StandardService   : Stopping service [Tomcat]
2020-09-09 09:39:15.905  INFO 8276 --- [  restartedMain] ConditionEvaluationReportLoggingListener : 

Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2020-09-09 09:39:15.930 ERROR 8276 --- [  restartedMain] o.s.boot.SpringApplication               : Application run failed

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'circleBreakerController': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'com.atguigu.springcloud.service.PaymentService': FactoryBean threw exception on object creation; nested exception is java.lang.AbstractMethodError: com.alibaba.cloud.sentinel.feign.SentinelContractHolder.parseAndValidateMetadata(Ljava/lang/Class;)Ljava/util/List;
	at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:321) ~[spring-context-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1422) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:594) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:517) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:323) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:226) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:321) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:893) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:879) ~[spring-context-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:551) ~[spring-context-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:143) ~[spring-boot-2.3.1.RELEASE.jar:2.3.1.RELEASE]
	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:758) [spring-boot-2.3.1.RELEASE.jar:2.3.1.RELEASE]
	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:750) [spring-boot-2.3.1.RELEASE.jar:2.3.1.RELEASE]
	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397) [spring-boot-2.3.1.RELEASE.jar:2.3.1.RELEASE]
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) [spring-boot-2.3.1.RELEASE.jar:2.3.1.RELEASE]
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1237) [spring-boot-2.3.1.RELEASE.jar:2.3.1.RELEASE]
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226) [spring-boot-2.3.1.RELEASE.jar:2.3.1.RELEASE]
	at com.atguigu.springcloud.OrderNacosMain84.main(OrderNacosMain84.java:13) [classes/:na]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_131]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_131]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_131]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_131]
	at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49) [spring-boot-devtools-2.3.1.RELEASE.jar:2.3.1.RELEASE]
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'com.atguigu.springcloud.service.PaymentService': FactoryBean threw exception on object creation; nested exception is java.lang.AbstractMethodError: com.alibaba.cloud.sentinel.feign.SentinelContractHolder.parseAndValidateMetadata(Ljava/lang/Class;)Ljava/util/List;
	at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:178) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getObjectFromFactoryBean(FactoryBeanRegistrySupport.java:101) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.beans.factory.support.AbstractBeanFactory.getObjectForBeanInstance(AbstractBeanFactory.java:1821) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getObjectForBeanInstance(AbstractAutowireCapableBeanFactory.java:1266) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:260) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.addCandidateEntry(DefaultListableBeanFactory.java:1529) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1486) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1267) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1224) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:521) ~[spring-context-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:497) ~[spring-context-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:650) ~[spring-context-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:239) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:130) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:318) ~[spring-context-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	... 23 common frames omitted
Caused by: java.lang.AbstractMethodError: com.alibaba.cloud.sentinel.feign.SentinelContractHolder.parseAndValidateMetadata(Ljava/lang/Class;)Ljava/util/List;
	at feign.ReflectiveFeign$ParseHandlersByName.apply(ReflectiveFeign.java:151) ~[feign-core-10.10.1.jar:na]
	at feign.ReflectiveFeign.newInstance(ReflectiveFeign.java:49) ~[feign-core-10.10.1.jar:na]
	at feign.Feign$Builder.target(Feign.java:269) ~[feign-core-10.10.1.jar:na]
	at org.springframework.cloud.openfeign.HystrixTargeter.target(HystrixTargeter.java:38) ~[spring-cloud-openfeign-core-2.2.3.RELEASE.jar:2.2.3.RELEASE]
	at org.springframework.cloud.openfeign.FeignClientFactoryBean.loadBalance(FeignClientFactoryBean.java:292) ~[spring-cloud-openfeign-core-2.2.3.RELEASE.jar:2.2.3.RELEASE]
	at org.springframework.cloud.openfeign.FeignClientFactoryBean.getTarget(FeignClientFactoryBean.java:321) ~[spring-cloud-openfeign-core-2.2.3.RELEASE.jar:2.2.3.RELEASE]
	at org.springframework.cloud.openfeign.FeignClientFactoryBean.getObject(FeignClientFactoryBean.java:301) ~[spring-cloud-openfeign-core-2.2.3.RELEASE.jar:2.2.3.RELEASE]
	at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:171) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
	... 39 common frames omitted


Process finished with exit code 0

添加com.alibaba.cloud.sentinel.feign.SentinelContractHolder,启动成功
SpringCloud_11Sentinel实现熔断与限流学习笔记_第150张图片
在这里插入图片描述
关闭9003
SpringCloud_11Sentinel实现熔断与限流学习笔记_第151张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第152张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第153张图片

9.持久化规则

SpringCloud_11Sentinel实现熔断与限流学习笔记_第154张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第155张图片
快速点击,超过每秒一次
SpringCloud_11Sentinel实现熔断与限流学习笔记_第156张图片
重启8401后,规则没有了
SpringCloud_11Sentinel实现熔断与限流学习笔记_第157张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第158张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第159张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第160张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第161张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第162张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第163张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第164张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第165张图片
快速点击,超过每秒一次
SpringCloud_11Sentinel实现熔断与限流学习笔记_第166张图片
停止8401后
SpringCloud_11Sentinel实现熔断与限流学习笔记_第167张图片
重启8401,快速点击,超过每秒一次
SpringCloud_11Sentinel实现熔断与限流学习笔记_第168张图片
SpringCloud_11Sentinel实现熔断与限流学习笔记_第169张图片

你可能感兴趣的:(spring,boot)