<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <br>
    <blockquote type="cite"
      cite="mid:e1260571-9174-f26b-1f6b-79a9557c49b0@univ-brest.fr">
      <blockquote type="cite">
        <blockquote type="cite">
          <br>
          service auth-worker {
          <br>
             client_limit = 1
          <br>
             idle_kill = 0
          <br>
             process_limit = 6000000
          <br>
             process_min_avail = 0
          <br>
             service_count = 1
          <br>
             vsz_limit = 18446744073709551615 B
          <br>
          }
          <br>
        </blockquote>
        What dovecot version is this? with 2.3.17 or later you should
        probably use service_count=0 here.
        <br>
        <br>
        That would prevent auth-worker process from dying after each
        authentication and then need for new process to be spawned for
        each authentication.
        <br>
      </blockquote>
      <br>
      Yes, it is 2.3.17.
      <br>
      I give a try, it's slighty better. There is a little fewer stalled
      auth processes.
      <br>
      But I didn't manage to go more than 2000 clients although in
      production it's more than 8000 connections.
      <br>
      Maybe, it's because I didn't find how to make persistent
      connections with imaptest and there was too many login/logout. I
      use delay to make client during around 5 seconds
      <br>
      <br>
      So I increase this delay up to 120s, this slow down login/logout
      and decrease processes stuck in wait auth queue.
      <br>
      <br>
      I think I will go this way to simulate normal load on this server.
      <br>
      But that doesn't simulate a reboot of service while clients are
      connected.
      <br>
      <br>
      Thank you all,
      <br>
      Ismaël
      <br>
      <br>
    </blockquote>
    <p><br>
    </p>
    <p>Hello,</p>
    <p>I made some little progress in my benchmarks.<br>
      I have found how to use imaptest to get IDLE command and make
      persistent connections, using profile.</p>
    <p>I have ended yesterday to have 8000 persistents clients on the
      bench server.<br>
      My target is 60000 persistents clients for 250k mailboxes.</p>
    <p>The server has 12 procs (24 cores) and 192 Go RAM, fs is zfs.<br>
      Increasing clients over 8000 make stalled all connections.<br>
      Login slows down drastically, but after login, IMAP commands stay
      fast.</p>
    <p>I'm wondering how to go further.<br>
      I believe that I have to tune imap-login service.<br>
      I'm seeing 60 Go RAM used in my tests, I suppose that's login
      process and authentication UNIX socket.<br>
      Monitoring alerts also about some minor page faults, it could be
      related.</p>
    <p><span style="color: rgb(0, 0, 0); font-family: -apple-system,
        "Segoe UI", "Segoe UI Emoji", sans-serif,
        Meiryo; font-size: 14px; font-style: normal;
        font-variant-ligatures: normal; font-variant-caps: normal;
        font-weight: 400; letter-spacing: normal; orphans: 2;
        text-align: start; text-indent: 0px; text-transform: none;
        white-space: normal; widows: 2; word-spacing: 0px;
        -webkit-text-stroke-width: 0px; background-color: rgb(255, 255,
        255); text-decoration-thickness: initial; text-decoration-style:
        initial; text-decoration-color: initial; display: inline
        !important; float: none;"></span>Conf for now :</p>
    <pre>service auth-worker {
  client_limit = 1                  # because only the master auth process connects to auth worker
  process_limit = 18000     # should be a bit higher than auth_worker_max_count setting
  service_count = 0             # prevent auth-worker process from dying after each authentication
  process_min_avail = 96     # number of CPU cores * 4
}
service imap-login {
  client_limit = 200
  process_limit = 3000
  process_min_avail = 96
  service_count = 0
  vsz_limit = 1G
}
// using High-performance mode : <a class="moz-txt-link-freetext" href="https://doc.dovecot.org/admin_manual/login_processes/">https://doc.dovecot.org/admin_manual/login_processes/</a>

</pre>
    I'll try today differents settings for this imap-login step, while
    trying to increase number of clients.<br>
    <p>If you have any hints to achieve that, I thank you</p>
    <p>Ismaël Tanguy<br>
    </p>
  </body>
</html>