获取Varnish中每个域的内存使用情况

时间:2019-05-23 14:39:08

标签: linux memory varnish

我的服务器上有一个Varnish缓存,并且有5个不同的域。我可以使用varnishstat和top获得Varnish的总内存使用情况。但是我想知道Varnish中每个域占用了多少内存?

2 个答案:

答案 0 :(得分:1)

这不会为您提供确切的内存,而是每个域的缓存使用情况。

运行varnishd,指定多个存储空间:

varnishd -s domain1=malloc,1G -s domain2=malloc,2G ...

在您的VCL中,根据域设置存储空间:

sub vcl_backend_response {
    if (bereq.http.host == "domain1.example.com") {
        set beresp.storage = domain1;
    } else if {
        set beresp.storage = domain2;
    }
}

然后您可以使用:

varnishstat  -1 -f SMA.domain1.g_bytes -f SMA.domain1.g_space
varnishstat  -1 -f SMA.domain2.g_bytes -f SMA.domain2.g_space

查看每个商店已使用(g_bytes)和可用空间(g_space)的空间。

答案 1 :(得分:0)

除非您在一个单独的清漆过程中运行每个域,否则没有可用的方法可以按域进行拆分