开发热部署工具,实现本地修改代码秒级发布到远端服务器,涉及技术,java instruction实现class更新、dcevm解决java instruction不能更新class属性和方法修改问题、javassist字节码启动过程中动态修改class属性。
1.2023年1月-4月,参考springboot-device-tools、美团sonic和github开源代码HotswapAgent,开发热部署工具,热部署主要包括 idea插件实现代码修改识别和文件上传服务,shell脚本实现热部署agent文件下载和启动,热部署代理实现class、文件更新。在部门内试用20个应用。
2.2023年9月-11月,在原有的热部署工具上继续开发新的插件完善热部署功能,如配置文件更新、spring xml更新、京东内部插件更新等。参加京东黑马比赛,成功进入前40,同时京东其他部门也开始主动接入热部署,服务器应用达到100+。
2023年11月-2024年1月,京东部署平台行云开始整合京东所有热部署工具,在热部署工具pk中,我们的热部署工具成功胜出,并打通京东部署平台行云对接实现在行云界面上一键开