Search code examples
freebsddovecot

Dovecot process limits


Sometimes my dovecot log return:

service(imap-login): process_limit (512) reached, client connections are being dropped

I can increase process_limit in dovecot config file, but i dont understand, how will it affect the system. How to diagnose why process limit is too high? I have around 50 users in my postfix+dovecot+roundcube system.

My configuration:

  • FreeBSD 10.0-stable
  • Postfix 2.10
  • Dovecot 2.2.12

Solution

  • Dovecot have two modes for login processes.

    First is called secure mode when each client is connected via its own process.

    Second is called performance mode when single process serve all the clients.

    In fact performance mode is not so insecure, but rather secure mode is paranoid.

    You have to set desired mode in the config:

    service imap-login {
      inet_listener imap {
        port        = 143
      }
      inet_listener imaps {
        port        = 993
        ssl         = yes
      }
    # service_count = 0 # Performance mode
      service_count = 1 # Secure mode
      process_min_avail = 1
    }
    

    In my case performance mode serve to 1k+ users.