<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p>Да, меняли. У нас есть настройка, которая меняет
      keepalive_requests в зависимости от характера трафика. Для трафика
      браузер-нджинкс это 100, для трафика сервер-нджинкс 214748364:<br>
      <br>
      map $ssp_name $needs_keepalive {<br>
          client no;<br>
          default yes;<br>
        }<br>
      <br>
        map $needs_keepalive $keepalive_requests {<br>
          no 100;<br>
          default 214748364;</p>
    <p>}</p>
    <p><br>
    </p>
    <div class="moz-signature"><font style="font-size: 9pt" size="2"
        face="arial, sans-serif" color="#000000">Олег Паничев | Инженер
        по эксплуатации | +79626801636 | <font style="font-size: 9pt"
          size="2" face="arial, sans-serif"><a
            href="mailto:panichev@segmento.ru"><span style="color:rgb(255,0,0);text-decoration:underline;vertical-align:baseline;white-space:pre-wrap">panichev@segmento.ru</span></a></font>
        | Санкт-Петербург, 18 линия В.О. 29 | <font style="font-size:
          9pt" size="2" face="arial, sans-serif"><a
href="http://segmento.ru/?utm_source=segmento&utm_medium=cps&utm_campaign=email_sign"><span style="color:rgb(255,0,0);text-decoration:underline;vertical-align:baseline;white-space:pre-wrap">segmento.ru</span></a></font>
        | <font style="font-size: 9pt" size="2" face="arial,
          sans-serif"><a href="https://www.interfax.ru/business/636949"><span style="color:rgb(255,0,0);text-decoration:underline;vertical-align:baseline;white-space:pre-wrap">Совместный проект Сбербанк и АФК Система</span></a></font><br>
        <img src="https://segmento.ru/logo_sm.png" alt="Segmento logo">
      </font></div>
    <div class="moz-cite-prefix">On 29.03.2019 10:42, Илья Шипицин
      wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CAFHpkQEr8Lgb9fTisOg4HxTj5xE6o7BEwuHLQQSQXKgkzpO5JQ@mail.gmail.com">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div dir="ltr">
        <div dir="ltr">настройку keepalive_requests меняли ? или дефолт
          ?<br>
        </div>
      </div>
      <br>
      <div class="gmail_quote">
        <div dir="ltr" class="gmail_attr">пт, 29 мар. 2019 г. в 12:37,
          Panichev Oleg <<a href="mailto:panichev@segmento.ru"
            moz-do-not-send="true">panichev@segmento.ru</a>>:<br>
        </div>
        <blockquote class="gmail_quote" style="margin:0px 0px 0px
          0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
          <div bgcolor="#FFFFFF">
            <p> </p>
            <div class="gmail-m_4647396267043719418moz-text-html"
              lang="x-unicode">
              <p>Привет!<br>
              </p>
              <p><br>
                Проблема — высокое число timewait коннекшнов между
                nginx-proxy и бэкендами (до 30-40к), уровень трафика —
                десятки тысяч запросов в секунду извне, в основном
                короткие сессии на несколько запросов. Стек Centos 6
                настроен на переиспользование tw sockets - tw_reuse=1,
                tcp_fin_timeout низкий (2с).</p>
              <p><br>
              </p>
              <p><font size="-1"><br>
                  nginx/1.14.0, ~ 25 fastcgi backends<br>
                </font> <font size="-1"><br>
                  upstream all {<br>
                  hash $shard_key consistent;<br>
                  server server10.local:9988 max_fails=0 fail_timeout=1s
                  weight=100;<br>
                  server server11.local:9988 max_fails=0 fail_timeout=1s
                  weight=100;<br>
                  ..<br>
                  ..<br>
                  ..<br>
                  server server33.local:9988 max_fails=0 fail_timeout=1s
                  weight=100;<br>
                  server server34.local:9988 max_fails=0 fail_timeout=1s
                  weight=100;<br>
                  keepalive 100;<br>
                  }<br>
                </font> <font size="-1"><br>
                    fastcgi_pass all;<br>
                    fastcgi_keep_conn on;<br>
                    fastcgi_next_upstream off;<br>
                    fastcgi_buffers 16 16k;<br>
                    fastcgi_buffer_size 32k;<br>
                    fastcgi_connect_timeout 20ms;<br>
                    fastcgi_read_timeout 75ms;<br>
                    fastcgi_intercept_errors on;<br>
                    error_page 500 501 502 503 504 = $failover;</font></p>
              <p><br>
              </p>
              <p>Вероятно, высокое количество TW соединений вызвано
                поведением-настройкой Nginx, а именно необходимостью
                слать заглушку при достижении read timeout до апстрима
                (75мс), в этом случае Nginx закрывает соединение с
                апстримом принудительно (TCP RST), шлет фэиловер респонс
                клиенту и переоткрывает его снова. Мы видим около 30-35
                RST пакетов в секунду в направлении бэкендов от Nginx,
                что соотвествует числу фейловеров в секунду по тому же
                апстриму согласно access/error.log.<br>
                <br>
                Вопрос — верны ли рассуждения о причинах высокого числа
                TW соединений между прокси и бэкендами и как их можно
                уменьшить средствами нжинкс, если это возможно?<br>
                <br>
                Спасибо</p>
            </div>
            <p><font size="2"><font face="arial, sans-serif">--</font></font></p>
            <p><font size="2"><font face="arial, sans-serif">С
                  уважением, Олег<br>
                </font></font></p>
          </div>
          _______________________________________________<br>
          nginx-ru mailing list<br>
          <a href="mailto:nginx-ru@nginx.org" target="_blank"
            moz-do-not-send="true">nginx-ru@nginx.org</a><br>
          <a href="http://mailman.nginx.org/mailman/listinfo/nginx-ru"
            rel="noreferrer" target="_blank" moz-do-not-send="true">http://mailman.nginx.org/mailman/listinfo/nginx-ru</a></blockquote>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
nginx-ru mailing list
<a class="moz-txt-link-abbreviated" href="mailto:nginx-ru@nginx.org">nginx-ru@nginx.org</a>
<a class="moz-txt-link-freetext" href="http://mailman.nginx.org/mailman/listinfo/nginx-ru">http://mailman.nginx.org/mailman/listinfo/nginx-ru</a></pre>
    </blockquote>
  </body>
</html>