El servidor falló varias veces debido a falta de memoria. ¿Cómo puedo saber cuánta cantidad hay disponible para cada proceso?

El servidor falló varias veces debido a falta de memoria. ¿Cómo puedo saber cuánta cantidad hay disponible para cada proceso?

Tuvimos un gran aumento en el tráfico con muchos de estos errores:

Feb 17 10:44:13 111488 kernel: [8275767.506198] Out of memory: Kill process 20577 (apache2) score 52 or sacrifice child
Feb 17 11:02:06 111488 kernel: [8276839.559141] Out of memory: Kill process 20719 (mysqld) score 75 or sacrifice child

Como puede ver, no es solo un proceso sino apache2 y mysqld, por lo que aumenté la RAM en el servidor. ¿Cómo puedo verificar que esto esté disponible para estos procesos?

Respuesta1

Estás buscando el comando [arriba]

top - 15:20:30 up  6:57,  5 users,  load average: 0.64, 0.44, 0.33
Tasks: 265 total,   1 running, 263 sleeping,   0 stopped,   1 zombie
%Cpu(s):  7.8 us,  2.4 sy,  0.0 ni, 88.9 id,  0.9 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem:   8167848 total,  6642360 used,  1525488 free,  1026876 buffers
KiB Swap:  1998844 total,        0 used,  1998844 free,  2138148 cached

  PID USER      PR  NI  VIRT  RES  SHR S  %CPU %MEM    TIME+  COMMAND                                                                                 
 2986 enlighte  20   0  584m  42m  26m S  14.3  0.5   0:44.27 yakuake                                                                                 
 1305 root      20   0  448m  68m  39m S   5.0  0.9   3:33.98 Xorg                                                                                    
 7701 enlighte  20   0  424m  17m  10m S   4.0  0.2   0:00.12 kio_thumbnail

o comando [htop],

resultado superior

Fuente:Mareas binarias

Respuesta2

Para obtener una descripción general del uso de la memoria de su sistema, use el comando free. Para cálculos de memoriapor proceso, cf.¿Cómo puedo mostrar el uso de memoria de cada proceso?.

información relacionada