Всем привет.
Хотели протестировать нагрузку используя эту документацию:
Выставлены настройки:
TTL=300
STRESSRATE=1
Версия фонера: 5.2.838
Flashphoner настроен за nginx (https://docs.flashphoner.com/pages/viewpage.action?pageId=23037753)
В целом тестирование проходит успешно, кроме одного момента.
Пошаговое описание проблемы:
0. Подготавливаем страницу для просмотра стрима. Используем embed_player (https://wcs.url/embed_player?urlSer...iders=WebRTC,Flash,MSE,WSPlayer&autoplay=true).
1. На "атакующем" сервере запускается 100 инстансов google chrome с указанием откуда смотреть стрим;
2. Проверяем количество запущенных хромов на "атакующем" сервере. Получаем 100 инстансов;
3. На атакуемом сервере смотрим в логах nginx смотрим что пришло ровно 100 запросов на страницу embed_player;
4. Смотрим статистику wcs сервера (?action=stat) и видим:
Т.е. стрим сервер не запускает некоторое количество просмотров стримов. Каждый раз количество разное.
Каждая итерация тестирования проходила после хардрестарта всего софта и временного промежутка 5-10 минут.
Цифры тестирования были разные:
1. От 1 до 10 инстансов - все работает;
2. От 10 до 50 - периодически неправильное количество просмотров стримов запускается;
3. 50-150 - совпадений по количеству инстансов и "просматриваемых" стримов не совпадает в 100% случаев.
Атакующая машина по ресурсам варьировалась от: 20 ядер и 128G оперативной памяти, до 30 ядер и 128G оперативной памяти.
При запуске 150 инстансов хрома утилизация процессоров на уровне 50-60%, кроме момента запуска т.к. в тот момент утилизация была 100%.
По памяти утилизация не превышала 60% за всё время тестирования.
Инфа по процу.
Утилизация сети на "атакуемом" сервере не превышала 25647.16 KB/s (измерялось софтом slurm)
Вопросы в следующем: Почему так может происходить? Куда копать, чтобы понять проблему?
Хотели протестировать нагрузку используя эту документацию:
TTL=300
STRESSRATE=1
Версия фонера: 5.2.838
Flashphoner настроен за nginx (https://docs.flashphoner.com/pages/viewpage.action?pageId=23037753)
В целом тестирование проходит успешно, кроме одного момента.
Пошаговое описание проблемы:
0. Подготавливаем страницу для просмотра стрима. Используем embed_player (https://wcs.url/embed_player?urlSer...iders=WebRTC,Flash,MSE,WSPlayer&autoplay=true).
1. На "атакующем" сервере запускается 100 инстансов google chrome с указанием откуда смотреть стрим;
2. Проверяем количество запущенных хромов на "атакующем" сервере. Получаем 100 инстансов;
3. На атакуемом сервере смотрим в логах nginx смотрим что пришло ровно 100 запросов на страницу embed_player;
4. Смотрим статистику wcs сервера (?action=stat) и видим:
Code:
-----Connection Stats-----
connections=49
connections_rtmfp=0
connections_websocket=49
connections_hls=0
-----Port Stats-----
ports_media_free=1450
ports_media_busy=49
ports_media_quarantine=0
ports_wcs_agents_free=998
ports_wcs_agents_busy=0
ports_wcs_agents_quarantine=0
-----Stream Stats-----
streams_webrtc_in=1
streams_webrtc_out=48
Каждая итерация тестирования проходила после хардрестарта всего софта и временного промежутка 5-10 минут.
Цифры тестирования были разные:
1. От 1 до 10 инстансов - все работает;
2. От 10 до 50 - периодически неправильное количество просмотров стримов запускается;
3. 50-150 - совпадений по количеству инстансов и "просматриваемых" стримов не совпадает в 100% случаев.
Атакующая машина по ресурсам варьировалась от: 20 ядер и 128G оперативной памяти, до 30 ядер и 128G оперативной памяти.
При запуске 150 инстансов хрома утилизация процессоров на уровне 50-60%, кроме момента запуска т.к. в тот момент утилизация была 100%.
По памяти утилизация не превышала 60% за всё время тестирования.
Инфа по процу.
Code:
vendor_id : GenuineIntel
cpu family : 6
model : 85
model name : Intel(R) Xeon(R) Silver 4114 CPU @ 2.20GHz
stepping : 4
microcode : 0x2006b06
cpu MHz : 2194.843
cache size : 14080 KB
physical id : 38
siblings : 1
core id : 0
cpu cores : 1
apicid : 38
initial apicid : 38
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc cpuid pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch cpuid_fault invpcid_single pti ssbd ibrs ibpb stibp fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid avx512f avx512dq rdseed adx smap clflushopt clwb avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves arat pku ospke md_clear flush_l1d arch_capabilities
bugs : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs itlb_multihit
bogomips : 4389.68
clflush size : 64
cache_alignment : 64
address sizes : 45 bits physical, 48 bits virtual
Вопросы в следующем: Почему так может происходить? Куда копать, чтобы понять проблему?