Перейти к содержанию

Нагрузочное тестирование SIP-звонков

Описание

Нагрузочный тест SIP-звонков проводится по следующему сценарию:

  1. Сервер 1 создает SIP-звонки с указанного диапазона SIP-аккаунтов на заданный SIP-аккаунт на сервере 2 с интервалом в 1 секунду.
  2. Сервер 2 совершает звонки с указанного диапазона SIP-аккаунтов на заданный SIP-аккаунт.

Нагрузочный тест регистрации на SIP-сервере проводится по следующему сценарию:

  1. Сервер 1 создает соединения для SIP-звонков с указанного диапазона SIP-аккаунтов на заданный SIP-аккаунт на сервере 2 с интервалом в 1 секунду.
  2. Сервер 2 устанавливает соединения с SIP-сервером и регистрируется на нем.

Для проведения этих тестов необходим SIP-сервер, который будет использоваться в качестве прокси для совершения звонков. Этот SIP-сервер должен быть настроен следующим образом:

  • числовые имена SIP-аккаунтов, например 10001, 10002 и т.п.
  • возможность принимать произвольный пароль для SIP-аккаунтов, либо задать одинаковый пароль для всех аккаунтов, например Abcd1111

Пароль для SIP-аккаунтов указывается в исходном коде веб-приложения Console:

var password = "Abcd1111";

Тестирование SIP-звонков

  1. Для теста используем:

    • два WCS-сервера, например test1.flashphoner.com и test2.flashphoner.com
    • веб-приложение Console для проведения теста
    • браузер Chrome и расширение Allow-Control-Allow-Origin для работы веб-приложения Console.
  2. Откройте приложение Console через HTTP (не через HTTPS!) http://test1.flashphoner.com:9091/client2/examples/demo/streaming/console/console.html

  3. Установите расширение ACAO, разрешите Cross-Origin-Resource-Sharing

  4. Введите имя сервера test1.flashphoner.com и нажмите Add node. Данный сервер будет проходить тест. Затем аналогично добавьте сервер test2.flashphoner.com, который будет создавать SIP-звонки на тестируемом сервере

  5. В приложении Console выберите сервер test2.flashphoner.com, нажмите кнопку Register, задайте параметры регистрации на SIP-сервере:

    • Choose node: выберите тестируемый сервер test1.flashphoner.com
    • Sip proxy: укажите имя SIP-сервера
    • Start: укажите номер SIP-аккаунта, на который будут совершаться тестовые звонки
    • End: укажите номер последнего из SIP-аккаунтов, участвующих в тестировании
    • Rate: укажите частоту звонков
  6. Нажмите Stress Call, задайте параметры теста:

    • Ext: укажите номер SIP-аккаунта, на который будут совершаться тестовые звонки
    • Start: укажите номер первого SIP-аккаунта, с которого будут совершаться тестовые звонки
    • End: укажите номер последнего SIP-аккаунта, с которого будут совершаться тестовые звонки
    • Rate: укажите частоту звонков
  7. Нажмите Stress Call. Начнется тест. В выпадающем списке Show выберите TESTS, нажмите Apply. На странице отобразится информация о ходе тестирования:

  8. В правом верхнем углу страницы отображается информация о текущей загрузке серверов, участвующих в тесте

По окончании тестирования рекомендуется перезапустить WCS на обоих серверах.

Тестирование регистрации на SIP-сервере

  1. Для теста используем:

    • два WCS-сервера, например test1.flashphoner.com и test2.flashphoner.com
    • веб-приложение Console для проведения теста
    • браузер Chrome и расширение Allow-Control-Allow-Origin для работы веб-приложения Console.
  2. Откройте приложение Console через HTTP (не через HTTPS!) http://test1.flashphoner.com:9091/client2/examples/demo/streaming/console/console.html

  3. Установите расширение ACAO, разрешите Cross-Origin-Resource-Sharing

  4. Введите имя сервера test1.flashphoner.com и нажмите Add node. Данный сервер будет проходить тест. Затем аналогично добавьте сервер test2.flashphoner.com, который будет создавать соединения с тестируемым сервером с требованием регистрации на SIP-сервере

  5. В приложении Console выберите сервер test2.flashphoner.com, нажмите кнопку Stress register, задайте параметры регистрации на SIP-сервере:

    • Choose node: выберите тестируемый сервер test1.flashphoner.com
    • Sip proxy: укажите имя SIP-сервера
    • Start: укажите номер SIP-аккаунта, на который будут совершаться тестовые звонки
    • End: укажите номер последнего из SIP-аккаунтов, участвующих в тестировании
    • Rate: укажите частоту звонков
  6. Нажмите Start. Начнется тест. В выпадающем списке Show выберите TESTS, нажмите Apply. На странице отобразится информация о ходе тестирования:

  7. В правом верхнем углу страницы отображается информация о текущей загрузке серверов, участвующих в тесте

По окончании тестирования рекомендуется перезапустить WCS на обоих серверах.

Рекомендации по настройке

Если тест не был пройден успешно, рекомендуется на тестируемом сервере изменить следующие настройки:

  1. В файле wcs-core.properties увеличить предельный размер памяти для кучи. Рекомендуется задавать этот размер в половину физической памяти, например, 16 Гб при объеме физической памяти в 32 Гб. Убедитесь, что памяти на сервер достаточно для этого:
    -Xmx16g -Xms16g