个人随笔
目录
二十四、springCloudAlibaba-gateway整合nacos
2023-11-09 22:07:47

我们在二十三、springCloudAlibaba-gateway初始入门 简单的搭建了gateway项目案例,然后配置里是直接写死服务的ip端口的,这样也太不方便了,正常来说肯定是配置注册到nacos的服务名即可,我们来整合下吧

1、gateway引入nacos依赖

  1. <!--服务注册与发现 -->
  2. <dependency>
  3. <groupId>com.alibaba.cloud</groupId>
  4. <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
  5. </dependency>

2、配置文件加上nacos配置

  1. server:
  2. port: 8088
  3. spring:
  4. application:
  5. name: api-gateway
  6. cloud:
  7. nacos:
  8. server-addr: 127.0.0.1:8848
  9. discovery:
  10. username: nacos
  11. password: nacos
  12. namespace: public
  13. #gateway配置
  14. gateway:
  15. #路由规则
  16. routes:
  17. - id: order_route # 路由的唯一标识
  18. uri: lb://order-service #需要转发的地址.lb本地负载均衡策略
  19. #断言规则 用于路由规则的匹配
  20. predicates:
  21. - Path=/order-service/**
  22. #匹配请求http://localhost:8088/order-service/order/add
  23. #过滤器 用于过滤请求
  24. filters:
  25. - StripPrefix=1 #转发之前去掉第一层路径
  26. #http://localhost:8010/order/add
  27. #- id: stock_route

然后路由规则只需要简单修改uri为

  1. lb://order-service

即可,order-service对应的就是订单在nacos注册的服务名。

通过请求测试发现是ok的。

3、约定大于配置的方式(不建议使用)

假如我们的断言Path里面的路径跟服务名一样,那么我们的路由,断言,过滤都可以不用配置,改为如下即可

  1. gateway:
  2. discovery:
  3. locator:
  4. enabled: true #是否自动识别nacos服务

也就是约定大于配置,但是正常这种模式不会用,自由度和阅读性较低!

 58

啊!这个可能是世界上最丑的留言输入框功能~


当然,也是最丑的留言列表

有疑问发邮件到 : suibibk@qq.com 侵权立删
Copyright : 个人随笔   备案号 : 粤ICP备18099399号-2