[Dovecot] SSD drives are really fast running Dovecot

Stan Hoeppner stan at hardwarefreak.com
Sun Jan 16 22:10:39 EET 2011


Javier de Miguel Rodríguez put forth on 1/16/2011 12:00 PM:

>     What kind of "tricks" do you use to lower the number of IOPs of your dovecot
> servers?

Using hardware SAN RAID controllers with 'large' (2GB) write cache.  The large
write cache allows for efficient use of large queue depths.  A deeper queue
allows the drives to order reads/writes most efficiently decreasing head seek
movement.  This doesn't necessarily decrease IO per se, but it makes the drives
more efficient, allowing for more total physical drive IOPS.

Using XFS with delayed logging mount option (requires kernel 2.6.36 or later).

XFS has natively used delayed allocation for quite some time, coalescing
multiple pending writes before pushing them into the buffer cache.  This not
only decreases physical IOPS, but it also decreases filesystem fragmentation by
packing more files into each extent.  Decreased fragmentation means fewer disk
seeks required per file read, which also decreases physical IOPS.  This also
greatly reduces the wasted space typical of small file storage.  Works very well
with maildir, but also with the other mail storage formats.

Using the delayed logging feature, filesystem metadata write operations are
pushed almost entirely into RAM.  Not only does this _dramatically_ decrease
physical metadata write IOPS but it also increases metadata write performance by
an order of magnitude.  Really shines with maildir, obviously, but would also
help the s/mdbox formats since they make use of multiple files.  Delaylog
doesn't help mbox at all, and it doesn't do anything for index file performance.
 The caveat here is _load_.  You won't get much benefit on a mostly idle server.
 The benefits of delayed logging increase as the filesystem metadata write load
increases.  Busy servers benefit the most.

-- 
Stan


More information about the dovecot mailing list