nginx(三)
nginx高级配置
ipv4 网络有关参数优化 追加到 /etc/sysctl.conf sysctl -p 修改生效
net.core.netdev_max_backlog 网络大于处理速度时,队列数据包最大数目
net.core.somaxconn 系统同时发生的tcp连接数
net.ipv4.tcp_max_orphans 系统允许存在多少tcp套接字不被关联到任何一个用户文件句柄上
这个限制只是为了防止简单的dos攻击 内存充足的情况下 可以调大
net.ipv4.tcp_max_syn_backlog 尚未收到客户端确认信息的连接请求最大值
net.ipv4.tcp_timestamps 时间戳 当赋值0时 禁用tcp时间戳 建议关闭
net.ipv4.tcp_synack_tetries 内核放弃连接之前向客户发送syn+ack 包的数量 一般设为1
net.ipv4.tcp_syn_retries 内核放弃简历连接之前发送syn包的数量 一般为1
cpu 配置优化参数
多核提高并行能力 多核可以实现线程的并行处理
worker_processes 赋值为机器cpu内核数或倍数
worker_cpu_affinity 为每一个进程分配cpu工作内核
worker_cpu_affinity 0001 0100 1000 0010 建议不同的进程平均分配到不同cpu 这是4核分配
与网络连接配置相关参数
keepalive_timeout 设置服务器与客户端保持链接的超时时间
send_timeout 服务器响应客户端的超时时间
client_header_buffer_size 服务器允许的客户端请求头部缓冲区大小 默认1kb 可以根据系统分页大小来设置 当cookie写入了较大值时 可以将此值设大
multi_accept 配置nginx服务器是否尽可能多地接受客户端网络连接请求 默认off
事件驱动模型的相关配置
use 指定事件驱动模型
worker_connection 设置允许连接客户端的最大数量 服务器允许同时连接的客户端最大数量
client = worker_processes*worker_connections/2 一般设置为65535
会和系统进程可以打开的文件句柄数量有关系 cat /proc/sys/fs/file-max 查看该值
echo "2390251" > /proc/sys/fs/file-max; sysctl -p
worker_rlimit_sigpending 事件信号队列长度上限 主要影响rtsig事件模型
epoll_events epoll 事件驱动模式下服务器与内核之间传递事件的数量 默认512

浙公网安备 33010602011771号