Clustering J2EE with Jini

Discussions

News: Clustering J2EE with Jini

  1. Clustering J2EE with Jini (9 messages)

    Artima.com has published an interview with Sean Neville, previously the lead architect of Macromedia's JRun application server, in which Sean talks about JRun's object clustering architecture, and how Jini facilitated its implementation.

    Read Interview with Sean Neville on Clustering J2EE with Jini

    Here's an excerpt:

    When you deploy a remote object, it needs a way to locate all similar remote objects on the cluster. The cluster would include whatever hosts the admin decided to link together. By default, if the admin did nothing, we wanted the cluster to include all the nearby hosts reachable via multicast. So whatever that network neighborhood cluster was, we needed a particular remote object to find its buddy on another system within the cluster based on class lookup. The lookup could possibly be based on some other information in the template, but it would mainly be based on the class. We wanted those objects to automatically find each other and exchange stubs.

    What do you think of the comments that Sean made?

    Threaded Messages (9)

  2. Clustering J2EE with Jini[ Go to top ]

    JBoss 3.x implements clustering using a multicast toolkit called JavaGroups

    http://www.javagroups.com/javagroupsnew/docs/success.html

    http://www.javagroups.com/

    http://www.onjava.com/pub/a/onjava/2002/07/10/jboss.html

  3. Clustering J2EE with Jini[ Go to top ]

    Some days ago I visited www.JBoss.org to investigate about their clustering support and I would like to say : this appears to be a killer implementation of J2EE clustered platform.

    About JRun 3.0 : Has all the merit to adopt Jini as their clustering infrastructure, great engineering, sure. But to be honest, if my project has an enough budget I will ever prefer to work on a WebBigGuy platform. For any other case, as a Websphere developer, I will consider to be more up to date with JBoss, JavaGroups and even J2EE alternatives like the JTrix project - www.jtrix.org.

    I have been waiting for TME?s Gaia (grid, P2P) - www.theMindElectric.com - platform for building P2P clustered services - not just Web Services - because of their power, excelent documentation and ease of use but JTrix is open source, their site has great technical content and their platform also has top enterprise level features, not to mention some interesting sub projects - remember - is an open source project !

    Now the only missing thing is to know a project manager that could understand and evaluate the ROI of adopting these great alternatives to big guys like Websphere, WebLogic and Oracle...

    Rodolfo

     
  4. Clustering J2EE with Jini[ Go to top ]

    Can someone clarify something for me. My understanding of TCP multi-cast is that it only works within a single Class C subnet. So the final 256 addresses.

    Does this mean then that failover based on TCP multi-cast requires all nodes to live within the same subnet?

    Dave Wolf
    Personified Technologies LLC
  5. Clustering J2EE with Jini[ Go to top ]

    Take a look at http://www.tldp.org/HOWTO/Multicast-HOWTO-2.html

    Multicast uses the Class D address space and is routable so you are not limited to 256 hosts or to a single physical subnet.
  6. Clustering J2EE with Jini[ Go to top ]

    <Does this mean then that failover based on TCP multi-cast requires all nodes to live within the same subnet?
    >>

    My understanding is that the multicast radius is something the network adminstrator can configure. It can go beyond subnets, but often doesn't. (It often is disabled entirely.) Regardless, the nodes to which failover can occur are the *nodes in the cluster*. The nodes of the cluster could be determined by an administrator and configured. Or the nodes could dynamically discover each other via multicast. Or both. I'm not sure if JRun supports this, but as far as Jini is concerned the cluster could conceivably be partially discovered via multicast and partially configured ahead of time. So even if multicast is limited to the subnet, nodes outside the subnet could still participate in the cluster if all nodes are configured to include them in the cluster.
  7. Clustering J2EE with Jini[ Go to top ]

    <q> Can someone clarify something for me. My understanding of TCP multi-cast is that it only works within a single Class C subnet. So the final 256 addresses.

    Does this mean then that failover based on TCP multi-cast requires all nodes to live within the same subnet?</q>

    Multicast group is a combination of IP address and IP port. So, actually you have 256 * 65536 different multicast groups (actually, a little bit less, because some IP addresses are reserved). Groups are unique and should be obtained through MBone (however, if your packets are not routed to the outer world, you can ignore this as long as you keep it consistent). Each datagram packet that is multicasted has a TTL parameter that is decreased each time when packet is routed between subnets. Packet is routed only when TTL > 0.

    So, it is also the responsibility of application programmer to specify correct TTL for the datagram packet. In JavaGroups, for example, this parameter is configurable. Also, JavaGroups has a routing service that is able to route multicast packets between subnets even if there is not multicast routing (for example, via firewall). However, I do not know how this works in Jini.

    Best regards,
    Roman Rokytskyy
  8. Clustering J2EE with Jini[ Go to top ]

    While talking about clustering, J2EE and Jini, I will ask You to remeber about the JavaSpaces, a part of Jini.
    Please, refer to the following sources:

    http://www.gigaspaces.com/download/GSClusterWhitePaper.pdf

    http://www.onjava.com/pub/a/onjava/2002/07/17/tomcluster.html

  9. Clustering J2EE with Jini[ Go to top ]

    The article was pretty good, although it didn't get into the technical gore that I was hoping for ;-)

    JRun has always been a pretty sweet server, but I never knew about its clustering capability. Do you know if they just used the "Sun out of the box JavaSpaces implementation"? Or did they write or buy something? I missed that part.

    Peace,

    Cameron Purdy
    Tangosol, Inc.
    Coherence: Easily share live data across a cluster!
  10. Clustering J2EE with Jini[ Go to top ]

    <JRun has always been a pretty sweet server, but I never knew about its clustering capability. Do you know if they just used the "Sun out of the box JavaSpaces implementation"? Or did they write or buy something? I missed that part.
    >>

    They didn't use JavaSpaces, they used the Jini lookup service. They also didn't buy or build a Jini lookup service, they used Reggie, which is the Jini lookup service implementation available from Sun under the SCSL (Sun Community Source License). Reggie is basically free if you agree to the SCSL. (Sean mentions using Reggie in Part II of the interview, which will come out next week.)