- Lack wird vor dem Webserver; Es funktioniert als Reverse-HTTP-Proxy, der zwischenspeichert.
- Sie können beide verwenden.
- Meistens schreiben - Varnish muss betroffenen Seiten gereinigt haben. Dies führt zu einem Overhead und wenig Nutzen für geänderte Seiten.
- Meist gelesen - Varnish wird wahrscheinlich das meiste davon abdecken.
- Ähnliche lesen & schreiben - Varnish wird eine Menge der Seiten für Sie dienen, Memcache liefert Informationen für Seiten, die eine Mischung aus bekannten und neuen Daten haben, damit Sie Seiten schneller erstellen können.
Ein Beispiel, das auf stackoverflow.com anwenden könnte: das Hinzufügen dieses Kommentar die Seiten-Cache für ungültig erklärt, so dass diese Seite würde von Varnish gelöscht werden (und auch meine Profilseite, die wahrscheinlich nicht wert Caching zu beginnen Die Erinnerung daran, alle betroffenen Seiten ungültig zu machen, kann ein kleines Problem darstellen. Alle Kommentare befinden sich jedoch immer noch in Memcache, sodass die Datenbank nur diesen Kommentar schreiben muss. Die Datenbank muss nichts anderes tun, um die Seite zu generieren. Alle Kommentare werden von Memcache gezogen, und die Seite wird erneut zwischengespeichert, bis jemand sie wieder beeinflusst (vielleicht indem ich meine Antwort abstimme). Auch hier schreibt die Datenbank die Abstimmung, alle anderen Daten werden aus Memcache gezogen und das Leben ist schnell.
Memcache speichert Ihre Datenbank vor viel Lesearbeit, Varnish speichert Ihren dynamischen Webserver vor der CPU-Last, indem er Seiten seltener generiert (und die db-Last etwas aufhebt, wenn nicht für Memcache).
+1 ausgezeichnete Antwort. – AlienWebguy
Landkarten, danke! – Silopolis
dies: "(vielleicht durch meine Antwort zu stimmen)" ließ mich Ihre Antwort – Cesc