对Nginx进行硬件集群负载均衡
一、提高硬件质量
- 更换高性能CPU
- 关键应用程序数据使用固态硬盘
- 更换速率更高的网卡,例如万兆网卡
- 更换更大更快的内存
二、使用LVS做集群负载均衡
LVS是Linux Virtual Server的简写,Linux虚拟服务器,是一个虚拟的服务器集群系统。
三、使用DNS做集群负载均衡
DNS可以将用户请求分配到不同IP的nginx服务器。
提高CPU使用率
- 尽可能占用全部的CPU资源
- 尽可能占用更大的CPU时间片、减少进程间切换
1、配置nginx子进程
work_processes auto;
2、将worker子进程与CPU绑定
worker_cpu_affinity 01 10 01 10;
3、提高worker子进程的进程优先级
worker_priority -20;
4、延迟处理新连接
listen 8080 deferred;
修改TCP内核参数
1、net.ipv4.tcp_syn_retries = 6
表示应用程序进行connect()系统调用时,在对方不返回SYN + ACK的情况下(也就是超时的情况下),第一次发送之后,内核最多重试几次发送SYN包;并且决定了等待时间.。Linux上的默认值是 net.ipv4.tcp_syn_retries = 6 ,也就是说如果是本机主动发起连接,(即主动开启TCP三次握手中的第一个SYN包),如果一直收不到对方返回SYN + ACK ,那么应用程序最大的超时时间就