GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo limitar el uso de la memoria de la aplicación?

Sí, VSZ es memoria virtual. En cuanto a RLIMIT_AS, ¿dónde encontró el párrafo citado anteriormente? Dado que setrlimit(2) es una llamada al sistema Linux, no veo cómo podría monitorear malloc(3), una función de biblioteca. En su lugar, solo puede funcionar con brk(2), sbrk(2) y mmap(2); esto también es lo que sugiere su página de manual (comprobada en Scientific Linux). Sin embargo, la cantidad total de memoria solicitada a través de estas funciones es memoria virtual, por lo que RLIMIT_AS limita la memoria virtual. (Esto es, de nuevo, de acuerdo con la página de manual de setrlimit(2).)

Lamentablemente, no puede limitar RSS en Linux (esto sería ulimit -m ). Puedes probar ulimit -d (RLIMIT_DATA), pero esto incluirá mmap(2) solo desde Linux 4.7, que normalmente se usa para grandes asignaciones. Otra posibilidad sería limitar la memoria virtual, pero con una diferencia tan grande entre RSS y VSZ, esto podría ser difícil.


Muchos procesos comparten parte de su memoria con otros procesos, p. libc es utilizado por casi todos los procesos, pero solo se asigna en la memoria una vez, pero cuenta para el uso de la memoria virtual de cada proceso. La limitación del uso de la memoria que solo usa un determinado proceso (principalmente RSS) se puede hacer usando cgroups. Vea las respuestas a Cómo limitar los recursos totales (memoria) de un proceso y sus hijos para saber cómo hacerlo. Esto limitará la memoria total de un proceso y sus hijos.


Linux
  1. Cómo limitar el uso de la CPU de un proceso en Linux

  2. Cómo aumentar el límite de memoria de PHP

  3. Linux:¿limitar el uso de memoria para un solo proceso de Linux?

  4. ¿Cómo limitan las canalizaciones el uso de memoria?

  5. Límite de memoria PHP

Cómo verificar el uso de memoria en Linux

Cómo verificar el uso de memoria en Debian 10

Cómo encontrar los principales procesos en ejecución por uso de memoria

¿Cómo interpretar el uso de memoria superior/htop?

Cómo ordenar el comando superior según el uso de memoria

¿Cómo perfilar el uso de la memoria?