So, today I investigated a bit.

I found [1] and [2] interesting.  I didn't do anything about [1], but I
enabled cache in my configuration.

Then I went to #dovecot@freenode and someone advised me to switch to
high-performance mode[6], which I did:

--8<---------------cut here---------------start------------->8---
<hidden> do you have same uid/gid for all users or do they each have their own?
<hidden> snape, if you have same uid/gid then set service_count = 0 for
       imap-login, otherwise set it to 1  [13:45]
<hidden> and in latter scenario also set client_limit to 1  [13:46]
<snape> hidden: there is one vmail user  [13:47]
<hidden> then you can set service_count = 0, process_limit = number of cores,
       process_min_avail = same as process limit and client_limit to something
<snape> you mean, client_limit to 0?  [13:53]
<hidden> total concurrency is process_limit * client_limit for tls connections
<hidden> non-tls connections are moved to imap process after logik
<hidden> login
<snape> ok so you suggest I switch to high-performance mode  [13:54]
<hidden> yes
<snape> because it doesn't make sense to use high-security mode if all users
        share the same uid/gid?  [13:55]
<snape> i.e. if I use vmail?
<hidden> the important part here is that if you set client_limit to anything
       above 1 the service_count needs to be 0
<hidden> yeah, in general we recommend high performance mode  [13:56]
--8<---------------cut here---------------end--------------->8---

In order to do the switch I had to modify the service so that it accepts
the client-limit[3] and process-limit[4] options.

I also fixed[5] the default value of 'service-count' for the "auth"
service to 'unlimited', in case it matters.

At least, now I don't seem to have these ever-growing imap-login
processes anymore, so I'm closing this bug.  I'll re-open it if it
happens again.

Cheers,
Clément

[1]: https://www.dovecot.org/list/dovecot/2011-December/080264.html
[2]: https://dovecot.org/pipermail/dovecot/2008-May/030813.html
[3]: 
https://git.savannah.gnu.org/cgit/guix.git/commit/?id=8d9bb4b4d05a20bef1cf7b1da2b1c5fb05f9b071
[4]: 
https://git.savannah.gnu.org/cgit/guix.git/commit/?id=be8dd4a5fec804f2f004dd3a87c2872af44dc88d
[5]: 
https://git.savannah.gnu.org/cgit/guix.git/commit/?id=a7553a7360ac07ff114b807fc3026f08158d34c8
[6]: https://wiki.dovecot.org/LoginProcess



Reply via email to