Setting TCP keepalive for Cyrus daemons
Gary Mills
mills at cc.umanitoba.ca
Sun Feb 14 10:30:49 EST 2010
On Sun, Feb 14, 2010 at 08:56:29AM +1100, Bron Gondwana wrote:
> On Sun, Feb 14, 2010 at 08:38:34AM +1100, Bron Gondwana wrote:
> > > One thing to watch is that only SO_KEEPALIVE is standard. The other
> > > three symbols: TCP_KEEPCNT, TCP_KEEPIDLE, and TCP_KEEPINTVL only exist
> > > in some operating systems. They have global settings but don't have
> > > per-socket options. For these, the setsockopt() function calls need
> > > to be conditional on the symbols.
> >
> > Hmm - yeah, OK. I'll protect them with #ifdefs.
>
> Here's the patch redone with those...
I just noticed something else when I went to apply the patch. I would
have added the options to cyrus.conf so a typical entry would change
from:
imap cmd="imapd" listen="imap" proto="tcp4" prefork=0 maxchild=6000
to:
imap cmd="imapd" listen="imap" proto="tcp4" tcp_keepalive prefork=0 maxchild=6000
That way you could have a different keepalive setting for each service.
You've designed it so these settings go into imapd.conf . Is that going
to work the same way?
--
-Gary Mills- -Unix Group- -Computer and Network Services-
More information about the Info-cyrus
mailing list