Welcome! Log In Create A New Profile

Advanced

Re: Размер блока чтения в proxy_module

Maxim Dounin
May 23, 2022 09:02AM
Hello!

On Mon, May 23, 2022 at 09:25:10AM +0300, Александр Кунич via nginx-ru wrote:

> Подскажите пожалуйста, есть ли способ настроить nginx так, чтобы он
> читал более большими кусками файлы? У меня стоит задача раздавать файлы,
> размер которых от 0,7 до 8 мегабайт. Большая часть больше 1М .
> Собрал массив на тестовом сервере.
> lsi raid1, размер чанка 1М,
>
> Тест fio с размером блока 1М показывает производительность массива
> 185-190 МБ/с
>
> Nginx , судя по iostat avgrq-sz, читает кусками чуть меньше 256КБ .
> Пиковая производительность в 2 раза меньше (около 80-85МБ/с).
>
> Device:         rrqm/s   wrqm/s     r/s     w/s    rMB/s    wMB/s
> avgrq-sz avgqu-sz   await  svctm  %util
> sdd               0.60     0.00  348.80    0.00    73.39 0.00  
> 430.93     7.01   20.08   2.45  85.44
>
> Пробовал как ext4, так и xfs. Результат примерно одинаков. Максимальный
> размер io у VD дисков выставлен в 1 мегабайт:
>
> /queue/max_hw_sectors_kb:1024
> /queue/max_sectors_kb:1024
>
> В тесте fio  avgrq-sz близок к 2048, чего и хотелось бы достичь от nginx.
>
> Нигде в документации не нашёл параметров, которые явно могли бы на это
> повлиять. Различные буферы "крутить" пробовал, не помогает.
> Заранее, большое спасибо за помощь.

Если sendfile выключен - nginx будет читать с диска в соответствии
с размером output_buffers (http://nginx.org/r/output_buffers).

Если sendfile включён - чтением с диска занимается система, и
повлиять на это на Linux'е не очень много способов. Из того, что
можно сделать - с помощью директивы read_ahead
(http://nginx.org/r/read_ahead) уведомить систему, что читать мы
планируем последовательно, а также убедиться, что буфера сокетов
на отправку достаточного размера, чтобы обеспечить желаемый размер
чтения. Ну или выключить sendfile и смотри пункт первый.

--
Maxim Dounin
http://mdounin.ru/
_______________________________________________
nginx-ru mailing list -- nginx-ru@nginx.org
To unsubscribe send an email to nginx-ru-leave@nginx.org
Subject Author Posted

Размер блока чтения в proxy_module

Александр Кунич via nginx-ru May 23, 2022 02:26AM

Re: Размер блока чтения в proxy_module

Maxim Dounin May 23, 2022 09:02AM

Re: Размер блока чтения в proxy_module

Sergey Budnevich May 24, 2022 09:10AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 262
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready