Quote:En los sistemas que utilizan el Kernel de Linux existe una forma de limpiar la memoria cacheada en RAM, que es información que está ahí por si hace falta, pero que no tiene por qué necesariamente estar ahí, es totalmente prescindible.
Verdadero. Por eso, el mismo kernel se encarga de "descachear" esta memória si hace falta.
Quote:Apache es una aplicación que utiliza mucho ese tipo de memoria, y claro, en un servidor web puede provocar que se utilice más RAM de la cuenta y puede provocar problemas no deseados como el empezar a paginar, que no es otra cosa que empezar a utilizar el disco duro con información que debería estar en RAM y como la velocidad de acceso a disco es muy inferior al acceso a RAM pues el equipo puede parecer que se ha quedado “colgado”, de forma que ni siquiera podamos llegar a logarnos en el mismo.
Falso. Apache no "consume" ese tipo de memoria. El
kernel asigna esa memoria a los procesos siguiendo sus propias heurísticas. Como apache suele ser uno de los programas que más memoria consume, el kernel le asigna más cache habitualmente.
Eso sí, el kernel
no es gilipollas, así que antes de empezar a forzar swaping liberará memoria cacheada para apache y la destinará a un mejor uso (por ejemplo, a hacer de cache de disco para reducir la carga de I/O).
Los problemas de swaping se dan cuando entre todos los programas consumen (ojo, consumen de verdad, no en cachés!) más memoria de la disponible en el sistema. Obviamente, en estos caso solo se puede o (1) pasar una parte de memoria al disco, lo que implica lentitud del sistema cuando se quiera recuperar esa parte de la memoria; o (2) matar procesos, que es lo que hace el kernel si se termina el espacio swap o simplemente no existe.
Quote:echo 1 > /proc/sys/vm/drop_caches : Libera la pagecache.
echo 2 > /proc/sys/vm/drop_caches : Libera inodos y dentries.
echo 3 > /proc/sys/vm/drop_caches : Libera pagecache, inodos y dentries.
Estas opciones fueron añadidas al kernel
para realizar benchmarks o en casos muy muy muy específicos,
no para ser usados como parámetros de "mantenimiento". Los hackers del kernel han trabajado (y discutido) mucho para que el sistema haga el mejor uso posible de la memória disponible, y
nosotros no somos más listos que ellos.
Resumiendo: deja que el kernel se encargue de gestionar la memoria que tiene tu sistema, que sabe hacerlo mejor que tú.