[Dovecot] A lot of dovecot/imap processes

Gedalya gedalya at gedalya.net
Wed Jan 30 17:26:29 EET 2013


Since you are setting it manually anyway, try to reomove IDLE from your 
imap_capability. See http://tools.ietf.org/html/rfc2177
Also check out verbose_proctitle.

On 01/30/2013 10:09 AM, C3PO sysadmin wrote:
> Hello!
>
> I have a dovecot installed and many users could login via IMAP over 
> SSL (40 users at same time aprox).
> Users could have "Check mail every X time" enabled in their client 
> (Thunderbird or K-9 mail) - Is this required feature? I noted that if 
> I disable it I still getting news mails without having to check for 
> new mails manually - .
>
> I noted that dovecot is creating a lot of process (dovecot/imap and 
> dovecot/imap-login) and is requiring more and more RAM.
> I think that every login starts a process but never is endend.
>
> The output of /*ps aux | grep dovecot | wc*/ is increasing until 250 
> lines aprox. I think that is limited by process_limit = 256. But if I 
> put process_limit = 100, in the log appers a message that dovecot is 
> aborting logins (and I noted that new connections sometimes couldn't 
> login).
>
> Anyway the mailserver is working well, but I'm afraid of the 
> consumtion of RAM.
>
> Is that normal?
>
> Details:
> # 2.0.19: /etc/dovecot/dovecot.conf
> # OS: Linux 3.2.0-36-generic-pae i686 Ubuntu 12.04.1 LTS nfs
> auth_mechanisms = plain login
> dotlock_use_excl = no
> log_timestamp = "%Y-%m-%d %H:%M:%S "
> mail_fsync = always
> mail_location = maildir:/mnt/vmail/%d/%n/Maildir
> mail_privileged_group = mail
> managesieve_notify_capability = mailto
> managesieve_sieve_capability = fileinto reject envelope 
> encoded-character vacation subaddress comparator-i;ascii-numeric 
> relational regex imap4flags copy include variables body enotify 
> environment mailbox date ihave vacation-seconds
> mmap_disable = yes
> namespace {
>   inbox = yes
>   location =
>   prefix =
>   separator = .
>   subscriptions = yes
>   type = private
> }
> passdb {
>   args = /etc/dovecot/dovecot-sql.conf
>   driver = sql
> }
> plugin {
>   autocreate = Trash
>   autocreate2 = Sent
>   autocreate3 = Drafts
>   autosubscribe = Trash
>   autosubscribe2 = Sent
>   autosubscribe3 = Drafts
>   sieve = /mnt/vmail/%d/%n/Maildir/.dovecot.sieve
>   sieve_dir = ~/sieve
>   sieve_extensions = +vacation-seconds
>   sieve_global_dir = /etc/dovecot/sieve_global_dir
>   sieve_global_path = /etc/dovecot/default.sieve
>   sieve_vacation_default_period = 2s
>   sieve_vacation_max_period = 3s
>   sieve_vacation_min_period = 1s
> }
> protocols = imap lmtp sieve
> service auth {
>   unix_listener /var/spool/postfix/private/auth {
>     group = postfix
>     mode = 0660
>     user = postfix
>   }
>   unix_listener auth-master {
>     group = vmail
>     mode = 0600
>     user = vmail
>   }
>   user = root
> }
> service imap-login {
>   inet_listener imap {
>     port = 0
>   }
>   process_limit = 256
> }
> service managesieve-login {
>   inet_listener sieve {
>     port = 4190
>   }
>   process_min_avail = 1
>   service_count = 1
>   vsz_limit = 64 M
> }
> service managesieve {
>   process_limit = 10
> }
> service pop3-login {
>   process_limit = 256
> }
> ssl = required
> ssl_cert = </etc/ssl/certs/dovecot.pem
> ssl_key = </etc/ssl/private/dovecot.pem
> userdb {
>   driver = passwd
> }
> userdb {
>   args = uid=5000 gid=5000 home=/mnt/vmail/%d/%n allow_all_users=yes
>   driver = static
> }
> protocol imap {
>   imap_capability = IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID 
> ENABLE IDLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS 
> MULTIAPPEND UNSELECT CHILDREN NAMESPACE UIDP LUS LIST-EXTENDED 
> I18NLEVEL=1 ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS
>   mail_plugins = autocreate
> }
> protocol pop3 {
>   pop3_uidl_format = %08Xu%08Xv
> }
> protocol lda {
>   auth_socket_path = /var/run/dovecot/auth-master
>   log_path = /var/log/dovecot-deliver.log
>   mail_plugins = " sieve"
>   postmaster_address = ###@###.###
> }
> protocol sieve {
>   info_log_path = /var/log/dovecot-sieve.log
>   log_path = /var/log/dovecot-sieve-errors.log
>   managesieve_implementation_string = dovecot
>   managesieve_max_line_length = 65536
> }
> protocol lmtp {
>   info_log_path = /var/log/dovecot-lmtp.log
>   log_path = /var/log/dovecot-lmtp-errors.log
>   mail_plugins = " sieve"
> }
>
> Thank-you very much.
>
>



More information about the dovecot mailing list