Nginx优化深入-----更改进程数+网页压缩+FPM优化
2021-05-01 20:28
标签:缓存 mod 查看 gre 响应 产生 固定 ade 阈值 Nginx优化深入-----更改进程数+网页压缩+FPM优化 标签:缓存 mod 查看 gre 响应 产生 固定 ade 阈值 原文地址:https://blog.51cto.com/14557584/2463950一、更改进程数
1.1、具体操作
1.2、更改进程数配置
二、nginx压缩
2.1、压缩功能参数
2.2、压缩配置
三、FPM 参数优化
一、更改进程数
在高并发场景,需要启动更多的Nginx进程以保证快速响应,以处理用户的请求,避免造成阻塞。
可以使用ps aux命令查看Nginx运行进程的个数。
更改进程数的配置方法
修改配置文件,修改进程配置参数
1.1、具体操作
修改配置文件的worker_processes参数
一般设为CPU的个数或者核数
在高并发情况下可设置为CPU个数或者核数的2倍
运行进程数多一些, 响应访问请求时,Nginx就不会临时启动新的进程提供服务,减少了 系统的开销,提升了服务速度
使用ps aux查看运行进程数的变化情况
默认情况,Nginx的多个进程可能跑在-个CPU上,可以分配不同的进程给不同的CPU处 理,充分利用硬件多核多CPU。
1.2、更改进程数配置
1、修改配置文件
vim /usr/local/nginx/conf/nginx.conf
#修改 ,做负载
worker_processes 2;
worker_cpu_affinity 01 10;
#再重启服务
service nginx stop
service nginx start
#查看进程
ps aux | grep nginx
2、验证ps aux | grep nginx
二、nginx压缩
Nginx的ngx_http_gzip_module压缩模块提供对文件内容压缩的功能。
允许Nginx服务器将输出内容在发送客户端之前进行压缩,以节约网站带宽,提升用户的 访问体验,默认已经安装。
可在配置文件中加入相应的压缩功能参数对压缩性能进行优化。
2.1、压缩功能参数
压缩功能参数讲解
gzip on; #开启gzip压缩功能
gzip_min_length 1k; #压缩阈值
gzip_buffers 4 16k; #buffer 大小为4个16k缓冲区大小
gzip_http_version 1.1; #压缩版本
gzip_comp_level 6; #压缩比率,最小为1,处理速度快,传输速度慢, 9最大压缩比,处理速度慢,传输速度快
gzip_types text/plain application/x-javascript text/css image/jpg image/jepg image/png image/gif application/xml text/javascript application/x-http-php #application/javascript application/json;
gzip_disable "MSIE [1-6]\."; #配置禁用gzip条件,支持正则,表示ie6以下不启用gzip
gzip_vary on; #选择支持very header 可以让前端的缓存服务器缓存经过gzip压缩页面
2.2、压缩配置
1、修改配置文件
vim /usr/local/nginx/conf/nginx.conf
//开启 gzip on; //在下面添加
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.1;
gzip_comp_level 6;
gzip_types text/plain application/x-javascript text/css image/jpg image/jepg image/png image/gif application/xml text/javascript application/x-http-php application/javascript application/json;
gzip_disable "MSIE [1-6]\.";
gzip_vary on;
//重启服务
service nginx restart
三、FPM 参数优化
Nginx 的PHP解析功能实现如果是交给FPM 处理的,为了提高PHP的处理速度,可对FPM 模块进行参数的调整。
1、首先安装带有 FPM模块的PHP 环境,保证PHP 可以正常运行;
2、FPM 进程有两种启动方式,由pm 参数指定,分别是 static 和dynamic,前者将产生固定的 fpm进程,后者将以动态的方式产生 fpm进程。
3、FPM优化参数讲解:
Static的方式的参数
pm.max_children: 指定启动的进程数量
Dynamic方式的参数
pm.max_children:指定启动的进程数量最大的数量
pm.start_servers:动态方式下初始的fpm进程数量
pm.min_spare_servers: 动态方式下最小的fpm空闭进程数
pm.max_spare_servers:动态方式下最大的fpm空闭进程数
vim php-fpm.conf
pid = run/php-fpm.pid
pm = dynamic
pm.max_children=20 //static模式下空闲进程数上限,大于下面的值;
pm.start_servers = 5 //动态方式默认开启的进程数,在最小和最大之间
pm.min_spare_servers = 2 //动态方式下最少空闲进程数
pm.max_spare_servers = 8 //动态方式下最大空闲进程数
上一篇:程序员必备储备资源网站
下一篇:webpack打包js文件
文章标题:Nginx优化深入-----更改进程数+网页压缩+FPM优化
文章链接:http://soscw.com/index.php/essay/81018.html