spring boot使用GZIP压缩
程序员文章站
2024-03-13 23:31:04
...
1.gzip介绍
gzip是一种数据格式,采用用deflate算法压缩data;gzip是一种流行的文件压缩算法,应用十分广泛,尤其是在Linux平台。
2.gzip能力
当Gzip压缩到一个纯文本文件时,效果是非常明显的,大约可以减少70%以上的文件大小。
3.gzip作用
网络数据经过压缩后实际上降低了网络传输的字节数,最明显的好处就是可以加快网页加载的速度。网页加载速度加快的好处不言而喻,除了节省流量,改善用户的浏览体验外,另一个潜在的好处是Gzip与搜索引擎的抓取工具有着更好的关系。例如 Google就可以通过直接读取gzip文件来比普通手工抓取 更快地检索网页。
4.HTTP协议中关于压缩传输的规定
- 客户端向服务器请求中带有:Accept-Encoding:gzip, deflate 字段,向服务器表示,客户端支持的压缩格式(gzip或者deflate),如果不发送改消息头,服务器是不会压缩的。
- 服务端在收到请求之后,如果发现请求头中含有Accept-Encoding字段,并且支持该类型的压缩,就对响应报文压缩之后返回给客户端,并且携带Content-Encoding:gzip消息头,表示响应报文是根据该格式压缩过的。
- 客户端接收到请求之后,先判断是否有Content-Encoding消息头,如果有,按该格式解压报文。否则按正常报文处理。
5.在spring boot中开启gzip
在application.properties
中加入如下配置即可
server.compression.enabled=true
server.compression.mime-types=application/json,application/xml,text/html,text/xml,text/plain
6.在feign中开启gzip
若已在spring boot项目中开启gizp(如上配置),则无需再对feign进行配置
server.compression.enabled=true
server.compression.mime-types=application/json,application/xml,text/html,text/xml,text/plain
推荐阅读
-
spring boot使用GZIP压缩
-
Java GZIP压缩的使用
-
使用GZIP动态压缩Extjs
-
使用gzip压缩extjs文件
-
使用GZIP动态压缩Extjs
-
gin使用gzip压缩
-
Spring Boot 使用Undertow代替tomcat作为内嵌web容器 博客分类: spring boot 实践笔记 spring boot undertow
-
Spring Boot 使用jta管理多数据源分布式事务 博客分类: spring boot 实践笔记 spring boot多数据源分布式事务
-
spring boot开发web api应用实践(三)使用proxool连接池 博客分类: spring boot 实践笔记 spring bootproxool
-
Spring Boot 使用Undertow代替tomcat作为内嵌web容器 博客分类: spring boot 实践笔记 spring boot undertow