欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

gateway集成sentinel网关限流

程序员文章站 2022-07-05 09:27:25
一、添加依赖1.1 添加网关限流依赖 com.alibaba.cloud spring-cloud-alibaba-sentinel-gateway 2.1.2.RELEASE1.2 添加支持控制台依赖&...

一、添加依赖

1.1 添加网关限流依赖

<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-alibaba-sentinel-gateway</artifactId>
    <version>2.1.2.RELEASE</version>
</dependency>

1.2 添加支持控制台依赖

<dependency>
    <groupId>com.alibaba.csp</groupId>
    <artifactId>sentinel-transport-simple-http</artifactId>
    <version>1.7.1</version>
</dependency>

划重点!!!这里有一个坑要注意:
网关限流的依赖和控制台的依赖版本号一定要对应,否则控制台无法检测到网关应用。
gateway集成sentinel网关限流

二、添加网关配置类

@Configuration
public class GatewayConfiguration {

    private final List<ViewResolver> viewResolvers;
    private final ServerCodecConfigurer serverCodecConfigurer;

    public GatewayConfiguration(ObjectProvider<List<ViewResolver>> viewResolversProvider,
                                ServerCodecConfigurer serverCodecConfigurer) {
        this.viewResolvers = viewResolversProvider.getIfAvailable(Collections::emptyList);
        this.serverCodecConfigurer = serverCodecConfigurer;
    }

    @Bean
    @Order(Ordered.HIGHEST_PRECEDENCE)
    public SentinelGatewayBlockExceptionHandler sentinelGatewayBlockExceptionHandler() {
        // Register the block exception handler for Spring Cloud Gateway.
        return new SentinelGatewayBlockExceptionHandler(viewResolvers, serverCodecConfigurer);
    }

    @Bean
    @Order(-1)
    public GlobalFilter sentinelGatewayFilter() {
        return new SentinelGatewayFilter();
    }
 }

三、application.properties里添加配置

spring.main.allow-bean-definition-overriding=true

四、添加启动参数

-Dcsp.sentinel.app.type=1
-Dcsp.sentinel.dashboard.server=localhost:8849
-Dproject.name=gateway-sentinel

本文地址:https://blog.csdn.net/weixin_43126355/article/details/111987260

相关标签: 学习 网关