GateWay路由映射

概念

在使用微服务时,会出现大量端口占用,而程序要想调用某个服务就必须知道他的端口
这是比较麻烦的 因此我们引入网关这一工具解决这种问题

导入依赖

Spring Cloud Gateway 是基于 Netty,跟 Servlet 不兼容,
所以你的工程中不能出现 Servlet 的组件 因此在该模块的pom文件依赖中不能出现 spring web 的依赖
导入依赖 这里我们直接与nacos结合 从nacos里寻找服务

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-gateway</artifactId>
        </dependency>

        <dependency>
            <groupId>com.alibaba.csp</groupId>
            <artifactId>sentinel-spring-cloud-gateway-adapter</artifactId>
        </dependency>

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

配置yml文件:

server:
  port: 8010
spring:
  application:
    name: gateway
  cloud:
    nacos:
      discovery:
        server-addr: http://192.168.98.1:8848  #nacos地址
    gateway:
      discovery:
        locator:
          enabled: true



测试使用

启动nacos
启动一个服务
在nacos查看服务是否注册成功

启动gateway服务
由于我们导入了spring-cloud-starter-alibaba-nacos-discovery依赖 gateway会自动从nacos寻找服务

现在服务端口是8081 gateway端口是8010
我们测试通过gateway来访问服务
格式为:端口/nacos的服务名/访问链接

成功访问

posted @ 2021-11-03 21:07  一个经常掉线的人  阅读(248)  评论(0)    收藏  举报