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

重生之我在暑假学习微服务第十一天《配置篇》+网关篇错误订正

  • 个人主页:VON
  • 文章所属专栏:微服务

微服务系列文章

重生之我在暑假学习微服务第一天《MybatisPlus-上篇》
重生之我在暑假学习微服务第二天《MybatisPlus-下篇》
重生之我在暑假学习微服务第三天《Docker-上篇》
重生之我在暑假学习微服务第四天《Docker-下篇》
重生之我在暑假学习微服务第五天《Docker部署项目篇》
重生之我在暑假学习微服务第六天《微服务之拆分项目篇》
重生之我在暑假学习微服务第七天《微服务之服务治理篇》
重生之我在暑假学习微服务第八天《OpenFeign篇》
重生之我在暑假学习微服务第九天《后端拆分部分完结篇》
重生之我在暑假学习微服务第十天《网关篇》
未完待续......

特别声明:本系列所涉及资料皆为黑马程序员课程中的资料

目录

一、错误订正

二、配置管理

1、先新建一个jdbc相关的

2、配置一下日志相关的

三、拉取共享配置文件

1、在pom文件中引入相关依赖

2、新建一个bootstrap文件

3、简化application中的配置

4、重新运行购物车服务

四、配置热更新

1、定义CartProperties方法

2、修改service层代码

3、在nacos中配置一下变量

4、重启cart服务

    一、错误订正

    昨天的错误我找了一天,也是找的我头昏眼花,终于知道哪里错了。

    网关这方面没什么问题,我在这里一直再问通义千问,折腾了一上午一无所获。谁知道是第九天的拆分服务中出现了很大的问题,不知道大家有没有注意

    在修改的过程中我这里是直接把源代码删除了,导致浏览器一直找不到后端相应接口。

    这里我甚至把每个数据库都重新连接了一遍🤣

    只要把原本删除的代码全部改过来就可以,还有一点最重要的就是导包和依赖

    导入依赖的时候千万不要导入hm-service依赖,你的模块可能会引用他里面的包!!!

    告诫一下大家,千万不要眼高手低,一定要仔细仔细再仔细,毕竟模块太多了实在,一个不小心就会头蒙的。

    二、配置管理

    今天把昨天遗留的知识点补充一下

    1、先新建一个jdbc相关的

    我这里是这样填的

    spring:datasource:url: jdbc:mysql://${hm.db.host:192.168.73.134}:${hm.db.port:3306}/${hm.db.database}?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghaidriver-class-name: com.mysql.cj.jdbc.Driverusername: ${hm.db.un:root}password: ${hm.db.pw:123}
    mybatis-plus:configuration:default-enum-type-handler: com.baomidou.mybatisplus.core.handlers.MybatisEnumTypeHandlerglobal-config:db-config:update-strategy: not_nullid-type: auto

    2、配置一下日志相关的

    logging:level:com.hmall: debugpattern:dateformat: HH:mm:ss:SSSfile:path: "logs/${spring.application.name}"

    我这里就配置了这两个

    三、拉取共享配置文件

    这是运行时的执行流程图,不难看出他的执行顺序bootstrap→nacos→application

    刚才草率了忘记加yaml后缀了

    这里需要注意一下,虚拟机一定要一直处于开启状态,因为用的是虚拟机地址配置的mysql

    1、在pom文件中引入相关依赖

    2、新建一个bootstrap文件

    3、简化application中的配置

    4、重新运行购物车服务

    再次测试一下,可以看到测试成功

    四、配置热更新

    热更新(Hot Update)指在不重启应用或服务的情况下,动态更新代码、资源或配置的技术。常用于游戏、移动应用、后端服务等场景,以修复漏洞、优化性能或发布新功能。

    1、定义CartProperties方法

    2、修改service层代码

    将原本的10改为cartProperties.getMaxItems()就行了

    3、在nacos中配置一下变量

    4、重启cart服务

    刚才我们设置的添加商品上限为1证明购物车中最多存在1个商品,重启服务来检测下

    可以看到目前已经有一个商品了

    再添加商品就显示添加商品失败了

    不出意外后台也报错了

    直接修改变量再次检测

    添加成功了

    后台同样查询到2条数据

    结语

    本文分享了微服务学习系列的技术笔记,重点记录了配置管理和热更新功能的实现过程。作者首先纠正了前一日在服务拆分时因删除源代码导致的接口调用错误,强调模块依赖管理的重要性。随后详细介绍了配置管理的具体操作,包括JDBC和日志配置,以及如何通过bootstrap文件拉取共享配置。最后演示了热更新功能的实现,通过修改CartProperties和Nacos配置实现不重启服务更新购物车商品数量限制。文章以实际操作为主线,展示了从错误排查到功能实现的完整技术实践过程。

    http://www.dtcms.com/a/317452.html

    相关文章:

  • 启动VScode调试时报错:go命令的版本是1.23.0,而工具链的版本是1.23.6
  • IDEA 2025下载安装教程【超详细】保姆级图文教程(附安装包)
  • 华硕携多款明星电竞显示器亮相 ChinaJoy2025,联袂 TCL 华星打造沉浸体验
  • [Oracle] SIGN()函数
  • 微信小程序最大层级跳转问题
  • 使用 Maxwell 和 RabbitMQ 监控 Mysql Flowable 表变更
  • Kubernetes(k8s)之容忍与污点
  • Java学习第一百零九部分——Jenkins(一)
  • k8s +cilium+metallb 集群流量走向
  • 嵌入式学习的第四十四天-ARM
  • Gitlab+Jenkins+K8S+Registry 建立 CI/CD 流水线
  • Packets Frames 数据包和帧
  • docker-compose快速部署启动file beat+ELK
  • 企业级Linux服务器安全:防火墙规则配置与Web/SSH服务优化指南
  • 机器学习④【算法详解:从决策树到随机森林】
  • 【Graphiti MCP Server 配置与使用教程 (优化版)】
  • 了解SELinux
  • CGAL中函数squared_distance使用细则
  • 数据安全框架规划图
  • 【LeetCode 热题 100】347. 前 K 个高频元素——(解法三)桶排序
  • 使用R将nc文件转换为asc文件或者tif文件
  • C语言控制语句练习题2
  • KVazaar:开源H.265/HEVC编码器技术深度解析
  • vcpkg: 一款免费开源的C++包管理器
  • 【开源分享】can-utils:深入解析 Linux CAN 工具集
  • UE编辑器相机窗口运行时相机fov 大小不一致
  • 毕业设计选题推荐之基于Spark的在线教育投融数据可视化分析系统 |爬虫|大数据|大屏|预测|深度学习|数据分析|数据挖掘
  • css margin属性auto原理
  • 海康威视相机,MVS连接成功,但无图像怎么办?
  • python每日一题 贪心算法