当前位置: 首页 > news >正文

spring cloud、gradle、父子项目、微服务框架搭建---cloud gateway(十)


总目录

https://preparedata.blog.csdn.net/article/details/120062997


文章目录

    • 总目录
    • 一、简介
    • 二、order、pay服务 配置context-path
    • 三、新建gateway网关服务
      • (1) 启动类添加 @SpringCloudApplication 即可
      • (2) application.yml 配置端口号 和 eureka 注册地址
    • 四、配置gateway网关服务
      • (1)引入依赖
      • (2)在application.yml中配置 转发地址
    • 五、测试


以eureka为注册中心,且正常运行, eureka的配置可参考:https://preparedata.blog.csdn.net/article/details/120063331


一、简介

需要创建三个服务cloud,可参考:https://preparedata.blog.csdn.net/article/details/120082979

1.gateway网关服务 端口:20000
2.order订单服务 端口:11004
3.pay支付服务 端口:11005

gateway网关服务,同order、pay两服务一样,都应该首先注册到eureka中


二、order、pay服务 配置context-path

order、pay服务各自配置服务context-path

server:servlet:context-path: /shopping-order
server:servlet:context-path: /shopping-pay

各个业务服务context-path只要唯一不重复即可


三、新建gateway网关服务

初始化gateway网关服务时,就是一个普通的cloud服务, 无过多配置

(1) 启动类添加 @SpringCloudApplication 即可

(2) application.yml 配置端口号 和 eureka 注册地址

#声名服务端口号
server:port: 20000#设置服务名称
spring:application:  # 应用名字,eureka 会根据它作为服务idname: gatewayeureka:# instance内容非必填项,可删除,# 若删除后。注册到Eureka,则显示 Windwos-10HLZJF:shopping-goods:11003(电脑主机名:服务名:端口),多人运行同一个服务,不利于服务归属开发人员instance:instance-id: 192.168.88.63(程序员A)client:#是否在注册中心注册自己register-with-eureka: true#是否从 eureka 获取注册信息fetch-registry: true#配置注册中心的url (注意:地址最后面的 /eureka/ 这个是固定值)服务注册也就依赖这个url,后续我们会用到service-url:defaultZone: http://localhost:11001/eureka

以上是基本配置


四、配置gateway网关服务

(1)引入依赖

implementation 'org.springframework.cloud:spring-cloud-starter-gateway:2.0.2.RELEASE'

(2)在application.yml中配置 转发地址

#设置服务名称
spring:application:  # 应用名字,eureka 会根据它作为服务idname: gatewaycloud:gateway:routes:#路由的ID 唯一即可- id: shopping-order#路由的地址uri: http://localhost:11004# 可以指定ip端口路由, 也可以通过名称路由,方便服务多副本配置#uri: lb://shopping-orderpredicates:- Path=/shopping-order/**#路由的ID 唯一即可- id: shopping-pay#路由的地址#uri: http://localhost:11005# 可以指定ip端口路由, 也可以通过名称路由,方便服务多副本配置uri: lb://shopping-paypredicates:- Path=/shopping-pay/**

spring.cloud.gateway.routes 配置order、pay两服务的转发路由

注意:routes配置的文本格式


五、测试

请求order、pay两服务接口时,可以统一请求网关地址, 网关利用配置的shopping-order、shopping-pay将请求转发至对应服务上

利用网关地址请求
http://localhost:20000/shopping-order/hello/sayHello
–> http://localhost:11004/shopping-order/hello/sayHello

http://localhost:20000/shopping-pay/test/get
–> http://localhost:11005/shopping-pay/test/get

直接请求业务服务,当然也是可以
http://localhost:11004/shopping-order/hello/sayHello
http://localhost:11005/shopping-pay/test/get




http://www.lryc.cn/news/167247.html

相关文章:

  • AD22使用笔记+积累库
  • 20230912在ubuntu18.04下使用pigz来提高tar命令压缩解压缩的速度
  • python-xpath语法-爬取彼岸图4k高清动漫壁纸
  • 韩信点兵:求韩信一共有多少兵
  • 10个简单但超级有用的Python装饰器
  • DataGrip 2023 年下载、安装教程、亲测可用
  • 6.SpringEL与List,Map
  • 【Oracle】使用 SQL Developer 连接 Oracle 数据库
  • PostgreSQL 事务并发锁
  • CANoe-Model Editor无法修改ARXML文件的问题、E2E在SOME/IP通信中的使用问题
  • Conan安装第三方依赖库时SSL验证失败解决办法
  • 基于springboot+vue的大学生智能消费记账系统
  • Java——》synchronized的使用
  • vue+element使用阿里的图标库保存图标
  • Day 01 web前端基础知识
  • Redis 高可用之持久化
  • 生成元 rust解法
  • 某ERP系统存在RCE漏洞
  • ElasticSearch 因为索引字段改变,平滑迁移索引
  • invalid use of incomplete type ‘class Ui::xxx‘
  • 变压器寿命预测(python代码,Logistic Regression模型预测效果一般,可以做对比实验)
  • 微信小程序-增加隐私协议弹窗
  • 分布式事务解决方案之可靠消息最终一致性
  • ROS学习笔记(四)---使用 VScode 启动launch文件运行多个节点
  • 编译Redis时报错: jemalloc/jemalloc.h: No such file or directory
  • LLM 05-大模型法律
  • 1-5 AUTOSAR数据交换文件ARXML
  • 学习尚硅谷HTML+CSS总结
  • 自己设计CPU学习之路——基于《Xilinx FPGA应用开发》
  • 数据结构与算法:树