org.jgroups.stack
Class GossipServer
java.lang.Object
org.jgroups.stack.GossipServer
public class GossipServer
extends java.lang.Object
Maintains a cache of member addresses for each group. There are essentially 2 functions: get the members for
a given group and register a new member for a given group. Clients have to periodically renew their
registrations (like in JINI leasing), otherwise the cache will be cleaned periodically (oldest entries first).
The server should be running at a well-known port. This can be done by for example adding an entry to
/etc/inetd.conf on UNIX systems, e.g.
gossipsrv stream tcp nowait root /bin/start-gossip-server
.
gossipsrv
has to be defined in /etc/services and
start-gossip-server
is a script
which starts the GossipServer at the well-known port (define in /etc/services). The protocol between GossipServer
and GossipClient consists of REGISTER_REQ, GET_MEMBERS_REQ and GET_MEMBERS_RSP protocol data units.
The server does not spawn a thread/request, but does all of its processing on the main thread. This should not
be a problem as all requests are short-lived. However, the server would essentially cease processing requests
if a telnet connected to it.
Requires JDK >= 1.3 due to the use of Timer
static void | main(String[] args)
|
void | run()
|
GossipServer
public GossipServer(int port)
throws Exception
GossipServer
public GossipServer(int port,
long expiry_time)
throws Exception
GossipServer
public GossipServer(int port,
long expiry_time,
InetAddress bind_address)
throws Exception
main
public static void main(String[] args)
throws java.net.UnknownHostException
Copyright B) 2001,2002 www.jgroups.com . All Rights Reserved.