使用Gzip压缩数据,加快页面访问速度

Posted zeng1994

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Gzip压缩数据,加快页面访问速度相关的知识,希望对你有一定的参考价值。

             在返回的json数据量大时,启用Gzip压缩,可以提高传输效率。下面为Gzip压缩对json字符串压缩并输出到页面的代码。

一、代码

  1. /** 向浏览器输出字符串响应数据,启用gzip压缩 */
  2. protected void writeResponseDataStr(String data){
  3. /** 获取响应对象 */
  4. HttpServletResponse response = ServletActionContext.getResponse();
  5. /** 设置响应内容类型 */
  6. response.setContentType("text/html;charset=utf-8");
  7. try {
  8. /** 告诉浏览器,服务器响应的数据是用GZIP压缩的 */
  9. response.setHeader("Content-Encoding", "gzip");
  10. //GZIP压缩的原理是:将数据全部压缩进内存输出流中,再从将内存输出流中的数据输出
  11. /** 创建内存输出流的容器 */
  12. ByteArrayOutputStream bos = new ByteArrayOutputStream();
  13. /** 创建GZIP压缩对象 */
  14. GZIPOutputStream gzip = new GZIPOutputStream(bos);
  15. /** 进行压缩 */
  16. gzip.write(data.getBytes("utf-8"));
  17. gzip.flush();
  18. gzip.close();
  19. /** 向浏览器输出响应数据 */
  20. response.getOutputStream().write(bos.toByteArray());
  21. } catch (IOException e) {
  22. e.printStackTrace();
  23. }
  24. };

以上是关于使用Gzip压缩数据,加快页面访问速度的主要内容,如果未能解决你的问题,请参考以下文章

使用nginx 压缩

nginx 如何利用gzip压缩配置来优化网站访问速度

Easyui 页面訪问慢解决方式,GZIP站点压缩加速优化

Apache网页优化:网页压缩,网页缓存(内含源码包与抓包工具)

如何使用Gzip压缩独立站大幅提高页面加载速度?

Tomcat7中开启gzip压缩功能的配置方法