# 连接数与并发优化

URL: https://caijiao.org/nginx/performance-connections
Source: docs/nginx/performance-connections.md
Description: 本节介绍 Nginx 的连接数与并发优化方法，包括 worker 进程、连接数配置、负载优化和常用调优建议，提高高并发场景下的性能。

在高并发场景下，合理配置 Nginx 连接数和并发参数能够提高吞吐量，降低延迟，确保网站稳定运行。

## 一、worker 进程与连接数

```nginx
worker_processes auto;
worker_connections 1024;
````

* **worker_processes**：工作进程数，建议设置为 CPU 核心数或 auto
* **worker_connections**：每个进程最大连接数
* **最大并发连接数** ≈ worker_processes × worker_connections

## 二、事件模型优化

```nginx
events {
    use epoll;
    multi_accept on;
    worker_connections 2048;
}
```

* **use epoll**：Linux 高性能事件模型
* **multi_accept on**：一次获取多个新连接，提高吞吐量

## 三、Keep-Alive 优化

```nginx
keepalive_timeout 65;
keepalive_requests 100;
```

* **keepalive_timeout**：保持连接时间
* **keepalive_requests**：每个连接允许的最大请求数

## 四、负载优化

1. 使用 upstream 块分配请求，结合负载均衡策略
2. 配合缓存（proxy_cache、fastcgi_cache）减少后端压力
3. 对静态文件启用 gzip 压缩，减少网络传输

## 五、其他优化建议

1. 调整系统文件描述符限制（ulimit -n）
2. 调整内核 TCP 参数，如 `tcp_tw_reuse`, `tcp_fin_timeout`
3. 监控 Nginx 状态，使用 `stub_status` 模块查看活跃连接数

---

通过合理配置连接数和并发参数，Nginx 能在高并发场景下保持高性能和稳定性。
