[Dovecot] IO rate quotas?

Ed W lists at wildgooses.com
Tue Apr 12 01:00:53 EEST 2011

On 11/04/2011 11:58, Alan Brown wrote:
> From: Timo Sirainen <tss at iki.fi>
> Subject: Re: [Dovecot] IO rate quotas?
>> So a single process that is reading files fast enough from disk can
>> cause disk IO to spike in a way that makes all other processes wait for
>> available disk IO?
> It's not a single process.
> Thunderbird's newest defaults are to syncronize every folder and it will
> open one connectrion per folder in order to do that.
> Appropriate disk/swappiness/readahead/cache tuning is required - along
> with enough ram to cope with several users trying this at once.

I don't really know what I'm talking about, but newer kernels have pretty strong 
support for io quotas, eg:


It would require some modifications to dovecot to apply cgroups, but it seems like a 
nice feature and I doubt that it would require too much sponsorship to implement? (Timo?)

Failing that you can apply ionice to a certain extent?  

I doubt you can do much with iptables firewalling since it can't see inside the imap stream - perhaps an incoming max packet/ip restriction would be a rough approximation... Can't see it being effective though?

I'm a little surprised that a small number of users can take down your (1and1?) box?  I think it's worth looking at your bottleneck a little more - I have a small server and I can't really do much to it despite a 40mbit broadband connection at this end?

As an aside, whilst cheap German/French hosting with 1and1 (or Hetzner, et al) looks good, I jumped and bought my own rack space some time back.  A 1/4 rack with decent bandwidth only costs me the price of a reasonable 1and1 server, despite the rack being in the relatively more expensive UK... It's nice having the rack within a short drive and the incremental cost of a pair of supermicro servers (for redundancy, vs just a single server) is really no big beans.  Give it some thought as a longer term plan?

Good luck

Ed W

More information about the dovecot mailing list