Posts Tagged ulimit

Linux文件句柄数导致php-cgi假死的解决方案之一

最近,一台生产中的服务器(CentOS 5.2 64位 4G内存),老是出现网站打不开,登录到服务器上查看,发现Nginx和php-cgi都在运行,和平时不同的是此时php-cgi的 cpu占用为0,马上查看文件句柄数限制

  1. ulimit -n

得到的结果是:1024,这个值对生产中的服务显得偏小。
网上给出的解决方案,大部分是直接输入

  1. ulimit -SHn 51200 # 51200可自己根据应用调整

此法缺点很明显,一旦退出登陆,设置就失效了。
也有说直接把该命令写到/etc/rc.d/rc.local中的,今天找到一个正确的做法
打开/etc/security/limits.conf,里面有很详细的注释,找到如下设置(如果没有就插入)

  1. * soft nofile 51200
  2. * hard nofile 51200

退出后再次登陆,查看句柄数,已经正确设置为51200。
如果有碰到类似情况,可以检查一下看看是不是文件句柄数设置太小引起的。

, , ,

No Comments