有人可以解释为什么在启动Nginx之前“ulimit”?
ulimit -SHn 51200 /usr/local/webserver/nginx/sbin/nginx
Nginx使用了很多套接字。 这是一个单进程的Web服务器(也就是说,你可以运行几个“worker”实例,但基本上它们都像一个单进程的Web服务器),并且能够接受许多连接(每个连接使用一个套接字),代理许多后端(每个连接再次消耗一个套接字)。 因此,Nginx可以轻松地超过每个进程1024个文件描述符的默认限制。 这意味着,有必要增加Nginx的限制,从而达到限制。
ulimit是一个* nix命令,对资源进行限制。 Alaz给出了一个很好的解释,Nginx可以很容易地超过1024个文件描述符的默认限制。 有必要通过ulimit命令来提高这个限制,让Nginx以你想要的方式运行。
ulimit -SHn 51200将打开的文件描述符的数量限制为51200。
这里是你的ulimit命令的细目:
-S – >使用软资源限制
-H – >使用硬资源限制
-n – >打开文件描述符的最大数目