-
Notifications
You must be signed in to change notification settings - Fork 995
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
vidstreams count should not count receiveOnlyEndpoints #1364
Comments
Thanks for pointing this out. That's depracated code which was written before we had a good way of checking whether we're receiving video. The "videostreams" metric is bad, and it's not used anywhere as far as I know, so I'll open a PR to remove it. Do you use it for anything? |
We use it to correlate the load on the server. I think it's useful to know the videostream count, as it helps to understand the load on the JVB. Can we also look at the other jvb stats? For me there is a lot of confusion when using OCTO with stats such as total_participants or total_conferences. |
Currently we recommend using packet rate ( I agree there's confusion with stat names, especially with Octo. Hopefully we can clean that up in the future. Some of the stats are kept for backward compatibility. The ones that start with |
@bgrozev can we have stress as a part of the colibri stats output? On our grafana dash we use the following formula for stress (copied from stats.ffmuc..net): I can see the stress using this formula going above 1 but jicofo not using spare bridges in the same region, which is concering. |
This is something we've been talking about, but not implemented yet. I think the consensus is that it should be calculated on the bridge itself, so we'll have it eventually, but I don't have any timeline.
This doesn't seem right. Jicofo should allocate evenly to all available bridges, even before the stress reaches 1. At the threshold of 0.8 it will start to offload participants to other bridges using Octo. |
I will see if I can send in a PR for it.
We only had one running conference, so it will only split it when a new
person joins and stress is > 0.8, right?
We are considering modifying the source and change the threshold to 0.7
(which IMO should be configurable in jicofo)
…On Mon, Aug 24, 2020, 10:11 PM bgrozev ***@***.***> wrote:
@bgrozev <https://github.com/bgrozev> can we have stress as a part of the
colibri stats output?
This is something we've been talking about, but not implemented yet. I
think the consensus is that it should be calculated on the bridge itself,
so we'll have it eventually, but I don't have any timeline.
I can see the stress using this formula going above 1 but jicofo not using
spare bridges in the same region, which is concering.
This doesn't seem right. Jicofo should allocate evenly to all available
bridges, even before the stress reaches 1. At the threshold of 0.8 it will
start to offload participants to other bridges using Octo.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#1364 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ADX44NRFGVYHDBT3GIZXGO3SCKJ5JANCNFSM4PQOWOZA>
.
|
Yes.
This makes it configurable: jitsi/jicofo#584 Note that you can achieve the same with the current code by configuring the max packet rate. |
Great! Thanks for the quick fix.
Do you have any suggestions on how once can calculate the max packets a
machine can handle? The current number just seems arbitrary.
Thanks!
…On Tue, Aug 25, 2020, 12:17 AM bgrozev ***@***.***> wrote:
We only had one running conference, so it will only split it when a new
person joins and stress is > 0.8, right?
Yes.
We are considering modifying the source and change the threshold to 0.7
(which IMO should be configurable in jicofo)
This makes it configurable: jitsi/jicofo#584
<jitsi/jicofo#584>
Note that you can achieve the same with the current code by configuring
the max packet rate.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#1364 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ADX44NWMYNYNSHK3UT5MMLTSCKYT5ANCNFSM4PQOWOZA>
.
|
It is arbitrary: we set it to match the machines we currently use (the longer term plan is to have the bridges calulate that themselves). I suggest you experiment with the machines you use by gradually adding conferences until system load approaches the number of processors, then note the packet rate. |
Is there a script I can look at? Would help a lot, I got the general gist. But how exactly does packet rate map to system load. Also I noticed the UDP buffer sizes here Thanks once again for taking the time to reply, and for working on making jitsi better for all. |
You can use this script to generate load (using a selenium grid): https://github.com/jitsi/jitsi-meet-torture/blob/master/scripts/malleus.sh The socket buffer size is set sufficiently large to reduce dropped packets on our machines (aws c5.4xlarge or similar) under heady load. Unless you see packet dropped in the kernel (see the output of |
Closing this issue as vidstreams has been removed and jvb now calculates stress. |
jitsi-videobridge/jvb/src/main/java/org/jitsi/videobridge/stats/VideobridgeStatistics.java
Line 328 in edd358c
Is there a reason for assuming this in the stats? Won't it be better to just check if its a receiveOnlyEndpoint as done on line 277?
jitsi-videobridge/jvb/src/main/java/org/jitsi/videobridge/stats/VideobridgeStatistics.java
Line 277 in edd358c
The text was updated successfully, but these errors were encountered: