Hi @pixelflair
it seems that you are facing with different issues.
1) 100% cpu time
This seems to be the Zammad scheduler -> this has changed in Zammad 2.4 - the scheduler will use much less cpu time
2) Sporadic delays (e. g. 20 sec.)
Per default Zammad starts with one application server process (with max. 30 threats). If you have several concurrent users it may not be enough (http requests will get queued which leads to high latency). Depending on you need you can start more processes (each with max. 30 threads). Just do the following for 4 application server processes:
zammad config:set WEB_CONCURRENCY=4
systemctl restart zammad
Please note, that each application server process needs memory (just have a look on it that the machine is not swapping). Hint: In case you use elasticsearch on same machine, take about 6 GB RAM for elasticsearch it self (it’s not Zammad related).
3) ramdisk
You will get a noticeable improvement if you use an ramdisk for the /opt/zammad/tmp directory.
To test this, just enter the following for an 8 GB ramdisk (temporary ramdisk):
mount -t tmpfs -o size=8g tmpfs /opt/zammad/tmp
To keep it after reboot, enter the following:
echo "tmpfs /opt/zammad/tmp tmpfs nodev,nodiratime,size=8g 0 0" >> /etc/fstab
Let me know if this feedback was helpful!
-Martin