<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Hello,</p>
    <p>I'm currently benchmarking new hardware aimed to serve around 70k
      users<br>
      For now, our IMAP server have 13k users.</p>
    <p>To run imaptest, I've spwan some bench clients.<br>
      Each bench client can run imaptest with 1000 clients.<br>
      More than 1000 clients will load CPU of this bench client</p>
    <p>imaptest command (command are chosen from usage stat on our other
      IMAP servers): <br>
    </p>
    <pre>imaptest host=xxxxx port=xxx userfile=userfile mbox=/root/dovecot-crlf
        pass=sxxxx seed=123 clients=1000 select=194 uidfetch=94 noop=70
        status=82 append=49 fetch=276 list=12 store=19 expunge=22
        msubs=4 search=4 logout=1 delete=81 no_pipelining</pre>
    <p><br>
    </p>
    <p>With one bench client, everything runs smoothly.</p>
    <pre># ps aux | grep dovecot | awk '{print $11,$12,$13,$14,$15,$16,$17,$18}' | sort | uniq -c
     1 anvil: [221 connections] (anvil)
   1 auth: [13 wait, 0 passdb, 0 userdb] (auth)
   1 dovecot/config
   1 dovecot/imap
  84 dovecot/imap-login
   1 dovecot/log
  20 dovecot/pop3-login
   1 grep dovecot
   1 stats: [1307 connections] (stats)</pre>
    <p><br>
    </p>
    <p>When a second instance bench instance start imaptest, clients of
      first and second instance begin to stall :</p>
    <pre> 1400 stalled for 20 secs in command: 1 LOGIN <a class="moz-txt-link-rfc2396E" href="mailto:fakeuser644@mailbench....">"fakeuser644@mailbench...."</a> "password"
</pre>
    <p>And :</p>
    <pre># ps aux | grep dovecot | awk '{print $11,$12,$13,$14,$15,$16,$17,$18}' | sort | uniq -c
   1 anvil: [221 connections] (anvil)
   1 auth: [1227 wait, 0 passdb, 0 userdb] (auth)
   1 dovecot/config
   1 dovecot/imap
  37 dovecot/imap-login
   1 dovecot/log
  20 dovecot/pop3-login
   1 grep dovecot
   1 stats: [680 connections] (stats)</pre>
    <p>Every auth go in wait, number of connection decreases.<br>
    </p>
    <p>Using mysql or a password file give same results.</p>
    <p>I have used different values for service_count with also no
      success.</p>
    <p>I think my use of imaptest could be false.<br>
      My understanding of service auth is limited for now because I'm
      quite new to Dovecot (I have previously worked with Cyrus).</p>
    <p>Thank you for every hints.</p>
    <p><br>
    </p>
    <p>Ismaël Tanguy<br>
    </p>
    <p><br>
    </p>
    <p><br>
    </p>
  </body>
</html>