gpt4 book ai didi

varnish4 与 varnish3 - 优雅行为

转载 作者:行者123 更新时间:2023-12-03 17:46:06 24 4
gpt4 key购买 nike

我目前正在从事从varnish3到varnish4的迁移项目,
我正面临一种我不了解的行为。

简而言之,使用在Varnish3中使用的相同配置文件
和Varnish4,关于命中率和未命中率我没有相同的结果。

这似乎与grace属性有关,但我不知道如何
有用。

因此,下面是一个详细描述问题的示例:

我的varnish3配置:

# ----------------------------------------------
backend default {
.host = "nginx";
.port = "80";
}

sub vcl_fetch {
set beresp.grace= 5s;
set beresp.ttl = 1s;
}

sub vcl_deliver {
if (obj.hits > 0) {
set resp.http.X-Cache = "HIT";
} else {
set resp.http.X-Cache = "MISS";
}
set resp.http.X-Cache-Hits = obj.hits;
}
# ----------------------------------------------

我的varnish4配置:(唯一的变化是方法名称
vcl_backend_response而不是vcl_fetch)
# ----------------------------------------------
vcl 4.0;

backend default {
.host = "nginx";
.port = "80";
}

sub vcl_backend_response {
set beresp.grace= 5s;
set beresp.ttl = 1s;
}

sub vcl_deliver {
if (obj.hits > 0) {
set resp.http.X-Cache = "HIT";
} else {
set resp.http.X-Cache = "MISS";
}
set resp.http.X-Cache-Hits = obj.hits;
}
# ----------------------------------------------

检索给定资源 header 的小场景的结果
一段时间后:
# ----------------------------------------------
Time 14-47-12
VARNISH4:
X-Cache: MISS
X-Cache-Hits: 0
VARNISH3:
X-Cache: MISS
X-Cache-Hits: 0

Time 14-47-13
VARNISH4:
X-Cache: HIT
X-Cache-Hits: 1
VARNISH3:
X-Cache: MISS
X-Cache-Hits: 0

Time 14-47-20
VARNISH4:
X-Cache: MISS
X-Cache-Hits: 0
VARNISH3:
X-Cache: MISS
X-Cache-Hits: 0
# ----------------------------------------------

因此,如您在场景中所见,对于第一个请求,v3和v4
返回MISS,这是正常的。
但是一秒钟后,第二个请求返回varnish3的MISS,
对我来说是正常的,对varnish4来说是HIT,这是我真正不了解的。
由于我怀疑这与grace参数有关,因此我添加了一个
我的场景中的第三个请求在7秒后(对于缓存,响应时间超过1秒)
加上5秒的宽限期),以及预期的 Varnish 3和 Varnish 4
是小姐。

因此,如果有人可以帮助我了解/解决此问题...
我的目标是使用varnish4获得与使用varnish4相同的结果
varnish3(当我从3迁移到4时;)。
我当前的解决方法是在varnish4上设置beresp.grace = 1ms,但是我没有
完全像这样,我不能在每个配置中都做到这一点:(

任何帮助将不胜感激!

提前致谢 ! :)

最佳答案

Varnish 4 在第二个请求中提供了一个陈旧的对象(参见 How objects are stored )。

我建议你阅读 Grace mode ,然后玩 Understanding Grace using varnishtest

关于varnish4 与 varnish3 - 优雅行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47073608/

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