Настройка сервера Ubuntu
1. Установите Xvfb, Xorg для работы с виртуальным устройством вывода
apt-get install xvfb -y apt-get install x11-xkb-utils xfonts-100dpi xfonts-75dpi xfonts-scalable xfonts-cyrillic xserver-xorg-core xserver-xorg-video-dummy alsa-base -y
2. Установите sound card dummy
apt-get install linux-image-extra-4.4.0-62-generic -y modprobe snd-dummy
3. Настройте виртуальный монитор: отредактируйте файл конфигурации /usr/share/X11/xorg.conf.d/xorg.conf
Section "Device" Identifier "Configured Video Device" Driver "dummy" Option "ConstantDPI" "true" VideoRam 192000 EndSection Section "Monitor" Identifier "Configured Monitor" HorizSync 31.5-48.5 VertRefresh 50-70 Modeline "1600x1200" 22.04 1600 1632 1712 1744 1200 1229 1231 1261 Modeline "1600x900" 33.92 1600 1632 1760 1792 900 921 924 946 Modeline "1440x900" 30.66 1440 1472 1584 1616 900 921 924 946 ModeLine "1366x768" 72.00 1366 1414 1446 1494 768 771 777 803 Modeline "1280x1024" 31.50 1280 1312 1424 1456 1024 1048 1052 1076 Modeline "1280x800" 24.15 1280 1312 1400 1432 800 819 822 841 Modeline "1280x768" 23.11 1280 1312 1392 1424 768 786 789 807 Modeline "1360x768" 24.49 1360 1392 1480 1512 768 786 789 807 Modeline "1024x768" 18.71 1024 1056 1120 1152 768 786 789 807 Modeline "768x1024" 19.50 768 800 872 904 1024 1048 1052 1076 EndSection Section "Screen" Identifier "Default Screen" Monitor "Configured Monitor" Device "Configured Video Device" DefaultDepth 24 SubSection "Display" Depth 24 Modes "1600x1200" "1680x1050" "1600x900" "1400x1050" "1440x900" "1280x1024" "1366x768" "1280x800" "1024x768" EndSubSection EndSection
4. Установите Apache
apt-get install apache2
5. Установите Chrome
wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add - echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" > /etc/apt/sources.list.d/google-chrome.list apt-get update apt-get install google-chrome-stable
Скрипты для нагрузочного тестирования
Архив со скриптами для нагрузочного тестирования доступен для скачивания здесь.
Архив содержит:
- директорию player со скриптами Web-плеера
- start_xorg.sh - скрипт для запуска Xorg
- loadtest.sh - скрипт для запуска тестов
Скрипты плеера должны быть доступны из Apache HTML директории: поместите директорию player, например, в /var/www/html/tests/player.
Тестовую страницу player.html можно вызывать с параметрами. Например:
http://<server IP>/tests/player/player.html?streamName=test&autoplay=true
Поддерживаются следующие параметры
- имя потока: streamName=test
- автозапуск воспроизведения: autoplay=true
- разрешение: resolution=640x480 (при этом на сервере включается транскодинг, что увеличивает нагрузку на сервер)
- технология воспроизведения: mediaProvider=WebRTC,MSE
Скрипту loadtest.sh могут быть переданы следующие параметры:
обязательный
- url - URL страницы плеера с необходимыми параметрами - или
- urlsfile - путь к файлу, содержащему несколько таких URL-адресов, которые будет пройдены по порядку
опциональные
- stressrate - интервал добавления нового подписчика в миллисекундах
- ttl - время жизни подписчика в секундах
- maxsubscribers - максимальное количество подписчиков
Запуск тестов
1. Запустите Xorg
./start_xorg.sh
2. Запустите loadtest.sh с необходимыми параметрами
Например,
./loadtest.sh -url http://127.0.0.1/tests/player/player.html -maxsubscribers 50 -stressrate 1000
или
./loadtest.sh -urlsfile urls.txt -stressrate 500 -ttl 30 -maxsubscribers 50