nginx通过压缩json的大小,提高访问速度

最近自己搞了个项目,但是发现返回的json的数据很大,大概接近500KB,每次请求大概需要接近2S,对于一个web项目是无法容忍的?怎样解决这个问题那?压缩json大小还是改造项目那?

  通过查阅资料,发现nginx提供gzip压缩,通过压缩可以减少json的大小

我们看一下效果如下:
在这里插入图片描述

1、大小又接近500KB降低到25.2KB
2、请求时长又1.7-2S之间降低到166MS左右

具体配置

    gzip  on;

    gzip_min_length  102480;

    gzip_buffers     4 8k;

    gzip_types       text/plain application/x-javascript text/css application/xml application/json;

这里主要说一下,gzip_types一定要加上“application/json”。

代码改造
在接口请求返回信息的头部需要接口加入content-type,这样nginx才能实现压缩

header('Content-type: application/json;charset=utf-8');
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
为了提高nginx访问速度,可以采取以下几个方法: 1. 启用sendfile:在nginx的配置文件中,可以开启sendfile选项。这个选项可以直接将文件从磁盘复制到网络,避免了通过用户空间缓冲区的复制过程,从而提高了性能。 2. 启用gzip压缩:可以使用nginxgzip模块来启用gzip压缩功能。当客户端请求的资源可以进行gzip压缩时,nginx会将资源压缩后再发送给客户端,减少传输的数据量,从而提高访问速度。 3. 使用缓存:可以使用nginx的代理缓存功能来缓存经常访问的静态资源,如图片、CSS和JS文件。当客户端再次请求这些资源时,nginx会直接从缓存中返回,而不需要再去后端服务器获取,从而提高访问速度。 4. 调整worker_processes和worker_connections:可以根据服务器的性能和负载情况,适当调整worker_processes和worker_connections参数。worker_processes指定nginx的工作进程数,可以根据服务器的CPU核心数进行设置;worker_connections指定每个工作进程的最大连接数,可以根据服务器的内存和负载情况进行设置。 5. 配置TCP优化:可以通过修改操作系统的TCP参数来优化nginx的网络性能。例如,可以增加TCP的接收和发送缓冲区大小,调整TCP的拥塞控制算法等。 通过以上方法,可以有效地提高nginx访问速度,提升网站的性能和用户体验。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [如何优雅的使用 Nginx 缓存机制将网站访问速度提高 10 倍](https://blog.csdn.net/easylife206/article/details/120540331)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Nginx优化](https://blog.csdn.net/weixin_67510296/article/details/125070234)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值