升级到Varnish 6.4.0

从6.3升级到Varnish 6.4应该不需要对VCL进行任何更改。

本文档包含有关升级时应考虑的其他相关方面的信息。

华而不实

  • 的散列算法 hash 控制器已更改,因此升级时后端选择仅更改一次。

    的用户 hash 建议署长考虑使用 shard 而是Director,这除了其他优势外,还通过一致的散列提供了更稳定的后端选择。看见 VMOD导向器-Varnish导向器模块 了解更多细节。

  • 我们解决了一个案子 send_timeout 在从后端获取流时对HTTP/1连接没有影响,换句话说,连接可能没有关闭,尽管 send_timeout 已经被联系上了。HTTP/2未受影响。

    什么时候 send_timeout 在HTTP/1上到达时, MAIN.sc_tx_error 是增加的。具有长时间运行的后端获取和HTTP/1客户端的用户应注意该计数器与部署前相比是否会增加,并考虑增加 send_timeout 恰如其分。

    还可以为每个来自VCL的连接设置超时 sess.send_timeout

统计数据

  • 这个 MAIN.sess_drop 柜台不见了。如果存在任何统计信息收集工具,则应将其删除

  • sess.timeout_idle / timeout_idle 在HTTP/1上被访问通常会被计算到 MAIN.rx_timeout 统计数据。我们现在已经添加了 MAIN.rx_close_idle 专门针对这种情况的计数器。

  • sess.send_timeout / send_timeout 在过去,通过HTTP/1被访问时 MAIN.sc_rem_close 。这样的超时事件现在被解释为 MAIN.sc_tx_error

看见 Varnish计数器 了解更多细节。

VSL/日志

  • 这个 Process 的时间戳 vcl_synth {} 在调用VCL子例程之前错误地发出,现在它在VCL返回后发出,以与 vcl_deliver {}

    此时间戳的用户应该知道,它现在包括 vcl_synth {} 处理时间,并显示在日志中的不同位置。

  • A Notice 已添加VSL标签。

eof