Dies kann vom Anwendungsfall der Objekte abhängen, die Sie im Cluster freigeben möchten.
ich denke, es kommt darauf an, wirklich eine der folgenden Optionen in den meisten Komplex am wenigsten komplexe
Distributed Cacheing http://www.ehcache.org
Distributed Caching ist gut, wenn Sie benötigen, um sicherzustellen, dass ein Objekt von einem zugänglich ist Cache auf jedem Knoten. Ich habe ehache verwendet, um ziemlich erfolgreich zu verteilen, keine Notwendigkeit, einen Terrakotta-Server einzurichten, es sei denn, Sie benötigen die Waage, können Instanzen einfach über rmi zusammenführen. Arbeitet auch synchron und asynchron, je nach Anforderungen. Auch die Cache-Replikation ist praktisch, wenn Knoten ausfallen, so dass der Cache tatsächlich redundant ist und nichts verliert. Gut, wenn Sie sicherstellen müssen, dass das Objekt über alle Knoten hinweg aktualisiert wurde.
Clustered Execution/Datenverteilung http://www.hazelcast.com/
Hazelcast ist auch eine gute Wahl als eine Möglichkeit bietet, Java-Klassen über einen Cluster auszuführen. Dies ist nützlicher, wenn Sie ein Objekt haben, das eine Arbeitseinheit darstellt, die ausgeführt werden muss, und es Ihnen nicht so wichtig ist, wo es ausgeführt wird.
Auch nützlich für verteilte Sammlungen, dh eine verteilte Karte oder Warteschlange
rollen Sie Ihre eigenen RMI/JGroups
Können Sie Ihre eigenen Client/Server schreiben, aber ich denke, Sie werden in Probleme zu laufen beginnen, dass Die größeren Frameworks lösen, wenn die Anforderungen der Objekte, mit denen Sie zu tun haben, komplex werden. Realistisch Hazelcast ist wirklich einfach und sollte wirklich die Notwendigkeit beseitigen, Ihre eigenen zu rollen.
Gibt es eine generische API, die mit allen J2EE-konformen Servern funktioniert? Was ist mit JCache JSR 107? – Dineshkumar