Soru Hem bellek hem de disk depolama ile vernik çalıştırmak mümkün mü?


Yavaş değişen bir site için önbellek vuruşlarını ve verimliliği en üst düzeye çıkarmakla ilgileniyorum. Sanal sunucuda çok fazla RAM yok, ancak vernik için kullanılabilir olanı kullanmak istiyorum, ancak yeterli bellek yoksa disk önbelleğine geri dönmek istiyorum.

Bunu tek bir vernik örneğiyle yapmak mümkün mü? docs "dosya" ve "malloc" depolamasını farklı seçenekler olarak tanımlar.


7
2018-01-23 04:05


Menşei




Cevaplar:


Kullan malloc yöntem. Her şeyi RAM'e koymaya çalışacak ve eğer gerekliyse çekirdeği değiştirecek. Bu şekilde bellek ve diski birlikte kullanıyorsunuz.

Aynı zamanda file çok daha iyi performans malloc diske vurmaya başladığınızda. Daha fazla bilgi için bkz:


9
2018-01-23 04:17



Teşekkürler, bu çalışıyor. Ben sadece mevcut RAM ile malloc yöntemini kullanacağım ve disk önbelleğe almayı yapmak için sunucuya güveneceğim (örneğin, apache mod_disk_cache). - user67641
Vernik'i diğer bellek tabanlı arka uçlara takmanın bir yolu var mı? - CMCDragonkai
Tam tersini yapabileceğinizi unutmayın: sadece file backend ve varsayılan olarak tüm kullanılabilir belleği kullanan Linux disk önbellekleme güveniyor. Evet sen her zaman diske yazma (SSD kullanmıyorsanız bir sorun olabilir), ancak aynı dosyaları birden çok kez okurken, yalnızca bellekten çok şey okuyacaksınız. - Benjamin


Depolama alanını aşağıdaki gibi sıralamanız gerekir ve vcl ile kullanmak istediğiniz arka uç depolama alanını belirtirsiniz. beresp.storage = storage_name. .

Vernik 3. * işlem seçenekleri

DAEMON_OPTS="-a :80 \
             -T localhost:6082 \
             -f /etc/varnish/default.vcl \
             -S /etc/varnish/secret \
             -s foo=malloc,512m \
             -s bar=file,/var/lib/varnish/varnish_storage.bin,512m"

vcl v3

sub vcl_fetch {
    if (req.url ~ "html") {
       set beresp.storage = "foo";
       set beresp.http.x-storage = "foo";
    } else {
       set beresp.storage = "bar";
       set beresp.http.x-storage = "bar";
    }
    return (deliver);
}

Varnish v4 için resmi blog gönderisinin talimatlarını takip edebilirsiniz. https://www.varnish-software.com/blog/partitioning-your-varnish-cache


7
2018-01-11 18:40