Я прошу вашей помощи.
Я сама уже не вижу выхода.
у меня есть сервер
1x Xeon E-2236
32RAM
4 диска по 10 ТБ (WDC WD101KRYZ-01) - собраны в RAID-0.
Диски быстрые. Каждый по отдельности обеспечивает скорость чтения/записи 250 МБ/с. Массив RAID-0 выдает 900МБ/с — этого вполне достаточно, чтобы прокачать 7-гигабитный канал. Тест проведен с помощью hdparm -t /dev/md0
Сервер предназначен для раздачи больших видео файлов - это сервер потокового видео.
Когда включаю трафик на этот сервер, какое-то время все идет хорошо, но со временем iowait вырастает до максимума. Жесткие диски обрабатывают только 40 запросов в секунду, что очень мало. iowait занят рабочим процессом (nginx).
1. Почему? Что я делаю не так?
Я попытался включить aio для многопоточности в nginx, это помогло, но не обязательно.
Увеличил readahead=8192, blockdev --setra 65536 - результата нет.
2. Почему ядро не пытается кэшировать статические данные в ОЗУ при максимальной загрузке процессора?
Проверил диски. Бэд-секторов нет. HDD - отлично.
3. Почему atop показывает высокую нагрузку только на один диск? (см. скриншот)
4. Не должен ли RAID-0 распределять нагрузку по всем дискам параллельно?
Я прошу вашей помощи.
Спасибо!