首页 > 解决方案 > Jetty 9.4 中的 GzipHandler - 增加等待时间

问题描述

最近我们从 Jetty 9.0 切换到 Jetty 9.4。Jetty 9.4 带有 GzipHandler,所以我们使用了它。在请求处理时,我们清除响应以提前将(链接)标头发送回浏览器,这样做response.flushBuffer()是有目的的。在 jetty 9.0 的 GzipFilter 响应曾经被立即刷新,但在 GzipHandler 中它不会立即被刷新。这导致浏览器中的等待时间增加,因为在浏览器端接收标头的时间很晚。我想知道我们如何才能在 Jetty9.4 的 GzipHanlder 中立即刷新此响应?

顺便说一句 - 我们在这里谈论 ~40Ms 等待增加了等待时间!

标签: spring-bootspring-mvcjettyembedded-jettyjetty-9

解决方案


这是一个GzipHandler与清空初始缓冲区相关的错误(在尝试发送任何数据之前的清空)。

问题https://github.com/eclipse/jetty.project/issues/4835已关闭。

该修复程序存在于 Jetty 9.4.29.v20200521(现在可在https://eclipse.org/jetty/和 maven central 上使用)


推荐阅读