go项目,出现too many open files
刚开始碰到这种异常,以为是代码写的有问题,准备抽时间去改,等有时间正式此问题的时候,发现这种问题一般只会在linux系统上出现,原因如下:linux系统限制了文件打开的最大文件句柄数,系统默认一般是1024,可通过如下命令去查看
ulimit -n
临时修改,执行:
ulimit -n 524288
永久修改,编辑 /etc/security/limits.conf 文件, 加入如下行:
# /etc/security/limits.conf root hard nofile 524288 root soft nofile 524288
第一列的 root 表示 root 用户, 你可以填 *. 然后保存退出, 重新登录服务器,再查看,已是自己修改的数据。
参考:Linux 系统永久设置ulimit - Python List (pylist.com)