936363b310
We currently use a simple producer round-robin algorithm to distribute elements between mediasoup workers. This works for most scenarios but fails in some edge cases, such as: - 1-to-N scenarios where N >= ~600-800 (sample number, varies by single-core performance). This is due to subscribers being pinned to a producer's worker. - Poor distribution results from round-robin. Enable the following new features in bbb-webrtc-sfu via after-install by default: - `mediasoup.workerBalancing.strategy: least-loaded`: Replaces round-robin with load scoring. Workers are selected based on which is least loaded. - `mediasoup.enableWorkerTransposing: true`: Allows media streams to be bridged between workers through internal RTP pipes. This, along with a per-worker stream limit, enables seamless offloading of streams between workers (whether publishers or subscribers). The per-worker stream limit is still under review. These changes should address the issues mentioned. They are enabled via after-install because the SFU version is shared with previous BBB versions where these features are not desirable yet. |
||
---|---|---|
.. | ||
.build-files | ||
after-install.sh | ||
bbb-webrtc-sfu.logrotate | ||
bbb-webrtc-sfu.service | ||
before-install.sh | ||
before-remove.sh | ||
build.sh | ||
opts-jammy.sh | ||
webrtc-sfu.nginx |