nginx-性能优化配置

Posted dingwen_blog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx-性能优化配置相关的知识,希望对你有一定的参考价值。

性能优化配置

1. 高效文件传输模式

[!NOTE]

参数sendfile on 用于开启文件高效传输模式,同时将tcp_nopush on 和tcp_nodelay on 两个指令设置为on,可防止网络及磁盘I/O阻塞,提升nginx工作效率。

#开启高效文件传输模式
sendfile on;
#减少网络报文段数量
tcp_nopush on;
#提高I/O性能
tcp_nodelay on;

2. gzip

[!NOTE]

Nginx开启Gzip压缩功能, 可以使网站的css、js 、xml、html 文件在传输时进行压缩,提高访问速度, 进而优化Nginx性能! Web网站上的图片,视频等其它多媒体文件以及大文件,因为压缩效果不好,所以对于图片没有必要支压缩,如果想要优化,可以图片a的生命周期设置长一点,让客户端来缓存。 开启Gzip功能后,Nginx服务器会根据配置的策略对发送的内容, 如css、js、xml、html等静态资源进行压缩, 使得这些内容大小减少,在用户接收到返回内容之前对其进行处理,以压缩后的数据展现给客户。这样不仅可以节约大量的出口带宽,提高传输效率,还能提升用户快的感知体验, 一举两得; 尽管会消耗一定的cpu资源,但是为了给用户更好的体验还是值得的。

经过Gzip压缩后页面大小可以变为原来的30%甚至更小,这样,用户浏览页面的时候速度会快得多。Gzip 的压缩页面需要浏览器和服务器双方都支持,实际上就是服务器端压缩,传到浏览器后浏览器解压并解析。浏览器那里不需要我们担心,因为目前的巨大多数浏览器 都支持解析Gzip过的页面。

**Gzip压缩作用:**将响应报⽂发送⾄客户端之前可以启⽤压缩功能,这能够有效地节约带宽,并提⾼响应⾄客户端的速度。Gzip压缩可以配置http,server和location模块下。

gzip on;                     #开启gzip压缩功能gzip_min_length 10k;         #设置允许压缩的页面最小字节数; 这里表示如果文件小于10个字节,就不用压缩,因为								没有意义,本来就很小.gzip_buffers 4 16k;          #设置压缩缓冲区大小,此处设置为4个16K内存作为压缩结果流缓存gzip_http_version 1.1;       #压缩版本gzip_comp_level 2;           #设置压缩比率,最小为1,处理速度快,传输速度慢;9为最大压缩比,处理速度慢,传							  输速度快; 这里表示压缩级别,可以是0到9中的任一个,级别越高,压缩就越小,节省							   了带宽资源,但同时也消耗CPU资源,所以一般折中为6gzip_types text/css text/xml application/javascript;      #制定压缩的类型,线上配置时尽可能配置多的压缩															类型!gzip_disable "MSIE [1-6]\\.";       #配置禁用gzip条件,支持正则。此处表示ie6及以下不启用gzip(因为ie低版									本不支持)gzip_vary on;    #选择支持vary header;改选项可以让前端的缓存服务器缓存经过gzip压缩的页面; 这个可以不写,				   表示在传送数据时,给客户端说明我使用了gzip压缩

2.1 gzip_types

类型参考: MIME 参考手册

总结

实测,文件上传速度提升近9倍。

以上是关于nginx-性能优化配置的主要内容,如果未能解决你的问题,请参考以下文章

Nginx 性能优化(配置文件详解)

nginx配置 之 性能优化

nginx配置性能优化

nginx-性能优化配置

nginx-性能优化配置

nginx-性能优化配置