Linux (RHEL): Как я могу инициировать попытку процесса реорганизовать свою память при определенном пределе памяти? ⇐ Linux
Linux (RHEL): Как я могу инициировать попытку процесса реорганизовать свою память при определенном пределе памяти?
Мы запускаем один процесс в среде OpenShift и заметили, что чем дольше работает процесс, тем больше памяти он выделяет, пока не достигнет верхнего предела POD, что приведет к перезапуску процесса.
Раньше мы имели Я думал об утечке памяти, но когда мы запускаем тот же процесс в Linux с ограниченной физической памятью, операционная система автоматически освобождает неиспользуемые страницы, как только мы приближаемся к этому пределу, и потребление памяти остается стабильным.
Это не так. случай в OpenShift, поскольку машина позади имеет гораздо больше памяти, чем определено в файле YAML, поэтому она достигает определенного предела, прежде чем сможет начать реорганизацию своей памяти.
Также нет другого запущенного процесса, который мог бы заставить ОС уменьшите используемую память основного процесса.
Есть ли способ заставить ОС оптимизировать память, кроме достижения физического предела?
Мы уже пытались ограничить доступную пользователю память с помощью ulimit -m или ulimit -v, но первый просто игнорируется, а второй не запускает освобождение неиспользуемых страниц, а просто убивает процесс, когда он достигает предела виртуальной памяти.< br />One Idea также использовала cgroups, но в терминале OpenShift она не знает команду cgexec.
Источник: https://stackoverflow.com/questions/781 ... -memory-at
Мы запускаем один процесс в среде OpenShift и заметили, что чем дольше работает процесс, тем больше памяти он выделяет, пока не достигнет верхнего предела POD, что приведет к перезапуску процесса.
Раньше мы имели Я думал об утечке памяти, но когда мы запускаем тот же процесс в Linux с ограниченной физической памятью, операционная система автоматически освобождает неиспользуемые страницы, как только мы приближаемся к этому пределу, и потребление памяти остается стабильным.
Это не так. случай в OpenShift, поскольку машина позади имеет гораздо больше памяти, чем определено в файле YAML, поэтому она достигает определенного предела, прежде чем сможет начать реорганизацию своей памяти.
Также нет другого запущенного процесса, который мог бы заставить ОС уменьшите используемую память основного процесса.
Есть ли способ заставить ОС оптимизировать память, кроме достижения физического предела?
Мы уже пытались ограничить доступную пользователю память с помощью ulimit -m или ulimit -v, но первый просто игнорируется, а второй не запускает освобождение неиспользуемых страниц, а просто убивает процесс, когда он достигает предела виртуальной памяти.< br />One Idea также использовала cgroups, но в терминале OpenShift она не знает команду cgexec.
Источник: https://stackoverflow.com/questions/781 ... -memory-at
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как применить другую задержку к разному количеству запросов в пределе скорости laravel?
Anonymous » » в форуме Php - 0 Ответы
- 17 Просмотры
-
Последнее сообщение Anonymous
-