热部署
置顶
从事游戏行业多年,一直使用Java做开发,不可避免的就经历了许多,其中也踩过不少坑。最早的游戏是不支持热更的,导致出了BUG就必须停服;后续项目引入热更,但也不是特别完美,再往后热更升级,引入第二版:动态加载子类热更;受第二版热更方式启发,后来又加入了线上动态代码执行,主要用于规整数据
上一篇《JAVA热更新1:Agent热更》我们讲解了JDK提供的Agent方式来实现代码不停服更新,受限于JDK的Agent一些限制,这种方式无法实现以下功能:只能修改方法体,不能变更方法签名、不能增加和删除方法/类的成员属性。对于Instrumentation和JVM的agent...