Index: [Article Count Order] [Thread]

Date:  Tue, 14 Mar 2006 07:43:15 -0600
From:  Larry Smith <lesmith (at mark) ecsis.net>
Subject:  [coba-e:04280] Re: Optimizing qpopper or POP3 alternative
To:  coba-e (at mark) bluequartz.org
Message-Id:  <200603140743.15275.lesmith (at mark) ecsis.net>
In-Reply-To:  <001201c64719$9dc166d0$a101a8c0@chris>
References:  <72b101c63eed$c703e3d0$2f427dd1 (at mark) chrism> <20060314005742.f713ccb7.spanishst (at mark) wanadoo.fr> <001201c64719$9dc166d0$a101a8c0 (at mark) chris>
X-Mail-Count: 04280

On Monday 13 March 2006 21:44, Chris McGinnis wrote:
> In the testing repository there's a version of poprelayd that I believe
> works with Dovecot.
>
> I have recompiled qpopper and then finally migrated to Dovecot.  I am still
> seeing issues with the POP3 service getting overwhelmed.  Both qpopper and
> Dovecot timeout under heavy loads.  The machine is an Intel 3.2Ghz, 2GB
> RAM, SATA HDD.  There are around 1000 users.  I don't know what else to do
> other than move some of the users to another box.  If anyone has any
> suggestions I'd be glad to hear them.

Hmmm, if running as a "daemon" process, then you will have to find something 
"faster" or more effecient.

If running as an inetd (xinetd) process, then all Linux Kernels will "timeout" 
a process if it gets spawned (started) more than 200 times per minute (the 
default process limit).  You can modify this with the older/original inetd by 
chainging the line that calls pop3 in the /etc/inetd.conf file to read 
something like:

ORIGINAL: (from an RAQ4)
>pop-3   stream  tcp     nowait  root    /usr/sbin/tcpd  in.qpopper -R
MODIFIED:
>pop-3   stream  tcp     nowait.400  root    /usr/sbin/tcpd  in.qpopper -R

Note the dot 400 appended to the nowait column.  This instructs inetd to allow 
400 processes per minute (vice the 200 default).  On a few servers I have had 
to change this to 500, but use caution and don't just pick a "big" number.  
Things you do on one side can affect other things and you don't want qpopper 
using enough memory to starve the kernel or other processes...

Under xinetd, I believe the parameter to add is the "instances" parameter to 
the /etc/xinetd.d/pop3 for qpopper.  Believe it is defaulted to 80 instances 
running per minute so it can probably safely be updated to 160 to 200 without 
severe effect...

-- 
Larry Smith
SysAd ECSIS.NET
sysad (at mark) ecsis.net