Spring-Cache-Abstraktion - verteilte Umgebung

8

Ich möchte die Spring-Cache-Abstraktion in meiner verteilten Webanwendung verwenden.

Meine Webanwendung besteht aus einer Webanwendung, die auf drei verschiedenen Tomcats mit Load Balancer ausgeführt wird.

Nun, mein Problem ist, wie genau kann @Evict in allen Tomcats zwischengespeichert werden, wenn ein anderer Tomcat ein Update vorfindet?

Unterstützt die Feder so etwas?

Danke!

    
Urbanleg 04.02.2014, 14:04
quelle

1 Antwort

9

Wenn EHCache von Spring verwendet wird, unterstützt EHCache die Replikation über mehrere Instanzen hinweg Server. Ich hatte einige Erfolge mit dem RMI Replicated Caching mit Multicast-Erkennung. Die Überprüfung von einem Cache wird automatisch über die anderen Caches repliziert - und ebenso beim Hinzufügen zu einem Cache.

In Bezug auf die Spring-Konfiguration müssen Sie die verschiedenen Konfigurationselemente und Beans einrichten:

%Vor%

Der Rest der Konfiguration wird in der Datei ehcache.xml durchgeführt. Ein replizierter Beispielcache von ehcache.xml könnte etwa so aussehen:

%Vor%

Und dann müssen Sie die Replikationseinstellungen zu ehcache.xml hinzufügen, die wie folgt aussehen könnten:

%Vor%

Es gibt andere Möglichkeiten, die Replikation in EHCache zu konfigurieren, wie in der Dokumentation beschrieben, aber die oben beschriebene RMI-Methode ist relativ einfach und hat für mich gut funktioniert.

    
Will Keeling 04.02.2014 16:03
quelle

Tags und Links