linux 性能调优
2020-11-17 11:28 虎背熊腰 阅读(117) 评论(0) 收藏 举报一:tcp系统配置:
tcp_sync_reuse
tcp_fin_time_wait
tcp-synccookie
tcp_syn_retries
二:nginx 基本配置如下
worker_processes auto//auto 表示和CPU内核(线程数)相关,有几个内核,就会开启几个进程
worker_cpu_affinity auto;
error_log logs/error.log;
events {
use epoll;
accept_mutex on;
multi_accept on;//nginx 惊群
worker_connections 20480;
}
sendfile on;//文件传输零拷贝
tcp_nopush on;
#告诉nginx在一个数据包里发送所有头文件,而不一个接一个的发送
tcp_nodelay on;
#告诉nginx不要缓存数据,提高nginx的数据响应速度。发送一小块数据信息时就能立即得到返回值
keepalive_timeout 30;
#keepalive超时时间,30或者更短一点都可以。
client_header_timeout 10;
client_body_timeout 10;
#设置请求头和请求体(各自)的超时时间。
reset_timedout_connection on;
#及时关闭不响应的客户端链接,释放其资源。
send_timeout 10;
#指定客户端的超时时间。
limit_conn_zone $binary_remote_addr zone=addr:5m;
#设置用于保存各种key(比如当前连接数)的共享内存的参数
limit_conn addr 50;
#设置单个IP的最大连接数。注意 这个参数是会影响你本地ab测试的,你测试的时候并发数会被限制。
gzip on;
gzip_min_length 1k;
#大于1K才压缩
gzip_buffers 4 8k;
gzip_comp_level 4;(4-6)
三:设置php-fpm重要参数:
pm = dynamic【内存足够设置静态模式】
#选择进程模式为动态,以下第一个参数失效,后面三个参数生效。如果选择static(静态),则只有以下第一个参数生效(pm.max_children)
pm.max_children = 200
#静态模式时的固定子进程数
pm.start_servers = 1
#动态模式下起始进程数
pm.min_spare_servers = 1
#动态模式下允许的最小空闲进程。
pm.max_spare_servers = 10
#动态模式下允许的最大空闲进程。
四:设定一个预期目标压测系统[系统单核负载不能0.7,大于则会造成响应延迟,无意义]
top 观察系统负载,和vmstat,iotop 观察情况
五:xhprof 【lstrace】分析php代码执行过程找出优化点
浙公网安备 33010602011771号