ef7b1fb3e5
bbb-webrtc-sfu (and mediasoup) are running in the CFS scheduler which
means it has to compete with (much) lower priority tasks like
presentation conversion, recording processing, [...]
Since it encompasses an RTC application which also handles audio, it
should be _at least_ on the same scheduling policy as FS/bbb-html5 - and
that should be safer now with mediasoup which has a lower footprint
(and generates lower CPU noise overall).
This commit puts bbb-webrtc-sfu in the FIFO scheduling policy (same as
bbb-html5). Also bumps bbb-html5 nice level up to 18 and sets SFU to
nice 19 (so bbb-html5 has some advantage when push comes to shove).
This can be improved further by using per-process priorities in SFU.
Ideally we'd want mediasoup audio workers and mcs-core to be the same
priority as FS (so higher than bbb-html5), but the rest of them
(video/screen workers) to be the same or lower than bbb-html5. For
future reference:
- https://github.com/bigbluebutton/bbb-webrtc-sfu/commit/3e245122dfa155ecb77b536eeadac1e4607cee
- 66d443d204
21 lines
626 B
Desktop File
21 lines
626 B
Desktop File
[Unit]
|
|
Description=BigBlueButton WebRTC SFU
|
|
Wants=redis-server.service
|
|
After=syslog.target network.target freeswitch.service kurento-media-server.service redis-server.service
|
|
PartOf=bigbluebutton.target
|
|
|
|
[Service]
|
|
WorkingDirectory=/usr/local/bigbluebutton/bbb-webrtc-sfu
|
|
ExecStart=/usr/bin/node server.js
|
|
Restart=always
|
|
SyslogIdentifier=bbb-webrtc-sfu
|
|
User=bigbluebutton
|
|
Group=bigbluebutton
|
|
Environment=NODE_ENV=production
|
|
Environment=NODE_CONFIG_DIR=/etc/bigbluebutton/bbb-webrtc-sfu/:/usr/local/bigbluebutton/bbb-webrtc-sfu/config/
|
|
CPUSchedulingPolicy=fifo
|
|
Nice=19
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target bigbluebutton.target
|