1. 利用java的热替换机制,做到类级别的优雅停机. 两个类同时存在. 新流量到新类.确保老类的老流量没有后,再删除.
2. 然后利用流量保存和重放进行对应代码的测试. 原代码的流量有哪些.这些流量重放,哪怕新代码把老代码都删除了.
1. 线上只记录出口和入口数据.
2. 然后到行记录应用服务器上重放,记录对应的行信息,对应的代码版本号. 保存数据为[ key(代码版本号-类-行数)-value(流量id即traceId) ]
3. 每次上线前,找到主干版本号(线上服务版本号),找出对应diff的代码行,找到对应(版本版本号-类-代码行数)的重放数据.