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
29 lines
647 B
Desktop File
29 lines
647 B
Desktop File
[Unit]
|
|
Description=BigBlueButton HTML5 service, backend instance %i
|
|
Requires=bbb-html5.service
|
|
Before=bbb-html5.service
|
|
BindsTo=bbb-html5.service
|
|
StartLimitBurst=4
|
|
StartLimitInterval=70sec
|
|
StartLimitAction=none
|
|
|
|
[Service]
|
|
PermissionsStartOnly=true
|
|
#Type=simple
|
|
Type=idle
|
|
EnvironmentFile=/usr/share/meteor/bundle/bbb-html5-with-roles.conf
|
|
ExecStart=/usr/share/meteor/bundle/systemd_start.sh %i $BACKEND_NODEJS_ROLE
|
|
WorkingDirectory=/usr/share/meteor/bundle
|
|
StandardOutput=syslog
|
|
StandardError=syslog
|
|
TimeoutStartSec=10
|
|
Restart=on-failure
|
|
RestartSec=10
|
|
User=meteor
|
|
Group=meteor
|
|
CPUSchedulingPolicy=fifo
|
|
Nice=18
|
|
|
|
[Install]
|
|
WantedBy=bbb-html5.service
|