gpt4 book ai didi

java - 启用 GZIP 是 GWT 应用程序

转载 作者:行者123 更新时间:2023-12-02 09:18:37 27 4
gpt4 key购买 nike

我正在致力于有效负载优化。

在这里我读到compress your responses in to GZIP ,

所以我Configuring the CompressionFilter

并配置了以下过滤器来将我的响应压缩为 gzip,

<filter>  
<filter-name>compressionFilter</filter-name>
<filter-class>com.googlecode.webutilities.filters.CompressionFilter</filter-class>
<init-param>
<param-name>compressionThreshold</param-name>
<param-value>1024</param-value>
</init-param>
<init-param>
<param-name>ignoreMimes</param-name>
<param-value>images/*,video/*, multipart/x-gzip</param-value>
</init-param>

</filter>
<filter-mapping>
<filter-name>compressionFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

对于 js、html、css 等文件来说,它工作得很好。但是对于 Ajax 响应,我无法使其工作。

我正在使用 GWT RPC 调用,默认情况下是 gzip 响应,我的假设是它正在尝试再次 gzip,这已经是 gzip 响应并给了我异常(exception)。

StackOverFlow 甚至不允许粘贴 StackTrace。因此添加图像。

enter image description here

这方面有什么帮助吗?我缺少什么吗?

最佳答案

这不是您问题的解决方案,但它可以帮助解决有点不同的基本问题(为您的应用程序实现 gzip 压缩)...

如果可能的话,我会一直使用 Apache(或 nginx)作为前端服务器。关于 gzip 压缩 Apache 应该更快(gzip 的纯 C 实现)。请注意,除了 gzip 之外,此设置还提供了更多好东西:

  • 设置正确的缓存 header (例如 *.cache.html 文件)
  • 如果 Servlet 容器关闭,则传递错误页面
  • 通过前端服务器缓存/传递静态资源来减少 Servlet 容器要处理的请求数量
  • 您甚至可以使用静态资源的预 gzip 版本,以免一遍又一遍地压缩相同的内容(https://code.google.com/p/zopfli/ 有助于减少预 gzip 资源的大小)

当然还有更多优势,但我不是运维人员。

关于java - 启用 GZIP 是 GWT 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21902110/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com