Добрый день, Илья.

Этот метод будет работать при много-поточной загрузке, когда запрашивается
сразу несколько разных файлов?
 
Запустил тест в 2 потока, (запущен только 1 воркер) в итоге
количество вызовов sendmmsg() увеличилось до 27 (без дополнительного патча).
    1361  33.4%  33.4%    1361  33.4% __sendmsg
    1111  27.3%  60.8%    1111  27.3% _aesni_ctr32_ghash_6x
    525  12.9%  73.7%      525  12.9% __libc_pread64
    351  8.6%  82.3%      351  8.6% __memmove_avx_unaligned_erms
      79  1.9%  84.2%      79  1.9% __recvmsg
      38  0.9%  85.2%      239  5.9% ngx_quic_recvmsg
      31  0.8%  85.9%      31  0.8% epoll_wait
      27  0.7%  86.6%      27  0.7% __sendmmsg
 
А вот с протоколом HTTP/1.1 такой трюк не сработал - второй запрос на
скачивание ожидал завершение первого запроса. Не обращал раньше внимания
на эту особенность. При 2-х воркерах тест в 2 потока сработал :)
 
Вы писали 12 января 2024 г., 14:59:25:
 
> Это ожидаемо, если накапливается 1 пакет, его дорого отправлять через 
> sendmmsg. Собственно, смысл проверки был в том, чтобы проверить, 
> действительно ли пакеты (в вашем случае) не успевают накапливаться

 
-- 
С уважением,
 Izorkin                          mailto:izor...@gmail.com
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
https://mailman.nginx.org/mailman/listinfo/nginx-ru

Ответить