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

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

  • 个人主页: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.xdnf.cn/news/17151.html

    相关文章:

  • 【图像处理基石】什么是数字高程模型?如何使用数字高程模型?
  • HarmonyOS应用开发环境搭建以及快速入门介绍
  • Diamond基础1:认识Lattice器件
  • 【LeetCode 热题 100】347. 前 K 个高频元素——(解法三)桶排序
  • 接口——串口uart(485)
  • 常用排序方法
  • LeetCode 面试经典 150_数组/字符串_O(1)时间插入、删除和获取随机元素(12_380_C++_中等)(哈希表)
  • Java throw exception时需要重点关注的事情!
  • 项目中MySQL遇到的索引失效的问题
  • QT+opencv+yolov8推理
  • 基于RPR模型的机械臂手写器simulink建模与仿真
  • 优选算法1
  • YOLOv11改进:集成FocusedLinearAttention与C2PSA注意力机制实现性能提升
  • 机器学习 朴素贝叶斯
  • 怎么免费建立自己的网站步骤
  • 北京JAVA基础面试30天打卡03
  • 数据大集网:企业贷获客数据平台,精准对接助贷获客平台与企业贷获客渠道
  • InfluxDB 集群部署与高可用方案(二)
  • 批量打印Excel条形码
  • 在Word和WPS文字中如何输入汉字的偏旁部首
  • 大数据之HBase
  • 沉寂半年,Kimi归来!
  • java 桌面应用程序基本框架
  • 应急响应linux
  • DDoS 防护的未来趋势:AI 如何重塑安全行业?
  • 深入理解SpringMVC DispatcherServlet源码及全流程原理
  • Flink CDC如何保障数据的一致性?
  • 亚矩阵云手机:解锁 Shopee/Lazada 东南亚电商运营“通关密码
  • WordPress自定义.js文件排序实现方法
  • Unity里的对象旋转数值跳转问题的原理与解决方案