Hi,
I have tested Jitsi JVB 2 performance today.
The test runing only jitsi/jvb:latest
docker image on kubernetes using this Jitsi kubernetes deloyment (background 3% cpu).
Here is results:
1. Test case 1:
-
Specs: 1 JVB, 2 cpu/ 4 GB RAM on cpu optimized Digitalocean.
-
Option:
channelLastN: 10
, -
All users sending video and audio to the same room and joining one by one using
LongLivedTest
test from jitsi-meet-torture
-
Main Jitsi Web (Prosody+Jicofo+Web) seems no much load:
-
Test instance: 32 cpus, 80% load!
2. Test case 2: Using 2 JVB instance (2 dedicated cpu 4GB ram Dititalocean). All users sending video and audio to the same room
- Option:
channelLastN: 10
. - Setting OCTO with strategy:
SplitBridgeSelectionStrategy
on Jicofo settings to distribue load to both JVBs.
- JVB 1 cpu
- JVB 1 banwidth
- JVB 2 cpu and bandwidth
- Main Web+prosody+jicofo
Conclusion:
- The usage of JVBs has dependent linearly on the number of cpu.
- The load balancer working well on split load between JVBs, add more JVB will help reduce load and get bigger room!
- The conference going well without any user disconnected.
- Can make a estimation 1 cpu unit can handle 15 users, 2 can handle 30, 4 for 60-70 etc…
- The Main Web, Jicofo, Prosody doesn’t have much load (without chat)
With support region and load balancing JVBs, Jitsi may have room 1000 users with 16 JVB instances (4 cpu 8gb ram) if all open camera and audio, or can be much lesser if only presenter using camera, I think!
Thanks for this great tools!