В комплект видеосервера «Момент» входит утилита нагрузочного тестирования rtmptool, с помощью которой можно имитировать одновременное подключение нескольких тысяч RTMP-клиентов. Параметры командной строки rtmptool:
-n --num-clients <число> — Кол-во одновременных подключений. По умолчанию: 1
-s --server-addr <адрес> — Адрес сервера, IP:порт. По умолчанию: localhost:1935
-a --app <строка> — Имя приложения для подключения. По умолчанию: oflaDemo
-c --channel <строка> — Название канала для просмотра. По умолчанию: red5StreamDemo
-t --num-threads <число> — Кол-во потоков. По умолчанию: 0, использовать один поток.
-r --report-interval <число> — Интервал между сообщениями о получении видеокадра. По умолчанию: 0, не сообщать о получении.
--nonfatal-errors — Не завершать работу при любой ошибке.
-h --help — Показать справку.
Также для тестирования можно использовать встроенный модуль mod_test, предназначенный для генерации псевдо-видеопотока — последовательности кадров заданного размера и частоты, наполненных случайными данными. С помощью модуля mod_test и утилиты rtmptool можно оперативно оценить влияние характеристик видеопотока на производительность сервера при большом числе одновременно подключенных клиентов.
Параметры модуля mod_test (задаются в файле конфигурации):
mod_test/enable — включить модуль mod_test (yes/no). По умолчанию: "no" (mod_test выключен).
mod_test/stream_name — название видеопотока, генерируемого модулем mod_test. По умолчанию: "test".
mod_test/frame_duration — продолжительность одного кадра в миллисекундах. По умолчанию: 40 мс (25 кадров/сек).
mod_test/frame_size — размер кадра в байтах. По умолчанию: 2500 байт.
mod_test/start_timestamp — временной штамп первого сгенерированного пакета. По умолчанию: 0.
mod_test/keyframe_interval — расстояние между ключевыми кадрами псевдо-видеопотока (в кадрах). По умолчанию: 10 кадров.
mod_test/burst_width — количество видеокадров, генерируемых за одну итерацию. Не влияет на среднюю частоту кадров. По умолчанию: 1.
mod_test/prechunk_size — размер RTMP-чанка в байтах. Видеосообщения разбиваются на чанки однократно перед рассылкой клиентам. Если в качестве значения задать 0, то разбиение на чанки (длиной по умолчанию) будет производиться отдельно для каждого клиента. По умолчанию: 65536 байт.
mod_test/same_pages — если включено, то все видеокадры представляются одним и тем же набором страниц, который не меняется во время работы. Если выключено, то каждый кадр генерируется отдельно и размещается в новом наборе страниц. По умолчанию: "on" (включено).
К содержанию