API Gateway 初期业务访问的峰值从 10万/min 上升至 12万/min,导致网关出现“too many open files”错误,即打开最大文件句柄数超过最大值。经过排查发现 Jupiter 网关出现该错误时设置的句柄数值为 65535,运维尝试将具柄数值设置为 655350。
网关服务在修改完句柄数之后重启 Java 进程,某几台网关服务在重启后具柄数值快速上升至 20 万。由于单台机器服务实例打开的句柄数过多占据了大量物理内存,导致 JVM 进程被 Linux 系统给 OOM Killer。
本场 Chat 将分享该线上问题完整的排查过程:
- Netty 服务假死排查过程;
- 分析并解决 Netty4 的 IO 处理线程池遇到耗时业务容易把后端的 NIO 线程挂死的问题。
阅读全文: http://gitbook.cn/gitchat/activity/5c6245fc586c783fc9e7a9ea
您还可以下载 CSDN 旗下精品原创内容社区 GitChat App ,阅读更多 GitChat 专享技术内容哦。