Platformă → Teste de încărcare

Teste de încărcare Janus

Câți spectatori suportă un singur server Krona.Chat: rezultatele testelor de încărcare ale serverului video Janus.

Test efectuat pe 10 octombrie 2026

Serverul de test
8 vCPUprocesor AMD EPYC 964516 GBmemorie RAM1 Gbit/sport de rețea1080pvideo la ~2,5 Mbit/s
Server mixtmodele și spectatori pe același server până la 330 spectatori Modelul transmite pe acest server, iar spectatorii săi urmăresc de pe același server. Cea mai simplă schemă — un singur tip de server pentru tot.
Server pentru spectatorischemă separată până la 360 spectatori La el se conectează doar spectatorii. Primește video-ul modelelor de la serverul pentru modele și îl distribuie spectatorilor.
Server pentru modeleschemă separată ~220 transmisiuni La el se conectează doar modelele. Primește transmisiunile lor și le redirecționează către serverele pentru spectatori. Estimare pe baza măsurătorilor: am testat 120 de transmisiuni, iar serverul a fost încărcat doar 14%.

Cum funcționează schemele

Mixtă: model → server mixt → spectatorii acelui model. Toți spectatorii unei transmisiuni trebuie să încapă pe un singur server.

Separată (cascadare): model → server pentru modele → unul sau mai multe servere pentru spectatori → spectatori. Redirecționarea video-ului între servere (cascadarea) o face chiar serverul pentru modele — nu este nevoie de un server separat pentru asta. Când o transmisiune are mulți spectatori, aceștia sunt repartizați pe mai multe servere pentru spectatori.

Pe scurt

  • Un singur server livrează sigur video către 330–360 de spectatori simultan — fără blocaje și fără pierderi de calitate.
  • Dacă recepția transmisiunilor este mutată pe un server separat, un server pentru spectatori deservește cu aproximativ 10% mai mulți spectatori decât unul mixt, iar o singură transmisiune poate avea oricâți spectatori — aceștia sunt repartizați pe mai multe servere pentru spectatori.
  • Recepția transmisiunilor aproape că nu încarcă serverul. Cea mai mare parte a încărcării este livrarea video-ului către spectatori.
  • Serverul își folosește aproape complet portul de rețea: până la 900 Mbit/s de video către spectatori, fără pierderi, pe un port de 1 Gbit/s. Peste această limită, calitatea scade imediat pentru toți, de aceea serverele sunt încărcate cu o rezervă — exact așa calculează și calculatorul de la finalul paginii.

Cum am testat

Am testat serverele video Krona.Chat. Modelele și spectatorii au fost clienți software care se comportă ca un browser: intră într-o cameră, trimit și primesc video.

  1. Pornim transmisiunile

    Modelele încep să transmită video 1080p la aproximativ 2,5 Mbit/s — ca o cameră web reală.

  2. Adăugăm spectatori

    La fiecare 2 secunde se conectează un spectator nou, astfel încât încărcarea crește treptat.

  3. Urmărim calitatea

    Pentru fiecare spectator măsurăm cât video se pierde pe drum. Cât timp pierderile sunt sub 1%, imaginea este fluentă.

  4. Găsim limita

    Testul se oprește când calitatea începe să scadă. Numărul maxim de spectatori fără pierderi este capacitatea serverului.

Fiecare schemă a fost verificată într-un test separat. Pe grafice, fiecare linie este un test aparte; liniile nu se adună.

Rezultate

Cât video trimite serverul către spectatori

Cu cât sunt mai mulți spectatori, cu atât serverul trimite mai mult video. Cât timp linia crește constant, fiecare spectator primește video-ul complet. Când linia se frânge în jos, serverul este suprasolicitat și nu reușește să livreze video tuturor.

Afișați tabelul

Mbit/s — cât video trimite serverul către toți spectatorii pe secundă. Chenar verde — numărul maxim de spectatori fără pierderi de calitate; fundal roșu — suprasarcină.

Calitatea video la spectatori

Proporția de video care nu a ajuns la spectator. Până la 1%, spectatorul nu observă; peste acest prag, imaginea se blochează și se fragmentează. O creștere bruscă a pierderilor marchează limita serverului.

Afișați tabelul

Pierderi video la spectatori, %. Chenar verde — numărul maxim de spectatori fără pierderi de calitate; fundal roșu — suprasarcină.

Încărcarea procesorului serverului

Procesorul nu ajunge la 100%: serverul atinge mai întâi limita la livrarea video. Peste limită, încărcarea chiar scade — serverul pierde video în loc să îl trimită.

Afișați tabelul

Încărcarea procesorului, %. Chenar verde — numărul maxim de spectatori fără pierderi de calitate; fundal roșu — suprasarcină.

Ce schemă să alegeți

Toate cifrele sunt pentru video 1080p la aproximativ 2,5 Mbit/s, fără pierderi de calitate.

Server mixt

până la 330 de spectatori

Modelele și spectatorii lor pe același server. În test, fiecare transmisiune a avut aproximativ 33 de spectatori.

Potrivit pentru transmisiuni cu până la câteva sute de spectatori. Cu multe transmisiuni și puțini spectatori la fiecare (aproximativ 10), serverul suportă ceva mai puțin — aproximativ 280.

Schemă separată

până la 360 de spectatori

Serverele pentru modele primesc transmisiunile, serverele pentru spectatori le afișează. Un server pentru spectatori suportă cu aproximativ 10% mai mulți spectatori decât unul mixt.

Potrivită pentru audiențe mari: spectatorii unei transmisiuni sunt repartizați pe mai multe servere pentru spectatori, deci nu există limita „toată audiența pe un singur server”.

Server pentru modele

~220 de transmisiuni

Parte a schemei separate: primește video de la modele și îl redirecționează către serverele pentru spectatori. Este o sarcină ușoară: 120 de transmisiuni au încărcat serverul doar 14%.

~220 este o estimare pe baza măsurătorilor: pentru un astfel de server, fiecare transmisiune înseamnă un flux video primit și o redirecționare mai departe.

Comparație cu calculatorul de pe site

Calculatorul de servere de pe site pornește de la aproximativ 700 Mbit/s de video către spectatori pe server. Testul a arătat că un server cu port de 1 Gbit/s livrează până la 900 Mbit/s fără pierderi, așa că calculatorul de pe site calculează cu o rezervă bună.

Pentru video la 2,5 Mbit/s, înseamnă 330–360 de spectatori pe server. Pentru 1080p la 3 Mbit/s — aproximativ 290 de spectatori, conform calculului.

Un calcul, nu un rezultat de test

Calculator: de câte servere aveți nevoie

Folosește coeficienții obținuți în teste. Introduceți încărcarea dumneavoastră și prețul serverului la furnizorul dumneavoastră.

Servere necesare—
Cost pe lună—
Total spectatori—simultan
Spectatori per server—

Rezultatele au fost obținute pe un server de test și pot diferi în funcție de furnizor, rețea și setările transmisiunilor.

Raportul a fost generat de orchestration/capacity_report.py din datele rulărilor de test (Locust + Prometheus + statisticile RTP ale spectatorilor).