nginx的最大连接数引发的一点联想

先说说这篇笔记的前因后果,今天在看nginx的worker_connections配置时,提到操作系统的最大啊文件句柄数,所以就查了一下ulimit这个命令的使用方法。

首先,咱们先说说worker_connections这个配置的含义。这个配置项是在events模块中进行配置,主要用来设置允许每一个worker process 同时开启的最大连接数。其语法结构如下:

worker_connections number; 

此指令的默认设置为512;这里的number不仅仅包括和前端用户建立的连接数,而是包括所有可能的连接数。另外number的值不能大于操作系统支持打开的最大文件句柄数。

上面标红的地方就是引出本文的缘由----》ulimit 的使用方法

ulimit命令用于控制shell程序的资源

命令说明
-a显示目前资源限制的设定
-c设定core文件的最大值,单位为区块
-fshell所能建立的最大文件,单位为区块
-d程序数据节区的最大值,单位为KB
-H设定资源的硬性限制,也就是管理员所设下的限制
-m指定可使用内存的上限,单位为KB
-n指定同一时间最多可开启的文件数
-p指定管道缓冲区的大小,单位是512字节
-s指定堆叠的上限,单位为KB
-S设定资源的弹性限制
-t

指定cpu使用时间的上限,单位为秒

-u用户最多可开启的程序数目
-v指定可使用的虚拟内存上限,单位为KB

其中-n就是操作系统支持打开的最大文件句柄数,我们可以看一下我的系统支持的最大文件句柄数。

  那么如何修改这个数字呢,我们可以打开文件/etc/security/limits.conf进行配置。例如:

当打开的文件数介于1~soft设定的值,能够正常访问;如果打开的文件句柄数介于soft~hard之间,可以访问但是会有警告;如果打开的文件句柄数大于hard这个数字时,会出现报错。

为了让修改的配置文件生效,需要重启系统:shutdown -r now。然后再执行ulimit -n时,支持的最大打开文件句柄数就会发生了变化。

如果想查看更多,更关注公众号:我要一幕天

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值