diff options
author | Guilhem Moulin <guilhem@fripost.org> | 2014-07-04 17:48:17 +0200 |
---|---|---|
committer | Guilhem Moulin <guilhem@fripost.org> | 2015-06-07 02:52:27 +0200 |
commit | c03c331b84b22f3322db1ad61b5dcd7fbaa020d3 (patch) | |
tree | 95cf47985efb5a51939648b5c03469721169185d /roles/IMAP/files | |
parent | ffce99c00193b83183be465f89e31fdd92c14da0 (diff) |
Performance tuning in Dovecot's configuration.
Diffstat (limited to 'roles/IMAP/files')
-rw-r--r-- | roles/IMAP/files/etc/dovecot/conf.d/10-master.conf | 12 | ||||
-rw-r--r-- | roles/IMAP/files/etc/dovecot/conf.d/20-imap.conf | 2 |
2 files changed, 11 insertions, 3 deletions
diff --git a/roles/IMAP/files/etc/dovecot/conf.d/10-master.conf b/roles/IMAP/files/etc/dovecot/conf.d/10-master.conf index 30a6f8b..30e9fb6 100644 --- a/roles/IMAP/files/etc/dovecot/conf.d/10-master.conf +++ b/roles/IMAP/files/etc/dovecot/conf.d/10-master.conf @@ -1,82 +1,90 @@ #default_process_limit = 100 #default_client_limit = 1000 # Default VSZ (virtual memory size) limit for service processes. This is mainly # intended to catch and kill processes that leak memory before they eat up # everything. #default_vsz_limit = 256M # Login user is internally used by login processes. This is the most untrusted # user in Dovecot system. It shouldn't have access to anything at all. default_login_user = dovenull # Internal user is used by unprivileged processes. It should be separate from # login user, so that login processes can't disturb other processes. default_internal_user = dovecot service imap-login { + inet_listener imap { + port = 0 + } inet_listener imaps { port = 993 ssl = yes } # Number of connections to handle before starting a new process. Typically # the only useful values are 0 (unlimited) or 1. 1 is more secure, but 0 # is faster. <doc/wiki/LoginProcess.txt> service_count = 1 + # Max. number of IMAP processes (logins) + process_limit = 256 + # Number of processes to always keep waiting for more connections. - #process_min_avail = 0 + process_min_avail = 4 # If you set service_count=0, you probably need to grow this. #vsz_limit = $default_vsz_limit } service pop3-login { inet_listener pop3 { #port = 110 } inet_listener pop3s { #port = 995 #ssl = yes } service_count = 1 } service lmtp { user = vmail - process_min_avail = 3 unix_listener /var/spool/postfix-mda/private/dovecot-lmtpd { group = postfix user = postfix mode = 0600 } # Create inet listener only if you can't use the above UNIX socket #inet_listener lmtp { # Avoid making LMTP visible for the entire internet #address = #port = #} + + # Number of processes to always keep waiting for more connections. + process_min_avail = 4 } service imap { # Most of the memory goes to mmap()ing files. You may need to increase this # limit if you have huge mailboxes. #vsz_limit = $default_vsz_limit # Max. number of IMAP processes (connections) #process_limit = 1024 } service pop3 { # Max. number of POP3 processes (connections) #process_limit = 1024 } service auth { # auth_socket_path points to this userdb socket by default. It's typically # used by dovecot-lda, doveadm, possibly imap process, etc. Users that have # full permissions to this socket are able to get a list of all usernames and diff --git a/roles/IMAP/files/etc/dovecot/conf.d/20-imap.conf b/roles/IMAP/files/etc/dovecot/conf.d/20-imap.conf index 6771cc7..fa127c6 100644 --- a/roles/IMAP/files/etc/dovecot/conf.d/20-imap.conf +++ b/roles/IMAP/files/etc/dovecot/conf.d/20-imap.conf @@ -1,33 +1,33 @@ ## ## IMAP specific settings ## protocol imap { # Maximum IMAP command line length. Some clients generate very long command # lines with huge mailboxes, so you may need to raise this if you get # "Too long argument" or "IMAP command line too large" errors often. #imap_max_line_length = 64k # Maximum number of IMAP connections allowed for a user from each IP address. # NOTE: The username is compared case-sensitively. - #mail_max_userip_connections = 10 + mail_max_userip_connections = 16 # Space separated list of plugins to load (default is global mail_plugins). #mail_plugins = $mail_plugins antispam # IMAP logout format string: # %i - total number of bytes read from client # %o - total number of bytes sent to client #imap_logout_format = bytes=%i/%o # Override the IMAP CAPABILITY response. If the value begins with '+', # add the given capabilities on top of the defaults (e.g. +XFOO XBAR). #imap_capability = # How long to wait between "OK Still here" notifications when client is # IDLEing. #imap_idle_notify_interval = 2 mins # ID field names and values to send to clients. Using * as the value makes # Dovecot use the default value. The following fields have default values # currently: name, version, os, os-version, support-url, support-email. |