上节到sendfile 开启高效传输模式,以及tcp_nopush 的设置。
本次收获优化Nginx 连接参数,调整连接超时时间
(今天加班来11点多才回来,有点累,有点烦,今天就不看书了,明天补过来,罪过罪过)
什么是连接超时:
简单的来说就是将不用的连接设置超时,以保护服务器系统资源,保证充分利用服务器资源
nginx参数:
1、keepalive_timeout 60 ; 默认是75 秒,放置位置(http,server,location)
2、tcp_nodelay on ; 用来提高系统I/O性能
3、client_header_timeout 15; 客户端请求头信息数据相应时间
4、send_timeout 25; 用来客户端和服务段的互动时间。如果超过这个时间没有相应就会关闭链接
上传文件大小的限制
修改nginx主配置文件(http,server location)
client_max_body_size 8m; http的post请求数据时才会携带的请求主体。
FastCGI 相关参数优化
1.什么是Fastcgi ,没忘吧,是http服务器和php等动态脚本语言连接的接口,通过nginx,Fastcgi客户端请求后端php动态引擎服务。
各个配置字段的说明,没必要全背过,但是看见了一定要知道:
fastcgi_connect_timeout 代表nginx和后端cgi连接的超时时间,默认60秒,不要超过75
fastcgi_send_timeout cgi服务器向nginx 的返回时间,默认60
fastcgi_read_timeout nginx从cgi读取的相应超时时间。
fastcgi_buffer_size 缓冲区大小
fastcgi_temp_file_write_size cgi的临时大小,默认为128-256k
fastcgi_cache lishuo 为缓存区制定一个名称
fastcgi_cache_path 缓存区目录
fastcgi_cache_min_uses 表示请求几次后缓存
fastcgi_cache_use_stale 定义那些情况下使用过期缓存
2.fastcgi常见参数在nginx配置文件中的设置
在http字段中:
http {
fastcgi_connect_timeout 240;
fastcgi_send_timeout 240;
fastcgi_read_timeout 240;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffer_size 128k;
fastcgi_temp_file_write_size 128k;
fastcgi_temp_path /data/ngx_fcgi_tmp;
fastcgi_cache_path /data/ngx_fcgi_cache levels=2:2 keys_zone=ngx_fcgi_cache:512m inactive=1d max_size=40g;
server{
fastcgi_cache ngx_fcgi_cache;
fastcgi_cache_valid 200 302 1h;
fastcgi_cache_valid 301 1d;
fastcgi_cache_valid any 1m;
fastcgi_cache_use_stale error timeout invalid_header http_500;
fastcgi_cache_key http://$host$request_uri;
}
}
server 字段中使客户读取的cache缓存区,buffer为服务器缓冲区
配置nginx gzip压缩实现性能优化
特点: 提升用户访问体验,发送给用户的内容小了,自然页面也就访问快了
节省网络带宽
对象 : 应该是一些纯文本内容,例如html xml css
图片,视频什么的尽量不要压缩
参数介绍以及模块说明
nginx的gzip模块主要依赖与 nginx_http_gzip_module .默认已经安装
配置文件nginx
gzip on ; 开启gzip压缩功能
gzip_min_length 1k ;设置允许压缩的页面最小字节,是从header中的conten-length 中获取的,默认是0 建议设置为1k
gzip_buffers 4 16k; 压缩区缓存大小,表示4 个单位为16k的内存作为压缩结果流缓存
gzip_http_version 1.1; 压缩版本
gzip_comp_level 1 2 ; 压缩比例,用来制定压缩比,1压缩最小处理最快,9压缩比最大,传输快,但是占用cpu高
gzip_types text/css application/javascript text/xml ; 压缩类型,text/html 类型的总是被压缩
gzip_vary on ; vary header 支持
完整的配置:
gzip on ;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.1 ;
gzip_comp_level 1 2;
gzip_types txt/css application/javascript text/xml;
gzip_vary on l
nginx压缩配置效果检查
1.可以通过Firefox的yslow插件进行查看
2.重要的前端网站调试工具
Google浏览器的F12,亦可以安装yslow插件