2015-10-14 9 views
11

Was ist besser für die folgende Umgebung geeignet ist:Redis oder Ehcache?

  1. Persistenz kein Zwang.
  2. Mehrere Server (mit Ehcache einige Cache-Sync muss erforderlich sein).
  3. Seltene Schreibvorgänge und häufige Lesevorgänge.
  4. Relativ kleine Datenbank (sehr wenig Speicherbedarf).

Ich werde ausgießen, was derzeit in meinem Kopf ist. Damit liege ich falsch.

Ich weiß Redis erfordert einen separaten Server (?) Und Ehcache bietet lokalen Cache, so dass es schneller sein muss, aber cache über Server (?) Replizieren. Die Aktualisierung aller Caches nach einer Aktualisierung auf einen ist mit Ehcache möglich.

Meine Frage ist, welche besser für die Umwelt passt, die ich erwähnte?
Wessen Leistung wird besser sein oder was sind Szenarien, wenn man eine andere übertreffen kann?

Vielen Dank im Voraus.

+0

redis .......... – Jaiwo99

+0

ein bisschen Erklärung? –

+0

von (Java // Frühling) Entwickler Perspektive, es ist viel einfacher zu implementieren – Jaiwo99

Antwort

19

können Sie denken, dass Redis als gemeinsamen Datenstruktur, während Ehcache ein Speicherblock Speicherung serialisierte Datenobjekte ist. Dies ist der Hauptunterschied.

Redis als gemeinsamen Datenstruktur bedeutet, dass Sie einige vordefinierte (wie String, Liste, Setetc) Datenstruktur setzen können in einer Sprache aus und laden diese in einer anderen Sprache. Dies ist nützlich, wenn Ihr Projekt mehrsprachig ist, zum Beispiel: Java die Backend-Seite und PHP die Vorderseite. Sie können Redis für einen gemeinsamen Cache verwenden. Aber es kann nur vordefinierte Datenstruktur speichern, Sie können keine Java-Objekte einfügen, die Sie möchten.

Wenn Ihr Projekt nur Java ist, d. H. Nicht mehrsprachig, ist Ehcache eine bequeme Lösung.