diff dovecot-example.conf @ 4538:9d9e72374164 HEAD

Fixes to login process handling, especially with login_process_per_connection=no. Removed login_max_logging_users setting since it was somewhat weird in how it worked. Added login_max_connections to replace it with login_process_per_connection=no, and with =yes its functionality is now within login_max_processes_count.
author Timo Sirainen <tss@iki.fi>
date Sun, 06 Aug 2006 23:05:32 +0300
parents 38f9daea3279
children c8177c854d65
line wrap: on
line diff
--- a/dovecot-example.conf	Fri Aug 04 20:46:11 2006 +0300
+++ b/dovecot-example.conf	Sun Aug 06 23:05:32 2006 +0300
@@ -142,24 +142,35 @@
 # to create processes all the time.
 #login_process_per_connection = yes
 
-# Number of login processes to create. If login_process_per_connection is
-# yes, this is the number of extra processes waiting for users to log in.
+# Number of login processes to keep for listening new connections.
 #login_processes_count = 3
 
-# Maximum number of extra login processes to create. The extra process count
+# Maximum number of login processes to create. The listening process count
 # usually stays at login_processes_count, but when multiple users start logging
 # in at the same time more extra processes are created. To prevent fork-bombing
 # we check only once in a second if new processes should be created - if all
-# of them are used at the time, we double their amount until limit set by this
-# setting is reached. This setting is used only if
-# login_process_per_connection is yes.
+# of them are used at the time, we double their amount until the limit set by
+# this setting is reached.
 #login_max_processes_count = 128
 
-# Maximum number of connections allowed in login state. When this limit is
-# reached, the oldest connections are dropped. If login_process_per_connection
-# is no, this is a per-process value, so the absolute maximum number of users
-# logging in actually login_processes_count * max_logging_users.
-#login_max_logging_users = 256
+# Maximum number of connections allowed per each login process. This setting
+# is used only if login_process_per_connection=no. Once the limit is reached,
+# the process notifies master so that it can create a new login process.
+# When counting the number of connections and used file descriptors, you
+# can use this table:
+#   Type     Logged in  SSL/TLS    fds used   connections used
+#   Client   -          -          1          1
+#   Client   x          -          0          0
+#   Client   -          x          3          2
+#   Client   x          x          2          1
+#   Proxy    -          -          2          2
+#   Proxy    x          -          2          1
+#   Proxy    -          x          4          3
+#   Proxy    x          x          3          2
+# So in worst case scenario when you have n clients logging in, after STARTTLS
+# they can use 3*n fds and cause the connection count to go 2 times higher
+# than this limit. With proxying it can use 4*n fds and go 3 times higher.
+#login_max_connections = 256
 
 # Greeting message for clients.
 #login_greeting = Dovecot ready.