文章目录
- 背景
- 分析
- 代码分析
- 二次日志分析
- 排查Gateway服务
- 解决
- 解决办法1:添加重试机制
- 解决办法2:优化网关内存分配
- 解决办法3:调整OOM策略
背景
项目从虚拟机迁移到k8s云原生平台(RainBond)后,发现偶尔会出现接口调用超时的问题。
统计了一下从上线到现在近一个月的调用失败情况:共出现14次,平均每2.5天出现一次
2023-07-18 07:31:08.980 [Thread-6640] ERROR com.xxx.xxx.task.util.TaskUtil L:114 - Caught exception when finishing task.
java.lang.IllegalStateException: io error:at com.xxx.xxx.task.util.HttpClientUtil.doExecute(HttpClientUtil.java:243)at com.xxx.xxx.task.util.HttpClientUtil.doPatch(HttpClientUtil.java:213)at com.xxx.xxx.task.util.TaskUtil