Blog de David Rodriguez

saber que proceso consume más memoria en linux

Si tenéis problemas de memoria en vuestro servidor linux, no hace falta generarse ningún fichero sh. Generando un comando en la consola, sabremos cual es el proceso que más memoria nos está consumiendo en nuestro servidor, ordenado por el que más memoria consume.

ps -eo size,pid,user,command –sort -size | awk ‘{ hr=$1/1024 ; printf(«%13.2f Mb «,hr) } { for ( x=4 ; x<=NF ; x++ ) { printf(«%s «,$x) } print «» }’ |cut -d «» -f2 | cut -d «-» -f1

Podemos ver que esto nos genera la siguiente salida:

0.00 Mb COMMAND

      1222.30 Mb /usr/libexec/mysqld

       444.44 Mb /usr/sbin/sw

       296.90 Mb /usr/local/psa/admin/bin/modules/watchdog/monit

       244.32 Mb rm

       223.23 Mb /sbin/rsyslogd

       223.10 Mb /usr/sbin/qpidd

       173.78 Mb /usr/sbin/named

        74.33 Mb auditd

        21.53 Mb /usr/bin/sw

        16.69 Mb /usr/bin/php

        12.54 Mb /usr/sbin/httpd

        12.30 Mb /usr/sbin/httpd

        12.29 Mb /usr/sbin/httpd

        12.27 Mb /usr/sbin/httpd

        12.15 Mb /usr/sbin/httpd

        12.15 Mb /usr/sbin/httpd

 

Con esto podemos ver mucha información muy importante….

Que el proceso que más consume es MySql, que cada petición http nos consume unos 12 megas y con esto obtener el MaxClients de la configuración de Apache, etc

Salir de la versión móvil