Alternatives to JGroups

Konstantin Solomatov picture Konstantin Solomatov · Sep 25, 2013 · Viewed 8.9k times · Source

I want to create a distributed applications on JVM which has a number of nodes, and need a library which allow me to:

  • Manage cluster/grid membership, i.e. I want to get notifications on leave/join
  • Manage messages between cluster members

I have found two solutions:

  • JGroups - it works but it looks dates and not widely used
  • Akka - it's Scala based and its cluster module doesn't look like mature

Are there any other libraries which can do the same?

Answer

Bela Ban picture Bela Ban · Sep 26, 2013

JGroups has been around since 1998 and is therefore very stable, not dated at all ! It is being actively developed (I'm the lead dev).

It is used by a lot of applications/systems out there, if you google for it, you'll find a lot of references. Just this week, a telecom company using it broke the record for largest cluster built with JGroups with a 1115 node cluster !

JBoss (Wildfly) clustering (Infinispan) uses JGroups as well. I suggest write a small prototype and see how it performs. If you ask questions on the JGroups mailing list, the people there are very helpful...

I can't comment on Akka, as I haven't used it, but my distaste for Scala would keep me away from it anyway...