java的热部署/热更新(1)背景

什么是热部署

所谓热部署,就是在应用正在运行时升级软件,却不需要重新启动应用。 对于Java应用程序来说,热部署就是在运行时更新Java类文件,同时触发Spring以及其他常用第三方框架的一系列重新加载的过程。

为什么需要热部署

现阶段,线上集群的发布采取1.虚拟机/物理机器更新代码的方式,2.docker/k8s环境更新pod的镜像。优点显而易见,一致性好,可靠性高。但是热部署也有自己的优势:

  • 快速发布/快速回滚。提高开发和运维人效。
  • 减少系统初始化对其他系统的压力:设想一个启动化加载成本特别大的应用,频繁的启停会造成系统的整体波动。
  • 同一台机器上的多版本共存。

热部署的行业方案

相关推荐
m0_748248021 分钟前
C++ 异常处理全解析:从语法到设计哲学
java·c++·word
仟濹2 分钟前
IDEA 软件下载 + 安装 | 操作步骤
java·ide·intellij-idea
snakecy6 分钟前
树莓派学习资料共享
大数据·开发语言·学习·系统架构
Nebula_g11 分钟前
C语言应用实例:学生管理系统1(指针、结构体综合应用,动态内存分配)
c语言·开发语言·学习·算法·基础
毕设源码-赖学姐12 分钟前
【开题答辩全过程】以 法院信访投诉平台为例,包含答辩的问题和答案
java·eclipse
开心-开心急了23 分钟前
关于Flutter与Qt for python 的一些技术、开源、商用等问题
开发语言·python·qt·flutter
依_旧24 分钟前
MySQL下载安装配置(超级超级入门级)
java·后端
友友马25 分钟前
『 QT 』按钮类控件属性解析
开发语言·数据库·qt
Evand J27 分钟前
【MATLAB例程】基于噪声协方差自适应的互补滤波器方法vs标准互补滤波,用于融合加速度计和陀螺仪数据,估计角度
开发语言·matlab
熊小猿34 分钟前
RabbitMQ死信交换机与延迟队列:原理、实现与最佳实践
开发语言·后端·ruby