【参考文章】:Spring boot开启Gzip压缩

【参考文章】:Accept-Encoding

  Spring 版本 :5.1.2-RELEASE

1. application.yml 配置

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

2. gzip

  gzip是一种编码格式;

  它是在一个文本文件中找出类似的字符串, 并临时替换他们,使整个文件变小。这种形式的压缩对Web来说非常适合, 因为HTML和CSS文件通常包含大量的重复的字符串,例如空格,标签等;

  HTTP 中的编码只针对于消息主体,头部信息始终以 ASCII 文本传输;

2.1 请求头

  Accept-Encoding:gzip,deflate

  Accept-Encoding 请求首部表明客户端支持哪些压缩的编码格式,用来进行内容编码格式的协商;

2.2 响应头

  Content-Encpding:gzip

  Content-Encpding 响应首部表明服务端对消息主体实际采用的编码格式;

  请求首部中包含 Accept-Encoding 信息时,只是表明客户端支持这些编码格式,并不强制要求服务端必须采用其中一种编码格式,即服务端可以不对消息主体进行压缩;

  如果服务端支持客户端其中一种或多种的压缩格式:

    若选择其中一种格式进行压缩,则在响应头部表明自己使用的压缩格式;

    若没有对消息主体进行压缩,则在响应头中不添加 Content-Encpding 信息即可;

  如果服务端不支持客户端的所有压缩格式,则对消息主体不进行压缩,且在响应头中不添加 Content-Encpding 信息即可;

  是否采用压缩算法要根据实际情况考虑,比如服务器的计算能力,数据的实际类型等等。

  比如 JPEG这种类型的图片已经是经过高度压缩的文件了,再进行压缩也不会使数据变小,就没有必要进行压缩操作了。

 

  

spring boot 下 开启 gzip的更多相关文章

  1. spring boot: @EnableScheduling开启计划任务支持,@Scheduled计划任务声明

    spring boot: @EnableScheduling开启计划任务支持, @Scheduled计划任务声明 package ch2.scheduler2; //日期转换方式 import jav ...

  2. spring boot下使用logback或log4j生成符合Logstash标准的JSON格式

    spring boot下使用logback或log4j生成符合Logstash标准的JSON格式 一.依赖 由于配置中使用了json格式的日志输出,所以需要引入如下依赖 "net.logst ...

  3. Spring Boot下Druid连接池+mybatis

      目前Spring Boot中默认支持的连接池有dbcp,dbcp2, hikari三种连接池.  引言: 在Spring Boot下默认提供了若干种可用的连接池,Druid来自于阿里系的一个开源连 ...

  4. 转-Hive/Phoenix + Druid + JdbcTemplate 在 Spring Boot 下的整合

    Hive/Phoenix + Druid + JdbcTemplate 在 Spring Boot 下的整合 http://blog.csdn.net/balabalayi/article/detai ...

  5. 【spring boot】10.spring boot下的单元测试

    spring boot下的单元测试,思前想后还是需要单独用一章篇幅来看看. 然后在看了介绍和使用时候,我感觉并不想多去看了. 但是还是给后来人留下参考的路径: 官网说明:https://spring. ...

  6. 【ActiveMQ】2.spring Boot下使用ActiveMQ

    在spring boot下使用ActiveMQ,需要一下几个条件 1.安装并启动了ActiveMQ,参考:http://www.cnblogs.com/sxdcgaq8080/p/7919489.ht ...

  7. Spring Boot下的一种导入Excel文件的代码框架

    1.前言 ​ Spring Boot下如果只是导入一个简单的Excel文件,是容易的.网上类似的文章不少,有的针对具体的实体类,代码可重用性不高:有的利用反射机制或自定义注解,开发了Excel导入工具 ...

  8. Spring Boot同时开启HTTP和HTTPS服务

    由于Spring Boot中通过编码开启HTTPS服务比较复杂,所以官方推荐通过编码开启HTTP服务,而通过配置开启HTTPS服务. Spring Boot的application.yml中添加如下配 ...

  9. Spring Boot下的lombok安装以及使用简介

    引言:lombok是一套代码模板解决方案,将极大提升开发的效率,这里介绍给大家使用. 1. Lombok lombok是一个可以通过简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 Java ...

随机推荐

  1. linux 目录结构及VIM

    目录结构及VIM 文件系统 说明: 文件系统就是操作管理存储设备或分区上的文件的方法和数据结构,也就是存储设备上组织文件的方式. 操作系统中负责管理和存储文件信息的软件机构叫文件管理系统,简称为文件系 ...

  2. Lab1 Report

    Lab1 report A) The brief description that you install junit, hamcrest and eclemma. a)  install junit ...

  3. jQuery EasyUI 应用 – 创建 CRUD 应用(表格)

    jQuery EasyUI 应用 - 创建 CRUD 应用 本节介绍如何创建CRUD应用. CRUD分别是指在做计算处理时的增加(Create).读取查询(Retrieve).更新(Update)和删 ...

  4. iPhone 11来了

  5. celery最佳体验

    目录 目录 不使用数据库作为 Broker 不要过分关注任务结果 实现优先级任务 应用 Worker 并发池的动态扩展 应用任务预取数 保持任务的幂等性 应用任务超时限制 善用任务工作流 合理应用 a ...

  6. Python学习记录6-list、tuple、dict、set复习

    数据类型在一门语言中是非常重要的,所以选择再次学习一下加深记忆.本次主要参考了大神廖雪峰的官方网站,非常感谢大神,讲的很清晰,收获很大. 标准数据类型 Number(数字) String(字符串) L ...

  7. asp.net 身份验证(Update)

    ASP.NET   有四种 身份验证, 用的最广的就是 Froms   这几天 做项目    想用到 配置文件, 比较了 MVC 和ASP.NET  发现 还是 MVC 给力(MVC 叫做 过滤器  ...

  8. 07_Redis_Sorted Set命令

    一:Redis 有序集合(sorted set):有序set集合,专门用来做排行榜 Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员 ------- (有序不重复) 不 ...

  9. CentOS7 - Package does not match intended download 问题解决

    yum 安装软件,有时会出现 Error: Package does not match intended download,这时需要彻底清除已有的下载,然后重新安装即可. $ sudo yum cl ...

  10. Educational Codeforces Round 33 (Rated for Div. 2) C题·(并查集变式)

    C. Rumor Vova promised himself that he would never play computer games... But recently Firestorm — a ...