選択したニスのキャッシュサイズが理想的かどうかを確認する方法は?


20

以下を使用して、512 MBのキャッシュサイズを使用するようにニスキャッシュを構成しました。

varnishd ... -s file,/var/cache/varnish.cache,512M

質問:

  • 512 MBが小さすぎる、大きすぎる、または大丈夫かどうかを監視するにはどうすればよいですか?
  • キャッシュの現在の使用サイズを取得するにはどうすればよいですか?
  • キャッシュがいっぱいになったためにオブジェクトがキャッシュから削除される頻度を確認するにはどうすればよいですか?

回答:


18

私は解決策を見つけました:

を実行することで、Varnishが割り当てた最大キャッシュサイズ(この場合は512 MB)を監視できvarnishstatます。次に、「割り当てられたバイト数」と「空きバイト数」の出力行を探します。

次の関係が成り立ちます。

Command line configuration of max size = [bytes allocated] + [bytes free]

「空きバイト」のサイズに応じて、キャッシュサイズを微調整して適切なレベルを見つけることができます。


14
監視するさらに良い指標は「n_lru_nuked」(varnishstat -1 -f n_lru_nuked)です。これは、キャッシュから削除されたオブジェクトの数を示します。
knorv

1
varnishstat -f SMF.s0.c_bytes、SMF.s0.g_space
choonkeat

15

時計のn_lru_nukedカウンターを。増加するたびに、Varnishはストレージが不足しているため、キャッシュから何かをスローします。

理想的には、キャッシュからものを追い出すことは通常、それを再フェッチする必要があることを意味するため、LRUカウンターをまったく増加させたくないでしょうが、テールが長い場合、LRUを避けることはできません。


どういうif your tail is long意味ですか?
cherouvim

この文脈では、ほとんど使用されないアイテムがキャッシュに格納され、すべてのキャッシュメモリを占有する場合を意味すると思います。この概念への参照です:en.wikipedia.org/wiki/Long_tail
cam8001

1

すべてのデータがキャッシュに収まると予想しない限り、キャッシュヒットとキャッシュミスの比率を調べます。収益は減少します。キャッシュを2倍にすると、ミス率が半減する可能性があります。これは、リクエストの半分がキャッシュされていない場合に大きな勝利であり、90%の場合はそうではありません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.