feat: add cpu_shares to mastercontainer and sibling containers for better responsiveness under heavy load#8084
Conversation
…er heavy load Agent-Logs-Url: https://github.com/nextcloud/all-in-one/sessions/fb6684cd-3659-4b09-9cca-72d1c42e736c Co-authored-by: szaimen <42591237+szaimen@users.noreply.github.com>
Agent-Logs-Url: https://github.com/nextcloud/all-in-one/sessions/fb6684cd-3659-4b09-9cca-72d1c42e736c Co-authored-by: szaimen <42591237+szaimen@users.noreply.github.com>
Agent-Logs-Url: https://github.com/nextcloud/all-in-one/sessions/c36c6e2f-54a4-4459-8398-90fd936857cb Co-authored-by: szaimen <42591237+szaimen@users.noreply.github.com>
Agent-Logs-Url: https://github.com/nextcloud/all-in-one/sessions/d051ae44-c6c5-476d-9217-425945116a19 Co-authored-by: szaimen <42591237+szaimen@users.noreply.github.com>
Zoey2936
left a comment
There was a problem hiding this comment.
same as with my comments to OOM-Killer
|
@copilot please change the default in ContainersDefinitionFetchter from 1024 to 512 and reduce all added values by factor 2 |
Agent-Logs-Url: https://github.com/nextcloud/all-in-one/sessions/686d0d03-82d8-47a8-93ed-63cbf2a6a709 Co-authored-by: szaimen <42591237+szaimen@users.noreply.github.com>
Done in c128f29. Default changed to |
Agent-Logs-Url: https://github.com/nextcloud/all-in-one/sessions/e858912d-e6a4-4838-8765-54416017a1f2 Co-authored-by: szaimen <42591237+szaimen@users.noreply.github.com>
|
Wouldn't it make sense to raise Talk's priority? Talk - or better the TURN server in it - is the only application that has real-time requirements. So under heavy load, this should be prioritized over everything else because everything else can simply wait. In the settings given in the first comment, talk shares the lowest priority of 512 with all other containers. And another thought. Setting the same high value for such a number of containers might gain nothing, because in case of load, all of those containers keep fighting for CPU time. I'd suggest to define distinct values for each container, in the order of real-time requirements and responsiveness impact. |
cpu_shares: 2048 (compose.yaml,readme.md,reverse-proxy.md,multiple-instances.md)containers.json:cpu_shares: 1024(apache,database,nextcloud,notify-push,redis,borgbackup,watchtower,harp,docker-socket-proxy)containers.json:cpu_shares: 512(collabora,talk,talk-recording,domaincheck,clamav,onlyoffice,imaginary,fulltextsearch,whiteboard)cpuSharesinContainerDefinitionFetcher.php:512cpu_sharesproperty added tocontainers-schema.jsoncpuSharesfield added toContainer.phpCpuSharesapplied inDockerActionManager.php