从零搭建开发脚手架 性能优化-1M带宽低配机,通过Gzip压缩Json、css、html等提升性能

本文介绍如何在SpringBoot应用中通过GZIP压缩减少JSON响应体大小,解决低配服务器带宽限制问题,优化log?page接口性能,以及CDN/OSS加速静态资源的应用实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

☎️ ☎️ ☎️ 已开源基于SpringBoot+Mybatisplus+Layui+SnakerFlow前后端分离轻量级工作流引擎的脚手架项目 easy-admin

前言

背景

在我的开源项目EasyAdmin中,服务器是2C2G1M带宽的低配入门机器,然后还部署了大大小小十几个服务,所以感觉比较卡。升级配置?对于我这个穷屌丝来说,那是没戏了,只能通过优化系统来提高性能了。

分析

可以先看下面的图

这里为了方便排查,我已经按照Time排序了,可以看到最耗时的是log?page这个接口,内部逻辑是查询数据库并返回json,图中是我已经优化过的,没优化的时候比这个慢很多,size6KB左右而不是现在的1.3KB

1M带宽实际上是128KB,有人测试过了,阿里云是不限制上传带宽,限制的是下载带宽,也就是这里下载速度最大是128KB/S.

所以就会想到利用GZIP去压缩下返回体大小。

作为文本数据,JSON 数据压缩得很好。它可以自动应用于发送和接收 JSON 的通用协议 HTTP。

配置

yaml配置如下:

server:
  compression:
    enabled: true
    mime-types: application/json,application/xml,text/html,text/xml,text/plain,application/javascript,text/css
    min-response-size: 1KB

min-response-siz :设置为 1,024 字节。这是因为如果我们压缩少量数据,我们可能会产生比原始数据更大的数据

不要想着在这里压缩图片和视频,这个只针对文本型,图片视频压缩可能比原文件还大

补充

除了使用服务器端压缩,还可以把图片、视频、JS、CSS等静态资源,利用CDN、OSS进行加速哦。

相当于把流量分到了CDN和OSS上,用以减轻我们1M带宽小水枪的压力哦

  • OSS
    • 图片
    • 视频
    • 音频等
  • CDN
    • layui
    • jquery
    • css等
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lakernote

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值