
问题排查
文章平均质量分 90
Flycat_会飞的猫
这个作者很懒,什么都没留下…
展开
-
记一次Serializable序列化和反序列化导致的线上报错
需要序列化的地方(尤其是使用jdk序列化起)都要继承Serializable接口手动生成serialVersionUID值如果没有指定UID,当类结构发生变化(增减改字段)时,默认的UID会变化,导致序列化/反序列化失败小提示:生成serialVersionUID值时可以使用IDEA插件GenerateSerialVersionUID。原创 2024-04-15 16:30:34 · 861 阅读 · 0 评论 -
动态代理导致的Metaspace OOM(元空间内存溢出)问题
打上条件断点调接口,根据debug堆栈信息发现是引入的公司内部开发的链路追踪组件包,其实现了ResponseBodyAdvice在结果返回之前拦截,对数据进行脱敏后记录在链路追踪上下文中。打开Visual VM工具,连接到对应进程,在压测过程中,虽然没有发生Metaspace内存溢出,但是发现Metaspace确实一直在上涨。就是类中的字符串常量,符号引用就是类元数据信息,父类、接口、属性、方法名等,那么首先排查是否有大量动态代理类加载。登录上测试环境服务器,查了下日志,发现是Metaspace内存溢出。原创 2024-04-15 16:25:16 · 1448 阅读 · 0 评论