java.io.IOException: Too many open files问题处理
1.问题描述
程序在运行一段时间后,后台日志会出现如下错误:
2.问题分析
linux系统中对进程可以调用的文件句柄数进行了限制,超过限制进程将无法获取新的句柄,不能打开新的文件或者网络套接字,就会报错。
通过命令:
lsof -p 进程id|wc -l :查询当前进程打开文件的数量
发现这个数量是在不断增加的,通过
lsof -p 进程id:查询当前进程打开的具体文件
TYPE类型为FIFO的文件在不断增加,联系其最近的程序中,页面有个定时,该定时任务是调用后台的查询数据的接口,该后台接口是从influxdb中取数据的,进行数据查询连接后,未正常关闭流导致此问题的出现。