Nginx 最大连接数配置,可以解决nginx拒绝连接问题

公司项目运行一段时间就发现网页打不开,重启nginx就好了,经过排查是因为nginx的最大连接数限制导致的
技术博客 http://idea.coderyj.com/

1.设置服务器最大打开文件数 65535
vim /etc/security/limits.conf
# 在最下面加入
* soft nofile 65535
* hard nofile 65535

注意:* 要加到文件里面,以上在limits.conf文件中添加的两句话的含义是
soft(应用软件)级别限制的最大可打开文件数的限制
hard表示操作系统级别限制的最大可打开文件数的限制,
*表示所有用户都生效。

  • 保存文件后不会马上生效。需要使用以下命令 ulimit -n 65535
  • 查看是否设置成功 ulimit -a
    Nginx 最大连接数配置,可以解决nginx拒绝连接问题_第1张图片

2.更改Nginx“进程最大可打开文件数”的设置, 打开nginx.conf配合worker_rlimit_nofile属性。

# 根据cpu核数自动创建work进程
worker_processes auto;
events {
    # 使用epoll模型
    use epoll;
    # 尽可能多的接受连接
    multi_accept on;
    # 单个worker进程最大打开的连接数
    worker_connections  150000;
}

3. 验证Nginx“进程最大可打开文件数”是否起作用

ps -aux|grep nginx

在这里插入图片描述

4.其中Max open files 的Soft Limit和Hard Limit已经设置成了 65535

#充当服务器时Nginx可同时承载的连接数量,是最大工作线程*每个线程允许的连接数量
max_client = worker_processes * worker_connections
#充当反向代理服务时,可同时承载的连接数量是最大工作线程*每个线程允许的连接数量/4
#(4)代表:浏览器会建立两条连接到Nginx,Nginx也会建立两条连接到后端服务器。这样就是4条了。
max_client = worker_processes * worker_connections/4

你可能感兴趣的:(nginx,运维)