23
This commit is contained in:
parent
216f928873
commit
b95631c65c
@ -6,7 +6,7 @@ Nohang - аналог [earlyoom](https://github.com/rfjakob/earlyoom) с под
|
||||
|
||||
### Зачем это нужно?
|
||||
|
||||
Затем, этот демон реализует востребованный функционал. Судите сами:
|
||||
Затем, что этот демон реализует востребованный функционал. Судите сами:
|
||||
|
||||
"А можете рассказать, как сделать OOM Killer более агрессивным? Например, в ситуации, когда приложение открыло/создало множество мелких файлов и держит их в памяти, при внезапной нехватке памяти ядро пытается высвободить эти файловые страницы, что вешает систему намертво со 100%-м дисковым I/O на несколько (десятков) минут. А ведь зачастую гораздо проще просто грохнуть само приложение с дальнешим его перезапуском."
|
||||
https://habr.com/company/flant/blog/348324/#comment_10659202
|
||||
@ -25,9 +25,9 @@ https://www.linux.org.ru/forum/talks/12684213?lastmod=1466676523241#comment-1268
|
||||
"И IRL ты никогда не знаешь, в какой момент момент твои данные перестанут умещаться в оперативку. Потому zram -- удел embedded систем, где это может быть детерминировано."
|
||||
https://2ch.hk/s/res/2310304.html#2311483, https://archive.li/idixk
|
||||
|
||||
Nohang позволяет избавиться от перечисленных выше проблем, корректно завершая наиболее прожорливые процессы сигналом SIGTERM не дожидаясь когда система "встанет колом".
|
||||
Nohang позволяет избавиться от перечисленных выше проблем, корректно завершая наиболее прожорливые процессы сигналом `SIGTERM` не дожидаясь когда система "встанет колом". `Nohang` позволяет не бояться зависаний при использовании `zram`.
|
||||
|
||||
### Зачем нуден nohang, если уже есть earlyoom?
|
||||
### Зачем нужен nohang, если уже есть earlyoom?
|
||||
|
||||
- `earlyoom` завершает (точнее убивает) процессы исключительно с помощью сигнала `SIGKILL`, в то время как `nohang` дает возможность сначала отправлять `SIGTERM`, и только если процесс не реагирует на `SIGTERM` - отправляется сигнал `SIGKILL`.
|
||||
- `earlyoom` не поддерживает работу со `zram` и не реагирует на общую долю `zram` в памяти (`mem_used_total`). Это может привести к тому, что система все также встанет колом, как если бы earlyoom и не было (если disksize большой, а энтропия сжимаемых данных велика). Nohang позволяет избавиться от этой проблемы. По умолчанию если доля zram достигнет 60% памяти - будет отправлен сигнал SIGTERM процессу с наибольшим oom_score.
|
||||
|
Loading…
Reference in New Issue
Block a user