在我负责的 Varnish 6 服务器中,短时间内出现了大量禁令。这是由于我无法修改的应用程序造成的。这导致 RAM 使用量迅速膨胀,失控,但我可以通过将其设置ban_cutoff
为 100 来解决这个问题。这似乎很有效。RAM 使用量现在得到了很好的控制。
但是,bans_persisted_bytes
每次爆发时内存仍然会快速增长,似乎根本没有下降的迹象。在我写这篇文章时,内存大约为 29GiB,但主机(Debian Bullseye 机器)的总内存使用量约为 1.6 GiB。
我应该担心 的大小bans_persisted_bytes
吗?毕竟,它似乎没有使用 RAM。但我不得不怀疑,如果不是 RAM 使用率,这个值意味着什么。
我希望有人能解释一下这个问题。TIA!
答案1
答案2
我的以下答案不正确。请参考已接受的答案。
为了回答我自己的问题,我仔细阅读了 Varnish 6.1 的源代码。Varnish 7.2 似乎也一样。有两个地方的值bans_persisted_bytes
发生了变化,并且在这两种情况下都会添加一个保证为零或更大的值。
这意味着无论禁令名单有多大,该值bans_persisted_bytes
都不会减少,因此应被视为累积值。
鉴于设置截止值可以成功抑制内存占用,我认为我可以有把握地得出结论,该值的增长bans_persisted_bytes
实际上无需担心。