Node.js和ulimit

时间:2013-11-18 21:43:36

标签: node.js ubuntu ulimit

我在这里和那里看到了关于在使用Node时在Linux中设置ulimit -n(文件句柄)的少量讨论。大多数Linux发行版的默认值是1024.我无处可寻。通常对于apache你会设置得相当高。有什么想法吗?容易设置它开始,但不确定是否有需要。我们远程使用Mongo,而不是在本地打开很多文件。

1 个答案:

答案 0 :(得分:3)

我从AWS支持部门收到了这个答案,并且有效:

对于容器,每个beanstalk实例都是一个带有beanstalk软件的容器,它将在启动时下载您的应用程序,并根据环境类型和应用程序上的.ebextensions文件夹修改系统参数。

因此,为了实现我的建议,您需要在应用程序上创建一个.ebextensions,其中包含我提到的内容。

作为回顾,请在您的应用程序的.ebextensions文件夹中创建一个名为app.config的文件,其中包含以下(更新的)内容:

files:
 "/etc/security/limits.conf":
     mode: "00644"
     owner: "root"
     group: "root"
     content: |
         *                soft    nofile          20000
         *                hard    nofile          20000

commands:
 container_commands:
      command: "ulimit -HSn 20000; service httpd restart;"

添加此文件后,保存项目并进行新部署。

对于ssh,如果要运行具有更多限制的用户,可以在登录后运行以下命令: sudo su -c“ulimit -HSn 20000; su - ec2-user”

当前的会议将有你想要的限制。

供参考: http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers-ec2.html#customize-containers-format-services https://unix.stackexchange.com/questions/29577/ulimit-difference-between-hard-and-soft-limits http://www.cyberciti.biz/faq/linux-increase-the-maximum-number-of-open-files/