Nginx优化深入-----更改进程数+网页压缩+FPM优化
文章目录
一、更改进程数
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 //动态方式下最大空闲进程数
相关推荐
nginxs 2020-11-14
Guanjs0 2020-11-13
小木兮子 2020-11-11
yserver 2020-11-11
ssihc0 2020-11-11
windle 2020-11-10
HanksWang 2020-11-10
liuchen0 2020-11-10
Freshairx 2020-11-10
ccschan 2020-11-10
liwf 2020-11-10
Guanjs0 2020-11-09
AderStep 2020-11-09
zrtlin 2020-11-09
mqfcu 2020-11-10
windle 2020-10-29