Christopher Dolan wrote:
I have a Jini client that makes a LOT of outbound RMIs via Jeri
TCPEndpoint.  I know exactly which services I will invoke just once (the
majority) and which I will re-contact over and over (a minority).

The net.jini.jeri.connection.ConnectionManager class implements a
keep-alive that uses a global timeout for the whole process (default=15
sec).  I can't afford to keep connections open for all services, so I
would like to configure or disable that keepalive per connection.  But I
can't figure out how to do it.  It looks that behavior like it's
hard-coded into TCPEndpoint+ConnectionManager, but I thought I'd ask to
see if anyone else has banged into this same wall.

So far, we've hacked it by making the
com.sun.jini.jeri.connectionTimeout really small and living with the
unnecessary reconnects, but that's starting to be a scalability problem
too.

This is why endpoints are pluggable. You can copy TCPEndpoint code, make it do what you want, and then install and use it via a configuration change. This makes it possible for you to work out which endpoints need this treatment and which do not.

When you get it working, consider submitting it to River.

Gregg Wonderly

Reply via email to