On Wed, Dec 8, 2010 at 3:03 PM, Timo Sirainen tss@iki.fi wrote:
On 8.12.2010, at 22.52, Cor Bosman wrote:
1 server with service_count = 0, and src/imap/main.c patch
By this you mean service_count=0 for both service imap-login and service imap blocks, right?
Speaking from my own experience, the system loads on our dovecot boxes went up *substantially* when we upgraded kernels from 2.6.32.x and 2.6.33.x to newer ones (late 2.6.35.x and 2.6.36 -- haven't tried 2.6.36.1 yet). But I also saw loads on all sort of other types of boxes grow when moved to 2.6.35.x and 2.6.36, so it's not necessarily dovecot-related. Though you've got plenty to choose from between 2.6.27.x and up.
Getting 'imap-login' and 'pop3-login' set to service_count=0 and 'pop3' and 'imap' set to service_count=1000 (as per Timo's suggestion) helped keep the boxes from spinning into oblivion. To reduce the enormous amount of context switches, I've got 'pop3's client_limit set to 4. I played around with 'imap's client_limit between 1 and 5 but haven't quite found the sweet spot yet. pop3 with client_limit 4 seems to work pretty good. That brought context switches down from 10,000-30,000 to sub-10,000. These are somewhat crummy Dell 850s (2 cores, 2 gigs) but lots of them, dedicated to just POP/IMAP, storage on NFS (indexes on local disk though) running 2.0.7 across the board (60 boxes or so).