nginx + php-fpm чрезвычайно большие объемы данных, записываемые на диск

Мы сталкиваемся с проблемой с чрезвычайно большим объемом записи данных на диск и огромным объемом трафика через интерфейс обратной петли.

Среда: Debian 10.3 (4.19.0.8) - виртуализирован в Hyper-v nginx / 1.14.2 php-fpm 7.3 mariadb Ver 15.1 Distrib 10.3.22-MariaDB

Машина обслуживает 5 php-порталов Laravel с некоторым динамическим, но в основном статическим контентом (электронные книги с большим количеством ресурсов - изображения, аудио, видео материалы). При 300-1500 одновременных пользователях, объем записи на диск все время варьируется от 50 до 200 МБ / с (измерено с помощью iotop), чтение данных практически равно 0. За один день на диск может быть записано более 1 ТБ данных, входящий трафик на eth0 составляет всего около 10 ГБ. Свободное место на жестком диске практически не меняется. Запись на диск коррелирует с трафиком, который проходит через интерфейс обратной связи. Похоже, что nginx / fpm все время «перезаписывают» данные на диске.

На машине выделено 48 ядер, 48 ГБ оперативной памяти, raid-6 SSD, раздел подкачки никогда не затрагивался.

Пока мы пробовали много возможных cfgs (переключение php-fpm с сокета на tcpip, включение / выключение sendfile, настройка nginx fastcgi_cache), но безуспешно. Вот текущий cfg: https://pastebin.com/S6rdjbvE

Кто-нибудь сталкивался с таким поведением? У нас совсем нет идей ..

Спасибо. Nejc

0
задан 21 March 2020 в 11:36
1 ответ

Выполните приведенную ниже команду и попробуйте установить значение на основе результата в www.conf

ps --no-headers -o "rss,cmd" -C php-fpm7.3 | awk '{ sum+=$1 } END { printf ("%d%s\n", sum/NR/1024,"Mb") }'

Вычислить значения

min_spare_servers + (max_spare_servers - min_spare_servers) / 2
0
ответ дан 30 March 2020 в 01:28

Теги

Похожие вопросы