Hi zusammen,
wer hat mehr Erfahrung?
Ich habe die Nextcloud bei unserer Schule als zentrale Plattform für die Coronazeit etabliert (für Moodle waren wir nicht bereit). Nach zwei Hardwareupgrades ist die Performanz der NExtcloud so, dass man trotzdem bei längerem Arbeiten schon Einbußen sieht (längere Ladezeiten der Webseite, z.B.).
Daher mal eine Analyse, heute abgerufen:
<activeUsers>
<last5minutes>84</last5minutes>
<last1hour>160</last1hour>
<last24hours>639</last24hours>
</activeUsers>
( Für alle, die das in ihrer Nextcloud checken wollen: die Info wird hergegeben, wenn man als Administrator eingeloggt ist und folgendes abruft: https://cloud.meine-schule.de/ocs/v2.php/apps/serverinfo/api/v1/info)
Ich habe ja schon ein paar Dinge geändert, um nicht unnötig Balast zu erzeugen:
- eigene IP und außer Belwue-Router nichts dazwischen
- NC Talk deaktiviert - hat bei Benutzung alles lahmgelegt, außerdem unsinnig, weil die Cloud in der Schule hinter einer 200/20 Leitung liegt.
- nginx statt apache
- php7.2-fpm statt php-fcgi (oder wie die zwei möglichkeiten heißen)
- aktuelle Version von nextcloud (18.0.3)
- folgendes eingeschalten:
<memcache.local>\OC\Memcache\APCu</memcache.local>
<memcache.distributed>none</memcache.distributed>
<filelocking.enabled>yes</filelocking.enabled>
<memcache.locking>\OC\Memcache\Redis</memcache.locking>
Jetzt habe ich nach Tuning-parametern gesucht. Ich habe folgende im Verdacht, die ich verändern kann:
- php-parameter der php7.2-fpm engine, bspw. sieht unser php-status so aus (für diesen Punkt gibt es (durch mein demenzkrankes anderes ich) schon einen Beitrag: Nextcloud / php (fpm) tuning
idle processes: 11
active processes: 4
total processes: 15
max active processes: 40
max children reached: 258
slow requests: 0
weil meine Konfiguration so aussah:
pm.max_children = 40
pm.start_servers = 10
pm.min_spare_servers = 5
pm.max_spare_servers = 15
Jetzt stelle ich nach diesem Link hier: https://myshell.co.uk/blog/2012/07/adjusting-child-processes-for-php-fpm-nginx/ auf
pm = dynamic
pm.max_children = 150
pm.start_servers = 45
pm.min_spare_servers = 15
pm.max_spare_servers = 75
pm.max_requests = 500
Weitere Vorschläge? Her damit!
VG, Tobias