Java 压缩HTTP响应?可能的

Java 压缩HTTP响应?可能的,java,http,zip,Java,Http,Zip,存在某个页面内容异常庞大的问题。在5到10兆的范围内 这是在服务器端使用Velocity和Java渲染的。显然可以压缩/压缩此响应,但在浏览器/客户端处理解压缩的合理方法是什么?它内置于大多数现代浏览器中。只要响应是某种文本或易于压缩的内容,那么您的请求/响应就必须更正标题 请求 接受编码:gzip,deflate 响应 内容编码:gzip 如果请求的Accept Encoding标头不包含gzip,那么显然不应该压缩它,因为客户端/浏览器无法处理它 一般来说,只要有意义,您应该gzip任何文本

存在某个页面内容异常庞大的问题。在5到10兆的范围内


这是在服务器端使用Velocity和Java渲染的。显然可以压缩/压缩此响应,但在浏览器/客户端处理解压缩的合理方法是什么?

它内置于大多数现代浏览器中。只要响应是某种文本或易于压缩的内容,那么您的请求/响应就必须更正标题

请求

接受编码:gzip,deflate

响应

内容编码:gzip

如果请求的Accept Encoding标头不包含gzip,那么显然不应该压缩它,因为客户端/浏览器无法处理它

一般来说,只要有意义,您应该gzip任何文本内容。如果资源是500字节而不是500字节,出于性能原因,这可能没有意义。 例如html、xml、json、javascript,您可以配置服务器、要压缩的文件类型以及大小限制

启用Gzip


我只想指出,如果响应很大,因为其中充满了JPEG和GIF,那么它们已经被压缩了。拉拉链没用。我也不确定PDF是否可以成功压缩。我认为未加密的PDF是可以压缩的(当然,除非它们都是压缩图像)。如果您的响应真的那么大,那么通过网络传输它将是您最不需要担心的问题。它应该被分解成更小的块,因为大多数浏览器都很难呈现如此巨大的文件。因此,通过内置管道传输一个巨大的压缩网页是这样的,浏览器会自动解压缩并显示网页,或者浏览器是否会显示一个弹出窗口,要求用户打开zip文件或将其保存到磁盘?@Tony Ennis这将传输客户端请求的任何资源,浏览器将自动解压缩该资源。请记住,查看单个网页通常会导致向服务器发出多个请求。对html页面的请求,以及对每个图像的请求,等等。对图像的请求是单独显示的,因此这是内联JS,仅限于此。输出显然是非常低效/大的。@ BBB205可能想考虑将JS放入单独的文件中,而不是内联,以利用GZIPPHIN +同时请求。我们优化这个怪物的第一个想法。这不是很容易,因为很多函数都是由带有速度变量的自定义名称组成的:(