Память свома, и когда ОС запускает его

Я нашел в другом месте предложение запустить stty sane , который, как вы можете представить, сбрасывается до нормальных значений по умолчанию. Это решает мою проблему, но после внимательного изучения того, в чем могут быть различия, я все еще не уверен, что именно в этой конкретной команде решает проблему. Но это работает. Спасибо, что поиграли в резинового утенка.

2
05.06.2018, 09:28
3 ответа

No, es una mala idea.

No debe pensar en el intercambio como un mecanismo por el cual puede expandir la memoria; es un área de almacenamiento para partes de la memoria que no tienen que permanecer en la memoria física, y cuyo contenido no existe en ningún otro lugar. Consulte ¿Por qué Linux necesita espacio de intercambio en una máquina virtual? para más detalles.

Si los procesos que se ejecutan dentro de sus máquinas virtuales se están quedando sin memoria, debe determinar cuál es su conjunto de trabajo real, tanto en operación nominal como en el peor de los casos. Luego, suponiendo que no pueda reducir su uso de memoria, debe configurar sus configuraciones de memoria para adaptarse a :Asignación de RAM, intercambio y configuración del kernel (intercambio, etc. ). La asignación de RAM tendrá un impacto directo en la cantidad de VM que puede ejecutar por host, y esa debería ser su principal variable de ajuste si no puede agregar más memoria a sus hosts. (Eso no ayuda con el aspecto del costo, por supuesto... )Dependiendo de para qué necesite las máquinas virtuales, otra estrategia podría ser usar contenedores en su lugar, ya que eso le permitirá reducir los gastos generales.

Los sistemas operativos generalmente comienzan a usar el intercambio cuando necesitan asignar memoria y se han quedado sin memoria física disponible, y las páginas de memoria menos utilizadas actualmente en la memoria física no tienen lo que se llama un almacén de respaldo (o más bien, su tienda de respaldo es swap ). Cuando un programa necesita más memoria, el kernel primero buscará memoria libre; luego buscará en una lista jerárquica de cosas de las que puede deshacerse: caché, búfer, ejecutables asignados, etc. Tenga en cuenta que el intercambio se puede usar incluso en ausencia de presión de memoria "visible" :siempre hay piezas de datos almacenados en la memoria que en realidad no se usan, y se almacenan mejor en intercambio.

11
27.01.2020, 21:49

Si tiene escasez de memoria y no puede permitirse el lujo de actualizar la RAM, es mejor que encuentre formas de liberar algo de memoria en su servidor. En general, existen muchos procesos/servicios que quizás no necesite. Por ejemplo, en un sistema de servidor no se requiere el servicio de impresión de "tazas". Así que identifique todos esos servicios y desactívelos.

No hay nada de malo en agregar un "intercambio" adicional, pero tenga en cuenta que no es un reemplazo de la RAM. Sus aplicaciones experimentan una degradación grave del rendimiento si comienzan a utilizar el intercambio.

1
27.01.2020, 21:49

Чтобы добавить к отличному ответу Стивена Китта :запланированное использование подкачки на физических машинах может быть плохой идеей, в виртуальной среде это очень плохая идея из-за того, что все операции ввода-вывода складываются на (нескольких )обычных центральных запоминающих устройствах.

По сути, чтобы повысить производительность вашей инфраструктуры -, вы должны разработать стратегии, позволяющие свести к минимуму количество операций ввода-вывода, а не ухудшить ее.

0
27.01.2020, 21:49

Теги

Похожие вопросы