node.js负载过大时(用lr跑到1000虚拟用户)报错,如下:
Error: accept EMFILE
at errnoException (net.js:770:11)at TCP.onconnection (net.js:1018:24)
通过google查到如下信息:
http://stackoverflow.com/questions/34588/how-do-i-change-the-number-of-open-files-limit-in-linux
使用ulimit -a查看
files 的限制是1024
使用ulimit -n 2048修改后,问题解决。
同时:
设置node.js的listener数量用如下方法:
process.setMaxListeners(0);
设置为0表示没有不做限制