Мы сталкиваемся с проблемой с чрезвычайно большим объемом записи данных на диск и огромным объемом трафика через интерфейс обратной петли.
Среда: 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
Выполните приведенную ниже команду и попробуйте установить значение на основе результата в 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