Gateway网关入门

SpringCloud中网关的实现包括两种:

1、gateway

2、zuul

Zuul是基于Servlet的实现,属于阻塞式编程。而SpringCloudGateway则是基于Spring5中提供的WebFlux,属于响应式编程的实现,具备更好的性能。

 网关的作用:

对用户请求做身份认证、权限校验

将用户请求路由到微服务,并实现负载均衡

对用户请求做限流

 搭建网关服务

1、创建新的module,引入SpringCloudGateway的依赖和nacos的服务发现依赖

        <!-- nacos服务注册发现依赖-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
        <!--网关gateway依赖-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-gateway</artifactId>
        </dependency>

 2、编写路由配置及nacos地址

server:
  port: 10010   #网关端口
spring:
  application:
    name: gateway #服务名称
  cloud:
    nacos:
      server-addr: localhost:8849 #nacos地址
    gateway:
      routes:
        - id: user-service        #路由标识,必须唯一
          uri: lb://userservice   #路径的目标地址
          predicates:             #路由断言,判断请求是否符合规则
            - Path=/user/**       #路由断言,判断路径是否以/user开头
        - id: order-service
          uri: lb://orderservice
          predicates:
            - Path=/order/**

 路由断言工厂Route Predicate Factory

 若有多个断言需求可配置在

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值