mp4 streaming tuning

Oleg Palij o.palij at dp.uz.gov.ua
Mon Dec 17 07:42:55 UTC 2012


17 дек. 2012, в 08:40, Вадим Лазовский написал(а):
> nginx/1.2.3 стримит видео, упираемся в 1.5 Гб/c (две 1Гб сетевухи в bond) и nginx начинает с задержкой в начале (несколько секунд, иногда до минуты) отдавать файлы, при этом iowait 20-30%, si ~ 20%.
> moov-атом точно перенесен в начала файла? Во всех файлах?
Точно.

> 20-30 и 20% это пики на ядре или среднее по 4 ядрам?
среднее по 4м

>  
> Популярные файлы лежат на ssd, остальное на hdd.
> Сколько всего ssd и обычных дисках. И не в массивах ли они часом?
1 ssd и 6 hdd в software raid5.

> На сервере 4 физических процессора, имеет смысл поднимать кол-во worker_processes?
> 4 это мало. Я бы поднял штук до 20. Не повредит уж точно.
Поднял вчера, посмотрю сегодня в пик изменится-ли что нибудь. 

> Без aio отдаем 4 Гбит.

С включенным sendfile? directio для очень больших файлов включен? output_buffers тюнили?

> Имеет-ли смысл включать AIO? linux 2.6.38 SMP x86_64
Пробовал включить aio. Совсем плохо стало. iowait то упал до 0, но user задрался, la сильно расти начал, и стримил при этом не больше 100Мбит.

> Или может упираемся в сетевухи? Cетевые прерывания распределены по ядрам равномерно. И когда стояла одна сетевуха - она на 1Гб стримила нормально.
> 00:19.0 Ethernet controller: Intel Corporation 82578DM Gigabit Network Connection (rev 05)
> 04:00.0 Ethernet controller: Intel Corporation 82574L Gigabit Network Connection
> ЕМНИП, обе e1000. Не умеют очереди.
Одна умеет, но мало :)

  48: 1852018402 1851886313 1851907204 1851967041   PCI-MSI-edge      eth1
  49: 3301989410 3301930314 3301981994 3302369693   PCI-MSI-edge      eth0-rx-0
  50: 2482755925 2482702187 2482712776 2482293121   PCI-MSI-edge      eth0-tx-0
  51:        401        407        405        424   PCI-MSI-edge      eth0

> Если есть возможность поставьте ту, которая на igb. 4 очереди, каждую на свое ядро.
> Либо включите RPS+RFS: http://code.google.com/p/kernel/wiki/NetScalingGuide
Спасибо. Посмотрю в эту сторону.

> В каком состоянии находятся воркеры в часы максимальной нагрузки?
По памяти не скажу, пик вечером будет, гляну.

> Сколько пик wa и si на каждом ядре в часы максимальной нагрузки?
Распределяется равномерно +- проценты.

> Кто в топе "iostat -mdx 1 /dev/sd?" ?
Процентов на 60-70 чтение идет с ssd (160Gb), остальное с массива (там почти 1Тб).
Дело в том, что в пик пробовал с помощью dd тестить скорость отдачи фалов с винтов. Отдаваться начинает очень быстро, а nginx тупит от 5 до 40 секунд перед началом отдачи файла.

> Как сконфигурирован bond?
Все по-умолчанию. balance-rr.

> Мб воткнуть третий линк и добавить памяти?.
А зачем третий линк, если два не утилизируются полностью? Память, к сожалению, не добавить.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20121217/72a4425d/attachment-0001.html>


Подробная информация о списке рассылки nginx-ru