- VarnishはWebサーバーの前にいます。キャッシュする逆httpプロキシとして機能します。
- 両方使用できます。
- 主に書き込み-Varnishは影響を受けるページを削除する必要があります。これによりオーバーヘッドが発生し、変更されたページにはほとんどメリットがありません。
- ほとんど読む-Varnishはおそらくそのほとんどをカバーするだろう。
- 同様の読み書き-Varnishは多くのページを提供し、Memcacheは既知のデータと新しいデータが混在するページの情報を提供して、ページをより速く生成できるようにします。
stackoverflow.comに当てはまる例:このコメントを追加するとページキャッシュが無効になるため、このページをVarnish(およびおそらく最初からキャッシュする価値のない私のプロファイルページ)からクリアする必要があります。すべて無効にすることを忘れないでください影響を受けるページは少し問題になることがあります)。ただし、すべてのコメントはまだMemcacheにあるため、データベースはこのコメントを書き込むだけで済みます。ページを生成するためにデータベースで他に何もする必要はありません。すべてのコメントはMemcacheによってプルされ、誰かが再び影響を与えるまで(おそらく私の回答に投票して)、ページは再キャッシュされます。繰り返しになりますが、データベースは投票を書き込み、他のすべてのデータはMemcacheからプルされ、寿命は速くなります。
Memcacheは多くの読み取り作業を行うことからDBを節約し、Varnishはページを生成する頻度を下げることで動的WebサーバーをCPU負荷から節約します(Memcacheでない場合はdbの負荷も少し軽減します)。