<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">пт, 12 янв. 2024 г. в 15:16, <<a href="mailto:izorkin@gmail.com">izorkin@gmail.com</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 class="msg-3921487608184304244">            <div><p>Добрый день, Илья.</p><p><br></p><p>Этот метод будет работать при много-поточной загрузке, когда запрашивается</p><p>сразу несколько разных файлов?</p><p> </p><p>Запустил тест в 2 потока, (запущен только 1 воркер) в итоге</p><p>количество вызовов sendmmsg() увеличилось до 27 (без дополнительного патча).</p><p>    1361  33.4%  33.4%     1361  33.4% __sendmsg</p><p>    1111  27.3%  60.8%     1111  27.3% _aesni_ctr32_ghash_6x</p><p>     525  12.9%  73.7%      525  12.9% __libc_pread64</p><p>     351   8.6%  82.3%      351   8.6% __memmove_avx_unaligned_erms</p><p>      79   1.9%  84.2%       79   1.9% __recvmsg</p><p>      38   0.9%  85.2%      239   5.9% ngx_quic_recvmsg</p><p>      31   0.8%  85.9%       31   0.8% epoll_wait</p><p>      27   0.7%  86.6%       27   0.7% __sendmmsg</p><p> </p><p>А вот с протоколом HTTP/1.1 такой трюк не сработал - второй запрос на</p><p>скачивание ожидал завершение первого запроса. Не обращал раньше внимания</p><p>на эту особенность. При 2-х воркерах тест в 2 потока сработал :)</p></div></div></blockquote><div><br></div><div>а попробуйте изменить условие на 2 пакета</div><div><br></div><div>        if (bytes > len * 3) {<br>            /* require at least ~3 full packets to batch */<br>            return 1;<br>        }<br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="msg-3921487608184304244"><div><p> </p><p>Вы писали 12 января 2024 г., 14:59:25:</p><p> </p><blockquote class="m_-3921487608184304244rt"><div dir="auto"><div dir="auto">Это ожидаемо, если накапливается 1 пакет, его дорого отправлять через sendmmsg. Собственно, смысл проверки был в том, чтобы проверить, действительно ли пакеты (в вашем случае) не успевают накапливаться<br>
</div></div>
</blockquote><p></p><p><br></p><p> </p><div class="m_-3921487608184304244email-signature">-- <br>
С уважением,<br>
 Izorkin                          <a href="mailto:izorkin@gmail.com" target="_blank">mailto:izorkin@gmail.com</a></div></div>_______________________________________________<br>
nginx-ru mailing list<br>
<a href="mailto:nginx-ru@nginx.org" target="_blank">nginx-ru@nginx.org</a><br>
<a href="https://mailman.nginx.org/mailman/listinfo/nginx-ru" rel="noreferrer" target="_blank">https://mailman.nginx.org/mailman/listinfo/nginx-ru</a><br>
</div></blockquote></div></div>