se genera un fichero, ejemplo memoria.sh y se le da permisos de escritura 755, luego generamos el crond para que lo haga cada minuto y cuando lo revisa resetea el apache, bajando la memoria

#!/bin/sh

DATE=`date ‘+%d%m%Y_%H%M%S’`
CONSUMO=`ps aux |grep Apache |awk ‘{SUM+=$4}END {print SUM}’`
UMBRAL=80
FLAG=/tmp/control_memoria.lock
if [[ -f $FLAG ]];then
logger -p ERROR  “[Monitor de Memoria Apache] Hay Otro proceso de monitor ejecutandose”
exit 0
fi

touch $FLAG

if [[  $CONSUMO -gt $UMBRAL ]];then

logger -p ERROR  “[Monitor de Memoria Apache] el consumo es superior a ${UMBRAL}% $CONSUMO”
/etc/init.d/httpd stop 2>/dev/null  |logger
sleep 15
/etc/init.d/httpd start 2>/dev/null  |logger
else

logger -p INFO “[Monitor de Memoria Apache] el consumo es inferior al ${UMBRAL}% $CONSUMO”
if [[ $CONSUMO -eq 0 ]];then
logger -p INFO “[Monitor de Memoria Apache] El consumo es igual a 0”
/etc/init.d/httpd stop 2>/dev/null  |logger
sleep 15
/etc/init.d/httpd start 2>/dev/null  |logger
fi
fi

rm $FLAG