[JDEV] Jabberd in a distributed environment.
mike at smallmouth.probass.com
Tue Sep 10 19:55:41 CDT 2002
I am interested in using Jabber in a large distributed environment. I
already have a multi-tiered architecture that is used for software
delivery and supports a user base of approx. 200,000 users. It consists
of 3 tiers,
1 Central server
10 2nd tier servers that are located at network access points. All are
hidden behind a single DNS Round Robin.
400+ 3rd tier servers that are located at client locations. User to
server ratio is limited to a max of 1000 to 1.
All current clients and servers are wintel, and run JRE 1.3.1. Servers
are a minimum of Dual PIII 500 with 512MB Ram. In the future clients
and servers will also be run on an assortment of unix flavors so Java is
an absolute must.
For software distribution, clients contact the 2nd Tier, and are
redirected to the best available 3rd tier servers automatically based on
network subnet. This assignment information is stored on the client
machine and would be available for my Jabber client. This being the
case, there would be no problem handling the redirection, load
balancing, or fail over from the client perspective. This approach is
old hat for us and has proven to be a very reliable approach for
gathering data and sending it upstream, or downloading and installing
What I am contemplating is using Jabber to provide real time presence
data, as well as a method for delivery of commands to the remote clients
from a central location. The client portion of this looks very
straightforward and I see little problem with coding a client in java to
facilitate this portion of the project.
The server portion however does not look so straight forward. There
seems to be no Java based server components other than for web servers.
Also there seems to be little information about use of Jabber in a
distributed environment such as this. Thus far I have found little
detailed information on server 2 server communications, or how client
information is stored, or how the one would go about locating clients
that are nested several servers deep.
Any thoughts or feedback on this project would be greatly appreciated.
More information about the JDev