CPU saturada con multitud de procesos Apache2

Puede ser que la memoria del servidor esté a tope y este usando SWAP y haga que la CPU se sobre carge. Para liberar esa memoria hay que ejecutar:

sync ; echo 3 > /proc/sys/vm/drop_caches

Otra posibilidad es que exista un cuello de botella en MySQL. Prueba con SHOW PROCESSLIST y copia los resultados.

Tercero, usa «server-status» para ver qué procesos hay activos (peticiones HTTP) en tiempo real, más información en apache.org

Una vez instalado, podemos usar la configuración descrita más abajo. En la línea Allow podemos especificar desde que IPs (o rango de IPs) permitimos que se vea el server-status.

<Location /server-status>
    SetHandler server-status
    Order deny,allow
    Deny from all
    Allow from 1.2.3.4 5.6.7.8
</Location>

A continuación ya podemos acceder con el navegador al servidor mediante una URL similar a: http://servidor-ejemplo.com/server-status