Pages

Webキャッシュサーバー―Varnish

2014年6月25日水曜日

Varnishは高負荷な動的サイト向けの高性能HTTPアクセラレータです。FreeBSDの有力開発者であるPoul Henning-Kampによって書かれた。他の多くのHTTPアクセラレータはクライアントサイドのプロキシやWebサーバとして開発が始まったのに対して、VarnishはゼロからHTTPアクセラレータとして設計された。VarnishはSquid cacheより10~20倍高速であると公式サイトには書かれている。

Varnishは、VCLという設定ファイルの記述方法において、下記のような特徴があります。
  • 設定ファイルの動的読み込み
  • インラインCによる設定
  • Varnish Modules(VMODs)による拡張
  • probeによるオリジンサーバのヘルスチェック

まず、Varnish CacheではVCLで記述された設定ファイルをC言語として解釈します。設定をC言語として解釈した後に設定ファイルをコンパイルし、共有ライブラリを作成します。最終的には、Varnish Cacheが設定ファイルから生成された共有ライブラリをリンクすることで、設定が反映されます。このような実装により、Varnish Cacheではプログラムを作成する感覚で、柔軟性に富んだ設定ファイルを作成できます。また、コンパイルした結果をリンクさせているため、全体的に速度向上を期待できるというメリットもあります。

更に、Varnish Cacheでは様々なツールが提供されており、ソースコードからコンパイルしただけで、キャッシュのヒット率やCLIによるコンソールなどが使用できます。

ただし、他のキャッシュサーバプロダクトではキャッシュの永続性が保たれるのに対し、Varnish Cacheではキャッシュの永続性が保たれません。つまり、Varnish Cacheではプロセスの再起動が発生すると、直前まで貯めていたキャッシュを忘れてしまいます。仮にキャッシュストレージでpersistentを指定していたとしても、ある特定の場合しかキャッシュが保持されないため、再起動前後にキャッシュは保持されなくなると考えていたほうが無難です。

ホームページ

https://www.varnish-cache.org/

0 件のコメント:

コメントを投稿

 

OpenSource Software

人気投稿