Sharing a java object across a cluster -


my requirement share java object across cluster.

i confused

  • whether write ejb , share java objects across cluster or
  • to use third party such infinispan or memecached or terracotta or
  • what jcache?

with constraint

  • i can't change of source code specific application server (such implementing weblogic's singleton services).
  • i can't offer 2 builds cluster , non cluster environment.
  • performance should not downgraded.
  • i looking open source third party if need use it.
  • it need work in weblogic , websphere , jbos , tomcat too.

can 1 come best option these constraints in mind.

it can depend on use case of objects want share in cluster.

i think comes down following options in complex least complex

distributed cacheing http://www.ehcache.org

distributed cacheing if need ensure object accessible cache on every node. have used ehache distribute quite successfully, no need setup terracotta server unless need scale, can point instances via rmi. works synchronously , asynchronously depending on requirements. cache replication handy if nodes go down cache redundant , dont lose anything. if need make sure object has been updated across nodes.

clustered execution/data distribution http://www.hazelcast.com/

hazelcast nice option provides way of executing java classes across cluster. more useful if have object represents unit of work needs performed , dont care gets executed.

also useful distributed collections, i.e. distributed map or queue

roll own rmi/jgroups

can write own client/server think start run issues bigger frameworks solve if requirements of objects dealing starts complex. realistically hazelcast simple , should eliminate need roll own.


Comments

Popular posts from this blog

image - ClassNotFoundException when add a prebuilt apk into system.img in android -

I need to import mysql 5.1 to 5.5? -

Java, Hibernate, MySQL - store UTC date-time -