SpringCloud Gateway自己理解

本文介绍了SpringCloud Gateway的核心功能,包括请求路由、Hystrix熔断器支持、权限控制和限流。通过实例演示了如何快速入门,使用Eureka实现负载均衡,添加请求前缀,以及如何集成Hystrix和限流。详细讲解了全局过滤器和限流的实现原理及代码实践。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

核心功能-实际上是个过滤器组合

  • 请求路由
  • 继承Hystrix
  • 权限控制
  • 限流(控制入口,控制出口)
快速入门代码实现
  1. 新建gateway_service服务,加入gateway相关依赖

    <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-gateway</artifactId>
    </dependency>
    
  2. 创建gateway的启动类,加入@SpringBootApplication注解即可

    server:
    port: 10010 #服务端口
    
    spring:
      application:
        name: gateway-server #指定服务名
      cloud:
        gateway:
          routes:
            - id: user-service-route # 当前路由的唯一标识,可以随便写,但是需要见名知意
    #          uri: http://127.0.0.1:8001,http://127.0.0.1:8002,http://127.0.0.1:8003 # 路由的目标微服务地址
              uri: http://127.0.0.1:8001 # 路由的目标微服务地址
              predicates: # 断言  判断 前端浏览器发送url和当前path是否匹配
                - Path=/user/** # 按照路径匹配的规则
    #        - id: order-service-route # 当前路由的唯一标识
    #          uri: http://127.0.0.1:9081 # 路由的目标微服务地址
    #          predicates: # 断言  判断 前端浏览器发送url和当前path是否匹配
    #            - Path=/order/** # 按照路径匹配的规则
    
  3. 执行测试即可

gateway使用eureka注册中心实现负载均衡
  1. pom文件中添加eureka-client依赖
    <dependencies>
        <!--网关依赖-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-gateway</artifactId>
        </dependency>
        <!--eaueka客户端依赖-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值