Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Current »

Настройка сервера 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 (в Ubuntu 20.04 и новее данный шаг можно пропустить)

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

Section "ServerFlags"
    Option "MaxClients" "2048"
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 можно вызывать с параметрами. Например:

https://<server IP>/tests/player/player.html?streamName=test&autoplay=true

Поддерживаются следующие параметры

  • имя потока: streamName=test
  • автозапуск воспроизведения: autoplay=true
  • разрешение: resolution=640x480 (при этом на сервере включается транскодинг, что увеличивает нагрузку на сервер)
  • технология воспроизведения: mediaProvider=WebRTC,MSE

Также в тестах может быть использована страница Embed Player с тестируемого сервера:

https://wcs:8888/embed_player?urlServer=wss://wcs:8443&streamName=test&mediaProviders=WebRTC&autoplay=true

Скрипту loadtest.sh могут быть переданы следующие параметры:

обязательный

  • url - URL страницы плеера с необходимыми параметрами - или
  • urlsfile - путь к файлу, содержащему несколько таких URL-адресов, которые будет пройдены по порядку

опциональные

  • stressrate - интервал добавления нового подписчика в миллисекундах
  • ttl - время жизни подписчика в секундах, должно быть больше, чем число подписчиков, умноженное на stressrate в секундах
  • maxsubscribers - максимальное количество подписчиков

Запуск тестов

1. Запустите Xorg

./start_xorg.sh

2. Увеличьте максимальное количество открытых файлов в системе

ulimit -n 1000000

3. Запустите loadtest.sh с необходимыми параметрами

Например,

./loadtest.sh -url https://wcs:8888/embed_player?urlServer=wss://wcs:8443&streamName=test&mediaProviders=WebRTC&autoplay=true -maxsubscribers 50 -stressrate 1000 -ttl=300

или

./loadtest.sh -urlsfile urls.txt -stressrate 1000 -ttl 300 -maxsubscribers 50
  • No labels