![热部署](http://oss.yeas.fun/halo-yeas/big-bg2_1635645694223.jpg)
热部署
置顶
![Java线上解决方案系列目录](https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fd.zdqx.com%2Ffuli_20190509%2F001.jpg&refer=http%3A%2F%2Fd.zdqx.com&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=auto?sec=1670327216&t=355faee927f9af864b2a164a38972df7)
从事游戏行业多年,一直使用Java做开发,不可避免的就经历了许多,其中也踩过不少坑。最早的游戏是不支持热更的,导致出了BUG就必须停服;后续项目引入热更,但也不是特别完美,再往后热更升级,引入第二版:动态加载子类热更;受第二版热更方式启发,后来又加入了线上动态代码执行,主要用于规整数据
![JAVA热更新2:动态加载子类热更](https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fi0.hdslb.com%2Fbfs%2Farticle%2F8e1c3554dadccaa1b11085fc36a92efc8730b22f.jpg&refer=http%3A%2F%2Fi0.hdslb.com&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=jpeg?sec=1639059079&t=cd5de443063b0c1f18ed5642f7ad7230)
上一篇《JAVA热更新1:Agent热更》我们讲解了JDK提供的Agent方式来实现代码不停服更新,受限于JDK的Agent一些限制,这种方式无法实现以下功能:只能修改方法体,不能变更方法签名、不能增加和删除方法/类的成员属性。对于Instrumentation和JVM的agent...