某然的一天调用自己写的接口发现返回的数据有点多,而且还有可能会更多,我在想有没有对返回值进行压缩的方式,结果就有了这篇博客,我用的是springboot,所以就在application.yml配置就可以了,nginx也可以配置压缩的,方式也类似,在nginx的配置文件进行配置。
server:
compression:
enabled: true
min-response-size: 2048
mime-types:
- text/html
- application/json
server tomcat的配置
compression:中文翻译是压缩的意思
enabled: true 开启压缩
min-response-size: 2048 ,单位是byte,转换下2048byte=2kb,所以数据大于等于2kb才压缩,官方默认也是2kb。
noCompressionUserAgents :这个配置也可以指定哪个浏览器不启用压缩。
字节转换工具--
mime-types:进行压缩的文件类型,我这里只写了两种做测试,其实可以支持很多的类型,自己需要什么填什么
测试一下结果:
没压缩前size大小是64.6kb。
压缩后是7.9kb,很明显size大小小了很多
压缩的优点:能大大减少网络传输量,页面加载速度加快。
缺点:压缩会有一定的CPU性能损耗。
需要自己测试业务中是否真的需要