worker_processes
工作进程数量,一般可设置为CPU个数*CPU核心数
CPU个数,在windows的cmd下输入SystemInfo,可查看得到
CPU核心数,在windows的cmd下输入wmic,进入wmic命令交互界面,输入cpu get *,查看的到CPU核心数
上述为每个CPU为10个核心,每个核心2个进程。(在我的电脑-设备管理器里面查看到的是CPU的进程个数,而不是核心数)
一体化产品206服务器配置为:
worker_processes 20;
accept_mutex
由于我们在NGINX中配置了多个workers,因此我们还应配置影响worker的相关指令。 events区域下accept_mutex参数将使每个可用的worker进程逐个接受新连接。 默认情况下,该标志设置为on。如果accept_mutex为off,所有可用的worker将从等待状态唤醒,但只有一个worker处理连接。 这导致惊群现象,每秒重复多次。 这种现象导致服务器性能下降,因为所有被唤醒的worker都在占用CPU时间。 这导致增加了非生产性CPU周期和未使用的上下文切换。如果并发访问量大,为了系统吞吐率,可以关闭此选项(默认是开启的)
worker_connections
每个工作进程的连接数,不是越大越好,还是要取决于网卡的吞吐量。
GZIP
GZIP就是服务器端将返回的结果文件进行了一道压缩,然后返回给浏览器,浏览器再解压缩.
http {
...
gzip on; // 开启gzip
gzip_min_length 1k; // 最小1k的文件才使用gzip
gzip_buffers 4 8k; // 代表以8k为单位,按照原始数据大小以8k为单位的4倍申请内存
gzip_comp_level 5; // 1 压缩比最小处理速度最快,9 压缩比最大但处理最慢(传输快但比较消耗cpu)
gzip_types application/javascript text/plain application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png; // 支持的文件类型
gzip_disable "MSIE [1-6]\."; // IE6一下 Gzip支持的不好,故不实用gzip
...
}
我们的配置如下:
gzip on;
gzip_comp_level 6;
gzip_types text/plain application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif application/javascript;
负载均衡
目前园区产品测试和演示环境没用到