GZIP压缩Tomcat并提升web性能过程图解

GZIP压缩Tomcat并提升web性能过程图解,第1张

GZIP压缩Tomcat并提升web性能过程图解

本文详细介绍了GZIP压缩Tomcat和改进web特性的过程。原文根据示例代码非常详细,对大家的学习培训或者工作都有一定的参考价值,朋友们一定要参考。

一.序言

最近开始了一个新项目,遇到了这样一个难题:服务器返回给客户端的json信息量非常大(65M左右),客户端加载一分钟就完成了3D渲染(自然这个加载时间也和本地下行带宽有关),耗时耗总流量,客户体验极差。之后网上搜索推广的方式就是Http压缩。

HTTP压缩可以进一步提高访问网站的速度。其基本原理是客户端向服务器请求匹配资源后,从服务器压缩资源文档,然后输出到客户端,由客户端的浏览器进行解压缩和访问。也就是说,响应时间随着HTTP响应大小的减少而减少。与一般的访问流程HTML、CSS、Javascript、Text相比,可以节省总流量的40%左右。最关键的是,它可以压缩动态形成的网页,包括CGI、PHP、JSP、ASP、Servlet、SHTML等。,压缩效率高。GZIP本身就是一种网络流量压缩优化算法,应用非常广泛。在本文中,apachetomcat8.0.47配备了GZIP压缩。使用浏览器MozillaFirefox35.0.1,内置Firebug进行调整。以下与互联网相关的截图来自Firebug控制面板。

二。Gzip压缩简介

1.GZIP压缩系统适用于http协议,也称为协议压缩。HTTPGZIP压缩是WEB服务器和浏览器之间的协议,换句话说,WEB服务器和浏览器都必须遵循它。目前流行的服务器和浏览器都适用于GZIP压缩技术。包括Chrome,IE,FireFox,Opera等。;有tomcat,Apache,IIS服务器。

2.GZIP主要用于压缩html、css、javascript等静态数据文本文档。也适用于动态形成的包含CGI、PHP、JSP、ASP、Servlet、SHTML等输出的网页。

3.gzip压缩的比例一般是3~10倍,可以大大节省服务器的服务器带宽,大大提高浏览器的访问速率。

4.GZIP是一种数据信息压缩文件格式,默认设置,现阶段只使用deflate优化算法压缩一部分数据;Deflate是一种压缩优化算法,是对霍夫曼数的改进。

5.协议压缩是按照HTTP协议进行压缩,而不是程来压缩和泄压数,它只是把压缩过程交给WEB服务器,泄压过程交给客户端。如果客户端是适合GZIP压缩的浏览器,那么减压的过程不需要程参与,浏览器会按照一定的标准自动解压;如果客户端是HttpClient,那么GZIP编码和解码必须手动执行。

6.压缩过程:客户端推送http请求。如果请求头有Accept-Encoding:GZIP,deflate(现在的浏览器默认设置都是那样的),那么浏览器的意思就是服务器必须进行GZIP压缩,然后就要看响应内容的类型是否必须由服务器进行压缩了。如果是,WEB服务器将压缩响应内容,并在发送之前在响应头中添加内容。如果不匹配,那么它将不会被压缩并立即返回到。

7.压力释放过程:(浏览器)客户端接收响应。如果响应头包括内容编码GZIP,浏览器将完全自动解压缩响应内容,然后显示在网页上。如果没有,会立即显示在网页上。

8.8.GZIP的缺陷.与没有GZIP的工程项目相比,GZIP的应用会增加服务器压缩的工作压力(cpu消耗)和客户端解压的工作压力,所以对服务器配置的要求更高。另外,压缩需要时间。如果你想占据更小的空间空,获得高压缩比,无疑要放弃很长一段时间。相反,如果时间宝贵,规定又快,那么个人收入的压缩比一定小,自然会占用更高的室内空室(压缩比=原始内容大小/压缩大小,压缩比越大,压缩后的压缩包在室内空室占用的空间越小),也就是物理室空。

三。tomcat中的配置方法

版本规定:Tomcat5.0以上更改%TOMCAT_HOME%/conf/server.xml并修复以下连接点:

<连接器port="8080"
protocol="HTTP/1.1"
connectiontimeout="20000"
redirectport="8443"
compression="on"
compressionminsize="2048"
noCompressionUserAgents="gozilla,Traviata"[br

主要参数表明:

1.compression="on"打开压缩。可选值:“开”为开,“关”为关,“强制”为开。

2.compressionMinSize="2048"只有大于2KB的文档才会被压缩。特定压缩企业B的最小数据信息大小是默认设置2048B。注意这个值的大小。如果设备不科学,不利的影响就是小文档压缩后变大,达不到预期的实际效果。

3.NOCompressionUserAgents="Gozilla,Traviata"。对于这两个浏览器,不进行压缩(不知道这两个浏览器是什么,百度搜索上也没找到)。它的数值正则表达式,带UA,不会轻易压缩。默认设置是空。

4.可压缩Mimetype="text/html,text/xml,application/JavaScript,text/css,text/plain,text/jsON"将要压缩的MIME类型的目录,用几个分号隔开,表示适用于html,xml,JS,css,jsON等格式的文件的压缩(plain没有文件格式,但鉴于现实是什么?)CompressableMimeType很重要。它用来告诉tomcat压缩哪种类型的文档。如果类别不正确,则无法压缩。那么,如何知道要压缩的文件属性呢?可以按照以下方式进行搜索。

四。检查设备是否成功

更改后重启tomcat,最后查看网址:http://seo.chinaz.com/?.Host=iitshare.com看实际效果

五、一般不正确(配备后无实际效果)[/s2/]

按照以下流程:

1.tomcat的主要参数填错了地方。注意设备的主要参数要写在下图中,A区而不是B区,是哪个连接器协议="HTTP/1.1"。

2.响应数据信息不是compressableMimeType参数配置的类型。我也遇到过这个坑。json用于传输新项目的前后左右端。所以我一开始以为是“text/json”,然后打开了Firebug的控制面板。Content-Type的原始值是“application/json”。参见图3。

3.响应数据信息的大小低于配备的compressionMinSize值。

附:推广结果

看到压缩比=65.6/8.4=7.810,时间比=96/16.2=5.926,已经很理想了。

文章里的内容就这些了。期待对大家的学习和培训有所帮助,也期待大家的应用。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/774548.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-03
下一篇 2022-05-03

发表评论

登录后才能评论

评论列表(0条)

保存