Spring Boot gzip 压缩响应的大小小于配置的 min-response-size
Posted
技术标签:
【中文标题】Spring Boot gzip 压缩响应的大小小于配置的 min-response-size【英文标题】:Springboot gzip compressing responses having size less than min-response-size configured 【发布时间】:2019-03-26 05:40:07 【问题描述】:我正在尝试在我的 Springboot Rest API 中实现 Gzip 响应压缩
我在 application.properties 中使用以下配置
# Enable response compression
server.compression.enabled=true
# The comma-separated list of mime types that should be compressed
server.compression.mime-types=text/html,text/xml,text/plain,text/css,text/javascript,application/javascript,application/json
# Compress the response only if the response size is at least 10KB
server.compression.min-response-size=10240
响应压缩正在发生,但奇怪的是它也是大小低至 1KB 或 500B 的压缩响应,它不应该像 server.compression.min-response-size=10240
【问题讨论】:
fyi,根据documentation,你也可以写 10KB 而不是 10240 【参考方案1】:您确定查看的是接收到的文件的未压缩大小,而不是实际发送的压缩大小(如浏览器网络选项卡中所示)?
Web 服务器将检查磁盘上的文件大小是否超过 'server.compression.min-response-size' 并压缩它 - 这可能导致压缩文件低于设置的值?
一旦 CPU 完成了压缩文件的工作,发送未压缩版本就没有什么意义了。
【讨论】:
以上是关于Spring Boot gzip 压缩响应的大小小于配置的 min-response-size的主要内容,如果未能解决你的问题,请参考以下文章
Java如何在spring boot中启用gzip压缩并验证其生效
Spring Boot + Gzip 压缩超大 JSON 对象,传输大小减少一半!