阿里热部署工具arthas简单使用

生产环境中如果大家遇到紧急的bug需要修复,但是又害怕重启应用导致告警或影响的,还有容器部署的需要重新打镜像包的小伙伴,这里给大家提供个不需要重启应用的方法,也能够对应用进行紧急变更,实现代码热部署。

但是目前仅限于class类中没有新增方法的热部署,可以进行一些逻辑bug的修复操作。

1、首先,我们先启动arthas应用,选择你需要更新的应用ID。安装包可以到阿里仓库下载。

# 执行运行启动arthas
java -jar arthas-boot.jar

2、接着按照下面步骤完成操作:

第一步:jad --source-only com.xxx.xxx.Test> /usr/local/arthas/Test.java

第二步:修改/usr/local/arthas/Test.java

第三步:mc /usr/local/arthas/Test.java -d /usr/local/arthas/

或者

sc -d com.xxx.xxx.Test | grep classLoaderHash

mc -c 18b4aac2 /usr/local/arthas/Test.java -d /usr/local/arthas/

第四步:retransform /usr/local/arthas/com/xxx/xxx/Test.class
(这里也可以在本地编译好class文件直接替换)

第五步:jad --source-only com.allinpay.xxx.xxx.Test

最后提醒下,要注意包的结构需要保持一致,热部署后cpu会出现短暂的冲高,对cpu变化影响比较大的应用不建议使用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值