High CPU constantly

ondemand starts with 0 workers and ignores the start_servers and spare_servers settings.
After research and testing, I am currently using:

pm = dynamic
pm.max_children = 6
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3

I do get some warnings about max_children, most likely because of crawlers etc.
Not had any complaints.

Dynamic starts faster as 1 server is ready and doesn’t have to be loaded.

One thing to watch is how much your Virtual memory gets used. Mine is now almost zero.

Additional fact, I reduced the RAM for the VPS from 20Gb down to 16Gb:

# free
               total        used        free      shared  buff/cache   available
Mem:        16370536     4479364     3646572      253520     8835552    11891172
Swap:        3145724       14688     3131036

Prior to changing the php-fpm settings, even with 20Gb the swap file was being heavily used.

This server has 56 domains, mostly wordpress.