nginx管理配置优化

不言
Lepaskan: 2023-03-25 15:38:02
asal
1785 orang telah melayarinya

这篇文章主要介绍了关于nginx管理配置优化,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

nginx优化

优化思路
这里写图片描述

基本优化

1、调整参数隐藏nginx软件版本号信息

server_tokens off;
Salin selepas log masuk

2、更改nginx服务默认用户

user nginx nginx;
Salin selepas log masuk

3、优化nginx服务的worker进程个数

worker_processes cpu*核数;
Salin selepas log masuk

4、优化绑定不同的nginx进程到不同的cpu上

worker_cpu_affinit 0001 0010 0100 1000 0001 0010 0100 1000;
Salin selepas log masuk

5、nginx时间处理模型优化

use epoll
Salin selepas log masuk

6、调整单进程最大连接数

worker_connections 20480;
Salin selepas log masuk

7、nginx work进程最大打开文件数

worker_rlimit_nofile 65535;
Salin selepas log masuk

8、开启高效文件传输模式

sendfile on;
Salin selepas log masuk

用于开启文件的高效传输模式,同时将tcp_nopush和tcp_nodelay两个指令设置为on,可以防止网络及磁盘I/O阻塞,提升nginx工作效率。
9、优化连接超时时间

keepalive_timeout 0;          //结束响应后立即断开tcp连接。
Salin selepas log masuk

10、fastCGI优化

11、配置nginx gzip压缩实现性能优化

gzip on;
gzip_min_length 1k;
gzip_buffers 4 32k;
gzip_comp_level 9;
gzip_vary on;
Salin selepas log masuk

12、配置nginx expires缓存实现性能优化

nginx expires 3650d;
Salin selepas log masuk

13、nginx日志相关优化与安全
14、根据拓展名限制程序和文件访问。

dell all;allow all;
Salin selepas log masuk

15、防盗链

HTTP referer
Salin selepas log masuk

系统层面优化

1、系统层面优化

echo 500000 > /proc/sys/net/core/somaxconn  //设置最大连接数
echo 1 > /proc/sys/net/ipv4/tcp_tw_recycle  //加快tcp回收
echo 1 > /proc/sys/net/ipv4/tcp_tw_reuse    //空的tcp允许回收利用
echo 0 > /proc/sys/net/ipv4/tcp_syncookies  //关闭洪水抵御
Salin selepas log masuk

2、nginx&php-fpm优化配置
nginx将请求转发给php-fpm处理,当nginx转发很多请求时,php-fpm进程不够用,就会生成子进程。
然而生成子进程需要内核来调度,比较耗时。
如果网站并发比较大,可以用静态方式一次性生成多个子进程,保持的内存中。
修改phjp-fpm.conf

pm=static //让php-fpm进程始终保持,不需要动态生成pm.max_children=32 始终保持的子进程数量
Salin selepas log masuk

3、php&mysql优化
内核层面:加大连接数,加快tcp回收
mysql层面:增大连接数
php层面:用长连接,节省连接数
用内存缓存(memcached),减轻mysql压力
注意
内存缓存适用于缓存复杂的sql查询。因为phpmemcached也要建立tcp连接,所以简单的sql查询不需要用缓存。


Atas ialah kandungan terperinci nginx管理配置优化. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!