多个服务依赖的Jar包自动升级调研

上千个服务引用同一个jar包,怎么实现自动升级?而不用手动升级?

开发使用自动升级平台

开发一个专门的自动升级平台,支持以下功能:

  • 任务管控与统计:支持升级范围的圈选,设置jar包的源和目标版本,精准控制升级过程。
  • 升级规则配置:支持不同任务执行不同的升级规则,支持升级任务编排。
  • 任务重试与跳过:支持升级任务的重试和跳过,便于处理升级过程中的问题。
  • 支持异步通知与hook调用:每个流程节点都支持异步通知和同步的前置/后置hook调用,便于扩展和集成。

结合自动升级工具和平台

  • 首先,可以使用IDE工具进行本地测试和手动升级,确保升级没有问题。
  • 然后,将自动升级平台与CI/CD流程结合,实现自动化的定期升级。

注意事项

  • 确保升级的jar包与服务完全兼容,避免升级后出现服务不稳定的情况。
  • 在自动升级平台上配置好升级规则和任务,确保升级过程的可控性和可靠性。
  • 定期进行升级演练,确保团队熟悉自动升级的流程和可能遇到的问题。

通过以上方法,可以实现多个服务引用的一个jar包的自动升级,提高服务升级的效率和维护性。

参考:

云音乐服务端大规模自动化升级实践

Jar 组件自动化风险监测和升级实践

SpringBoot 应用优雅实现零停机更新,妙啊~

相关推荐
dishugj1 小时前
系统架构风险点、敏感点和权衡点的概念和区分
java·开发语言
苜蓿muxu1 小时前
常用代码命名规范
java
马优晨1 小时前
JAVA 中 VO 实体类是什么意思,为什么要做这个
java·开发语言·状态模式·java vo·java vo是什么
Baron X2 小时前
Eclipse Temurin 21 (JRE) Alpine 镜像获取、离线导入与推送操作
java·docker·eclipse·temurin
孙浩君2 小时前
我用 Spring Boot + xterm.js 写了个终端风格互动叙事游戏引擎:游戏即文件,上传一个 JSON 就能玩
java
jose2 小时前
URL 里多写了一个端口,为什么请求还能调通?
java·后端
孙浩君2 小时前
我用 Spring Boot 写了个「终端风格模拟经营游戏引擎」:引擎 + JSON 游戏文件,开箱即玩
java
y1su2 小时前
Leetcode 动态规划 模板
java·数据结构·算法·leetcode·动态规划
Wang's Blog3 小时前
Java 项目实战: 交友项目 - JWT 概述:为什么要用 Token 换掉 Session
java·ui·交友