Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
comet:load-testing [2017/07/26 10:38]
levhav [Нагрузочное тестирование]
comet:load-testing [2019/12/18 01:58] (текущий)
Строка 1: Строка 1:
 <​rst>​RU::​003-Нагрузочное тестирование::​001-Сценарий тестирования</​rst>​ <​rst>​RU::​003-Нагрузочное тестирование::​001-Сценарий тестирования</​rst>​
 +<​rst>​Header:​ Сценарий тестирования</​rst>​
  
 ====== Нагрузочное тестирование с tsung ====== ====== Нагрузочное тестирование с tsung ======
Строка 53: Строка 54:
 </​tsung>​ </​tsung>​
 </​file>​ </​file>​
-В нём указано что к localhost к порту 8087 надо подключатся по вебсокетам. И создавать по 2500 тысячи подключений каждую секунду до тех пор пока их в сумме не наберётся 64000.+В нём указано что к localhost к порту 8087 надо подключатся по вебсокетам. И создавать по 2500 тысячи подключений каждую секунду до тех порпока их в сумме не наберётся 64000.
  
-То есть этот сценарий просто создаёт тестовую нагрузку в 64000 пользователей онлайн. Тест синтетический и реальные 64000 будут нагружать сервер несколько по другому а не просто висеть онлайн,​ но это уже от приложения и предполагаемого сценария использования комет сервера можно составить свой сценарий тестирования который бы отражал ваш тип нагрузки на комет сервер.+То есть этот сценарий просто создаёт тестовую нагрузку в 64000 пользователей онлайн. Тест синтетический и реальные 64000 будут нагружать сервер несколько по другомуа не просто висеть онлайн,​ но это уже от приложения и предполагаемого сценария использования комет сервера можно составить свой сценарий тестированиякоторый бы отражал ваш тип нагрузки на комет сервер.
  
 ===== Нагрузка более чем 64000 онлайн =====  ===== Нагрузка более чем 64000 онлайн ===== 
  
-Нагрузка в 64000 это максимум который позволит создать операционная система. Если хотите больше то надо тестировать один сервер с нескольких машин с tsung одновременно. TCP-соединение уникально определяется четверкой [source ip, source port, dest ip, dest port], таким образом с одной машины на 1 порт сервера можно создать не более 64 тыс одновременных соединений+Нагрузка в 64000 это максимумкоторый позволит создать операционная система. Если хотите большето надо тестировать один сервер с нескольких машин с tsung одновременно. TCP-соединение уникально определяется четверкой [source ip, source port, dest ip, dest port], таким образом с одной машины на 1 порт сервера можно создать не более 64 тыс одновременных соединений
  
 ===== Запуск сервера ===== ===== Запуск сервера =====
Строка 79: Строка 80:
 backlog = 10000 backlog = 10000
 epoll_size = 100000 epoll_size = 100000
-thread_num = 12    ; количество потоков,​ делайте больше чем ядер на сервере так как сервер не lock-free+thread_num = 12    ; количество потоков,​ делайте большечем ядер на сервере так как сервер не lock-free
 benchmark = 1      ; Интервал между замерами нагрузки (0 = не замерять) benchmark = 1      ; Интервал между замерами нагрузки (0 = не замерять)
 port = 8087 port = 8087
 uptimeTestInterval = 600 ; Интервал для проверок uptime у соединений (так же за одно выправляет значение счётчика пользователей онлайн) uptimeTestInterval = 600 ; Интервал для проверок uptime у соединений (так же за одно выправляет значение счётчика пользователей онлайн)
-maxUptime = 0 ; Максимально значение uptime после которого коннект отключается.+maxUptime = 0 ; Максимально значение uptimeпосле которого коннект отключается.
 </​code>​ </​code>​
  
-А потом запустить сервер в консольном режиме чтоб видеть вывод статистики+А потом запустить сервер в консольном режимечтобы видеть вывод статистики
 <code bash> <code bash>
 ./cpp_comet ./cpp_comet
Строка 103: Строка 104:
  
 В процессе тестирования вы можете наблюдать за загрузкой ОС на пример через программы htop или iotop В процессе тестирования вы можете наблюдать за загрузкой ОС на пример через программы htop или iotop
-Проверить то что встроенный в комет сервер счётчик общего количества соединений онлайн показывает цифры близкие к правде можно командой:​+Проверить точто встроенный в комет сервер счётчик общего количества соединений онлайн показывает цифры близкие к правде можно командой:​
 <code bash> <code bash>
 ss -p | grep "​cpp_comet"​ | wc -l ss -p | grep "​cpp_comet"​ | wc -l
Строка 109: Строка 110:
 Она подсчитает количество входящих соединений средствами операционной системы. Она подсчитает количество входящих соединений средствами операционной системы.
  
-По окончании тестирования tsung в папку складывает отчёт о тестировании. Но чтобы его было можно посмотреть надо его обработать скриптом который идёт вместе с самим tsung. Скрипт лежит в папке /​usr/​lib/​tsung/​bin/​tsung_stats.pl+По окончании тестирования tsung в папку складывает отчёт о тестировании. Ночтобы его было можно посмотреть надо его обработать скриптомкоторый идёт вместе с самим tsung. Скрипт лежит в папке /​usr/​lib/​tsung/​bin/​tsung_stats.pl
  
 <code bash> <code bash>
Строка 118: Строка 119:
 После чего скрипт с генерирует уже человеко читаемый отчёт о тестировании. После чего скрипт с генерирует уже человеко читаемый отчёт о тестировании.
  
-<note tip>​Следует учитывать то что в данном сценарии и тест и сервер на одной машине так что грузить они её будут совместно. Для чистоты эксперимента рекомендуется сервер запускать на одной машине,​ а tsung на другой машине.</​note>​+<note tip>​Следует учитывать точто в данном сценарии и тест и сервер на одной машинетак что грузить они её будут совместно. Для чистоты эксперимента рекомендуется сервер запускать на одной машине,​ а tsung на другой машине.</​note>​