Cyrus 2.5.9 imapd children and tcp_timeout questions

Andy Dorman adorman at ironicdesign.com
Tue Sep 13 13:05:04 EDT 2016


On 09/13/2016 02:15 AM, Bron Gondwana via Info-cyrus wrote:
> On Tue, 13 Sep 2016, at 10:44, ellie timoney via Info-cyrus wrote:
>> Note that it talks about the process being used for new connections.
>> Each imapd process serves one connection at a time (so if you have 50
>> client connections, you will have 50 imapd processes to serve them, plus
>> whatever you have preforked ready to serve new connections).  When one
>> of these connections disconnects, the imapd process that was serving
>> that connection goes back into the pool, ready to serve a new incoming
>> connection -- unless it has already served $uses connections, in which
>> case it exits, and master spawns a new one instead if necessary.
>>
>> So you can see how, if you have mostly long-lived connections, each
>> imapd's count of how many connections it has served would grow very very
>> slowly -- many may not ever reach their limit, because you end up
>> needing to reboot the server (OS security updates, data centre works,
>> etc) before that occurs.
>
> If you look in /var/lib/imap/proc/* you should see one file for each process id,
> which tells you who is connected to that process, and which folder they have
> selected (if any).  This is quite useful for tracking down if there's a single user
> causing issues.
>
> Bron.
>

Thank you Nicola, Ellie and Bron. This is invaluable information for 
everyone using Cyrus.

I am going to up our max processes and drop the number of connections 
any process can handle and will watch what is happening.

Sincere regards.

-- 
Andy Dorman
Ironic Design, Inc.
AnteSpam.com



More information about the Info-cyrus mailing list