增加流程

时间:2016-03-09 20:46:21

标签: go ubuntu-14.04 supervisor

当我运行ulimit -n时,我得到100000作为值。

我已在/etc/security/limits.conf

中修改了已添加的以下行
*     soft    nofile          100000
*     hard    nofile          100000

我还编辑了pan_limits

但我目前正在运行一个不断抛出错误的go程序

2016/03/09 21:42:27 http: Accept error: accept tcp [::]:3000: accept4: too many open files; retrying in 5ms
2016/03/09 21:42:27 getAudioOnlyInfo: open /dev/null: too many open files

问题在于,当我通过运行cat /proc/1480/limits实际检查以查看实际流程设置的限制时,我看到了这个

Max open files            1024                 4096                 files   

我通过主管运行golang程序是否有理由不能读取系统限制?

1 个答案:

答案 0 :(得分:2)

在尝试在多个问题中解决此问题之后,请了解主管在程序中设置自己的文件限制。如评论中所示,您必须在主管中使用minfds设置。

要检查它是否有效,您可以运行cat /proc/$PID/limits

哪个应输出您设置的数字minfds,在我的情况下为100,000

Max open files            100000               100000               files     

我想要注意的是,当你进入主管minfds时,你将它放在/etc/supervisor/supervisord.conf中,好像你输入你的程序配置文件一样,它什么都不做。