2008-09-25 17 views

Antwort

5

Hohe Verfügbarkeit ist gut, und memcached wird Ihren Cache automatisch auf die 4 Server verteilen. Wenn einer dieser Server aus irgendeinem Grund ausfällt, können Sie diesen Fehler behandeln, indem Sie einfach so weitermachen, als ob der Cache leer wäre, auf einen anderen Server umleiten oder eine beliebige benutzerdefinierte Fehlerbehandlung durchführen. Wenn Ihr 1x 2GB Server ausfällt, sind Ihre Möglichkeiten ziemlich begrenzt.

Die wichtige Sache zu erinnern ist, dass Sie nicht 4 Kopien Ihres Caches haben, es ist 1 Cache, aufgeteilt unter den 4 Servern.

Der einzige Nachteil ist, dass es einfacher ist, von 4x .5 als von 1x 2gb Speicher zu leben.

+1

Verteilung von Einträgen über Server ist die Aufgabe des Clients. Dazu gibt es eine Reihe von Techniken, die in den verschiedenen häufig gestellten FAQs und Kunden dargelegt sind. –

6

Wenn eine Instanz fehlschlägt, können Sie die Vorteile des Cache nutzen. Dies gilt insbesondere dann, wenn Sie das konsistente Hashing verwenden, das die gleichen Daten in dieselbe Instanz bringt, anstatt neue Lese-/Schreibvorgänge unter den noch aktiven Maschinen zu verteilen.

Sie können auch Server auf 32-Bit-Betriebssystemen ausführen, die nicht mehr als etwa 3 GB Speicher adressieren können.

Schauen Sie sich die FAQ: http://www.socialtext.net/memcached/ und http://www.danga.com/memcached/

2

ich auch, dass theoretisch bei mehreren Maschinen hinzufügen würde, es könnte Ihnen einige Performance speichern, als ob Sie eine Menge Frontends haben viel schwerer liest tun, es ist viel besser, sie in verschiedene Maschinen aufzuteilen: Sie wissen, dass die Netzwerkfähigkeiten und die Verarbeitungsleistung einer Maschine für Sie eine Obergrenze sein können.

Dieser Vorteil hängt jedoch stark von der Verwendung von Memcache ab (manchmal kann es viel schneller sein, alles von einer Maschine zu holen).