Hi,

I would like to comment on a message from Guglielmo Lichtner posted on the jonas-dev mailing list on Feb. 14th under the title Jonas vs Weblogic, and in particular on the micro-protocol issue.

As you know, Jonas can currently use Jeremie, an RMI-like personnality built on top of a framework called Jonathan (see the ObjectWeb site: http://www.objectweb.org), instead of SUN's RMI. Jonathan features a communication framework that precisely defines a micro-protocol architecture. All protocols used by Jonathan (e.g., IIOP) are developed by connecting such micro-protocols in graphs. For the time being, there are not many protocols developed : only wrappers for TCP/IP and IP multicast, GIOP and a simplified version of RTP. But new protocols could be added, in particular if a MOM is to be developed using the Jonathan architecture. It should also be possible to introduce group management protocols. 

The only up-to-date description of the communication framework is the API documentation (http://www.objectweb.org/en/jonathan/Jonathan/doc/apis/org/objectweb/jonathan/apis/protocols/package-summary.html). I would be interested by feedback on this framework, if anyone wishes to experiment with it.

Best regards,

Bruno

 

-------------------------------------------------------------------------

Original message:

Date: Thu, 10 Feb 2000 11:43:29 -0500 (EST)
From: lichtner <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
Subject: Re: Jonas vs. Weblogic

I am writing this following an exchange with Gerard Vandome (included
below).

I would like to participate in writing a replicated cache, load balancing
and failover. I recently had to do a certain amount of research into
building a cluster with replication and failover and I came across a
sub-culture of "group communication" software.

I propose that we implement a replicated cache using a group communication
toolkit based on multicasting. Such toolkits are out there, and there is
even one that is pure java. We can use that or write our own. If you want
to check it out go to

http://www.cs.cornell.edu/Info/Projects/JavaGroupsNew/index.html

Replication is not very useful without load balancing and failover. I
propose that we implement a similar system to the one proposed in the
current CORBA Fault Tolerance proposal. I think this is an extremely
valuable read because it was written by a consortium of companies.
We can use to extract from it a specification for our own load balancing
and failover design. If you want to check it out go to=20

http://www.omg.org/cgi-bin/doc?orbos/99-12-08

I want to pitch group communication toolkits to you some more. Most of
them appear to use a microprotocol architecture, i.e. an actual stack of
objects that implement extremely simple protocols. The behavior and
performance of the software can be altered by composing various
combinations of theses protocols. This design (which has a long history)
makes it easy to test new protocols. More importantly, it makes it easy to
parallelize development, since each developer can work on a different
protocol. It also makes it easy to replace a protocol with poor
performance for one with better performance. Finally, this design makes it
easy to estimate the time it will take to implement and test new
protocols, because they all take about the same amount of time to write.

The toolkits out there contain several protocols that deal with leader
election, failures and all the other problems that come up in distributed
systems. In such a framework, features like group rmi, group locking, and
group transactions are quite natural.

Although the development of this is quite thrilling, my real interest in
it is as a professional. I think it's time that we build a free app server
that can run on a cluster of small machines.

--------------------------------------------------------------------------
Guglielmo Lichtner

Reply via email to