arthas进行java应用不停服务情况下的class文件热部署更新

2022/9/9 1:24:21

本文主要是介绍arthas进行java应用不停服务情况下的class文件热部署更新,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

我们在工作的过程中会遇到java应用已经部署或升级投入使用,发现某个单元文件有bug需要修正,但是客户的应用目前不能停止,而且不能因为一个非致命的bug来进行整个平台的一次升级。我们需要进行单文件的更新在不停线的情况下。

下面是具体的操作步骤

一、下载arthas工具 arthas.aliyun.com

二、对需要进行更新的java单元文件进行编译,生成最新的 class。

intelj里的操作:打开编辑的java单元文件,构建|重新编译 .....java,新生成的class文件与原代码文件会在同一目录,将生成好的class文件复制到服务器项目的目录中,或者自己制定一个目录。这个是无关的只要便于管理文件就好。

三、运行arthas进行更新

1、在arthas目录下,cmd 命令启动arthas-boot.jar文件

java -jar arthas-boot.jar

2、系统会列示已经运行的java程序清单,根据需要更新的应用,输入对应的序号回车。

 

3、输入命令 retransform D:/xxxxx/xxxServiceImpl.class 回车执行覆盖,系统会提示 retransform success, size: 1, classes

4、通过命令 retransform -l 可以显示已经更新的文件清单列表

 



这篇关于arthas进行java应用不停服务情况下的class文件热部署更新的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程