แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ” แƒ›แƒ™แƒ•แƒšแƒ”แƒšแƒ˜แƒก แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ Linux-แƒจแƒ˜ PostgreSQL-แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก

แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ” แƒ›แƒ™แƒ•แƒšแƒ”แƒšแƒ˜แƒก แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ Linux-แƒจแƒ˜ PostgreSQL-แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก

แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒ˜แƒก แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜ แƒ›แƒแƒฃแƒšแƒแƒ“แƒœแƒ”แƒšแƒแƒ“ แƒฉแƒ”แƒ แƒ“แƒ”แƒ‘แƒ Linux-แƒจแƒ˜, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ˜แƒžแƒแƒ•แƒแƒ— แƒ›แƒ˜แƒ–แƒ”แƒ–แƒ˜. แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒ›แƒ˜แƒ–แƒ”แƒ–แƒ˜ แƒ˜แƒงแƒแƒก. แฒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, SIGSEGV โ€” แƒฌแƒแƒ แƒฃแƒ›แƒแƒขแƒ”แƒ‘แƒšแƒแƒ‘แƒ Backend แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ–แƒ” แƒแƒ แƒกแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒจแƒ”แƒชแƒ“แƒแƒ›แƒ˜แƒก แƒ’แƒแƒ›แƒ. แƒ›แƒแƒ’แƒ แƒแƒ› แƒ”แƒก แƒ˜แƒจแƒ•แƒ˜แƒแƒ—แƒ˜แƒ. แƒงแƒ•แƒ”แƒšแƒแƒ–แƒ” แƒฎแƒจแƒ˜แƒ แƒแƒ“, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒ‘แƒ แƒแƒšแƒแƒ“ แƒแƒ›แƒแƒ’แƒ”แƒฌแƒฃแƒ แƒ”แƒ‘แƒแƒ— แƒ“แƒ˜แƒกแƒ™แƒ˜แƒก แƒแƒ“แƒ’แƒ˜แƒšแƒ˜ แƒแƒœ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ. แƒ—แƒฃ แƒ“แƒ˜แƒกแƒ™แƒ–แƒ” แƒกแƒ˜แƒ•แƒ แƒชแƒ” แƒแƒ›แƒแƒ’แƒ”แƒฌแƒฃแƒ แƒ”แƒ‘แƒแƒ—, แƒ’แƒแƒ›แƒแƒกแƒแƒ•แƒแƒšแƒ˜ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ”แƒ แƒ—แƒ˜แƒ - แƒ’แƒแƒแƒ—แƒแƒ•แƒ˜แƒกแƒฃแƒคแƒšแƒ”แƒ— แƒกแƒ˜แƒ•แƒ แƒชแƒ” แƒ“แƒ แƒ’แƒแƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ”แƒ— แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒ.

แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ” แƒ›แƒ™แƒ•แƒšแƒ”แƒšแƒ˜

แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒก แƒแƒœ แƒžแƒ แƒแƒชแƒ”แƒกแƒก แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ แƒแƒ›แƒแƒ˜แƒฌแƒฃแƒ แƒ”แƒ‘แƒ, Linux แƒ’แƒ—แƒแƒ•แƒแƒ–แƒแƒ‘แƒ— 2 แƒ’แƒแƒ“แƒแƒฌแƒงแƒ•แƒ”แƒขแƒ˜แƒšแƒ”แƒ‘แƒแƒก: แƒแƒ•แƒแƒ แƒ˜แƒ แƒ›แƒ—แƒ”แƒšแƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ˜แƒก แƒแƒœ แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜แƒก (แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ˜แƒก) แƒจแƒ”แƒฌแƒงแƒ•แƒ”แƒขแƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒญแƒแƒ›แƒก แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒแƒก. แƒฃแƒ›แƒฏแƒแƒ‘แƒ”แƒกแƒ˜แƒ, แƒ แƒ แƒ—แƒฅแƒ›แƒ แƒฃแƒœแƒ“แƒ, แƒจแƒ”แƒฌแƒงแƒ•แƒ˜แƒขแƒแƒ— แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜ แƒ“แƒ แƒ’แƒแƒ“แƒแƒ•แƒแƒ แƒฉแƒ˜แƒœแƒแƒ— OS แƒแƒ•แƒแƒ แƒ˜แƒ˜แƒกแƒ’แƒแƒœ. แƒ›แƒแƒ™แƒšแƒ”แƒ“, Out-Of-Memory Killer แƒแƒ แƒ˜แƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ™แƒšแƒแƒ•แƒก แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒแƒก แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒแƒ•แƒแƒ แƒ˜แƒ˜แƒกแƒ’แƒแƒœ แƒ’แƒแƒ“แƒแƒกแƒแƒ แƒฉแƒ”แƒœแƒแƒ“. แƒ˜แƒก แƒกแƒฌแƒ˜แƒ แƒแƒ•แƒก แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒแƒก แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒฃแƒšแƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ˜แƒก แƒจแƒ”แƒกแƒแƒœแƒแƒ แƒฉแƒฃแƒœแƒ”แƒ‘แƒšแƒแƒ“. แƒ›แƒแƒ“แƒ˜แƒ— แƒฏแƒ”แƒ  แƒ’แƒแƒœแƒ•แƒ˜แƒฎแƒ˜แƒšแƒแƒ—, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก OOM แƒ“แƒ แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ•แƒแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒแƒ— แƒ˜แƒ’แƒ˜, แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ™แƒ˜ แƒ•แƒœแƒแƒฎแƒแƒ—, แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ“แƒแƒฌแƒงแƒ•แƒ”แƒขแƒก OOM Killer แƒ แƒแƒ›แƒ”แƒšแƒ˜ แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ แƒจแƒ”แƒฌแƒงแƒ•แƒ˜แƒขแƒแƒก.

Linux-แƒ˜แƒก แƒ”แƒ แƒ—-แƒ”แƒ แƒ—แƒ˜ แƒ›แƒ—แƒแƒ•แƒแƒ แƒ˜ แƒแƒ›แƒแƒชแƒแƒœแƒแƒ แƒžแƒ แƒแƒชแƒ”แƒกแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒแƒคแƒ, แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒแƒ›แƒแƒก แƒ˜แƒ—แƒฎแƒแƒ•แƒ”แƒœ. แƒ แƒแƒ’แƒแƒ แƒช แƒฌแƒ”แƒกแƒ˜, แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜ แƒแƒœ แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ แƒ˜แƒ—แƒฎแƒแƒ•แƒก แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒแƒก OS-แƒ“แƒแƒœ, แƒ›แƒแƒ’แƒ แƒแƒ› แƒกแƒ แƒฃแƒšแƒแƒ“ แƒแƒ  แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒก แƒ›แƒแƒก. แƒ—แƒฃ OS แƒแƒซแƒšแƒ”แƒ•แƒก แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒแƒก แƒงแƒ•แƒ”แƒšแƒแƒก, แƒ•แƒ˜แƒœแƒช แƒแƒ›แƒแƒก แƒ˜แƒ—แƒฎแƒแƒ•แƒก, แƒ›แƒแƒ’แƒ แƒแƒ› แƒแƒ  แƒแƒžแƒ˜แƒ แƒ”แƒ‘แƒก แƒ›แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒแƒก, แƒซแƒแƒšแƒ˜แƒแƒœ แƒ›แƒแƒšแƒ” แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ แƒแƒ›แƒแƒ˜แƒฌแƒฃแƒ แƒ”แƒ‘แƒ แƒ“แƒ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ แƒ›แƒแƒ แƒชแƒฎแƒ“แƒ”แƒ‘แƒ. แƒแƒ›แƒ˜แƒก แƒ—แƒแƒ•แƒ˜แƒ“แƒแƒœ แƒแƒกแƒแƒชแƒ˜แƒšแƒ”แƒ‘แƒšแƒแƒ“, OS แƒ˜แƒขแƒแƒ•แƒ”แƒ‘แƒก แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒแƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ แƒ”แƒแƒšแƒฃแƒ แƒแƒ“ แƒแƒ  แƒแƒ—แƒแƒ•แƒ˜แƒกแƒฃแƒคแƒšแƒ”แƒ‘แƒก แƒ›แƒแƒก. แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒแƒคแƒ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ›แƒแƒจแƒ˜แƒœ, แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜ แƒ แƒ”แƒแƒšแƒฃแƒ แƒแƒ“ แƒแƒžแƒ˜แƒ แƒ”แƒ‘แƒก แƒ›แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒแƒก. แƒฎแƒ“แƒ”แƒ‘แƒ แƒ˜แƒกแƒ”, แƒ แƒแƒ› OS-แƒก แƒแƒ  แƒแƒฅแƒ•แƒก แƒ—แƒแƒ•แƒ˜แƒกแƒฃแƒคแƒแƒšแƒ˜ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ, แƒ›แƒแƒ’แƒ แƒแƒ› แƒแƒœแƒ˜แƒญแƒ”แƒ‘แƒก แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒแƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒก แƒ“แƒ แƒ แƒแƒชแƒ แƒžแƒ แƒแƒชแƒ”แƒกแƒก แƒ”แƒก แƒกแƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ, OS แƒ’แƒแƒ›แƒแƒงแƒแƒคแƒก แƒ›แƒแƒก แƒ—แƒฃ แƒจแƒ”แƒฃแƒซแƒšแƒ˜แƒ. แƒ›แƒ˜แƒœแƒฃแƒกแƒ˜ แƒ˜แƒก แƒแƒ แƒ˜แƒก, แƒ แƒแƒ› แƒ–แƒแƒ’แƒฏแƒ”แƒ  OS แƒ˜แƒขแƒแƒ•แƒ”แƒ‘แƒก แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒแƒก, แƒ›แƒแƒ’แƒ แƒแƒ› แƒกแƒแƒญแƒ˜แƒ แƒ แƒ“แƒ แƒแƒก แƒแƒ  แƒแƒ แƒ˜แƒก แƒ—แƒแƒ•แƒ˜แƒกแƒฃแƒคแƒแƒšแƒ˜ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ แƒ“แƒ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ แƒ˜แƒจแƒšแƒ”แƒ‘แƒ. OOM แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœ แƒ แƒแƒšแƒก แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒก แƒแƒ› แƒกแƒชแƒ”แƒœแƒแƒ แƒจแƒ˜ แƒ“แƒ แƒฌแƒงแƒ•แƒ”แƒขแƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒ”แƒ‘แƒก, แƒ แƒแƒ—แƒ แƒ—แƒแƒ•แƒ˜แƒ“แƒแƒœ แƒแƒ˜แƒชแƒ˜แƒšแƒแƒก แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜ แƒžแƒแƒœแƒ˜แƒ™แƒ˜แƒกแƒ’แƒแƒœ. แƒ แƒแƒ“แƒ”แƒกแƒแƒช PostgreSQL แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜ แƒ˜แƒซแƒฃแƒšแƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒจแƒ”แƒฌแƒงแƒ“แƒ”แƒก, แƒจแƒ”แƒขแƒงแƒแƒ‘แƒ˜แƒœแƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒฉแƒœแƒ“แƒ”แƒ‘แƒ แƒŸแƒฃแƒ แƒœแƒแƒšแƒจแƒ˜:

Out of Memory: Killed process 12345 (postgres).

แƒ—แƒฃ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ แƒ“แƒแƒ‘แƒแƒš แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒแƒจแƒ˜แƒ แƒ“แƒ แƒ›แƒ˜แƒกแƒ˜ แƒ’แƒแƒœแƒ—แƒแƒ•แƒ˜แƒกแƒฃแƒคแƒšแƒ”แƒ‘แƒ แƒจแƒ”แƒฃแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ, แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ แƒ’แƒแƒ›แƒแƒ˜แƒซแƒแƒฎแƒ”แƒ‘แƒ out_of_memory. แƒแƒ› แƒ”แƒขแƒแƒžแƒ–แƒ” แƒ›แƒแƒก แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ”แƒ แƒ—แƒ˜ แƒกแƒแƒฅแƒ›แƒ” แƒ แƒฉแƒ”แƒ‘แƒ - แƒ“แƒแƒแƒกแƒ แƒฃแƒšแƒแƒก แƒ”แƒ แƒ—แƒ˜ แƒแƒœ แƒ›แƒ”แƒขแƒ˜ แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜. แƒฃแƒœแƒ“แƒ แƒจแƒ”แƒฌแƒงแƒ•แƒ˜แƒขแƒแƒก แƒ—แƒฃ แƒแƒ แƒ OOM-แƒ›แƒ™แƒ•แƒšแƒ”แƒšแƒ›แƒ แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜ แƒ“แƒแƒฃแƒงแƒแƒ•แƒœแƒ”แƒ‘แƒšแƒ˜แƒ• แƒ—แƒฃ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ“แƒแƒ”แƒšแƒแƒ“แƒแƒก? แƒชแƒฎแƒแƒ“แƒ˜แƒ, แƒ แƒแƒ“แƒ”แƒกแƒแƒช out_of_memory แƒ’แƒแƒ›แƒแƒซแƒแƒฎแƒ”แƒ‘แƒฃแƒšแƒ˜แƒ, แƒ”แƒก แƒ’แƒแƒ›แƒแƒฌแƒ•แƒ”แƒฃแƒšแƒ˜แƒ I/O แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒ˜แƒก แƒ›แƒแƒšแƒแƒ“แƒ˜แƒœแƒ˜แƒก แƒแƒœ แƒ“แƒ˜แƒกแƒ™แƒ–แƒ” แƒžแƒ”แƒ˜แƒฏแƒ˜แƒœแƒ’แƒ˜แƒก แƒ’แƒแƒ›แƒ. แƒแƒ›แƒ˜แƒขแƒแƒ›, OOM แƒ›แƒ™แƒ•แƒšแƒ”แƒšแƒ›แƒ แƒฏแƒ”แƒ  แƒฃแƒœแƒ“แƒ แƒจแƒ”แƒแƒกแƒ แƒฃแƒšแƒแƒก แƒจแƒ”แƒ›แƒแƒฌแƒ›แƒ”แƒ‘แƒ”แƒ‘แƒ˜ แƒ“แƒ แƒ›แƒแƒ—แƒ–แƒ” แƒ“แƒแƒงแƒ แƒ“แƒœแƒแƒ‘แƒ˜แƒ— แƒ’แƒแƒ“แƒแƒฌแƒงแƒ•แƒ˜แƒขแƒแƒก, แƒ แƒแƒ› แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜ แƒฃแƒœแƒ“แƒ แƒจแƒ”แƒฌแƒงแƒ“แƒ”แƒก. แƒ—แƒฃ แƒฅแƒ•แƒ”แƒ›แƒแƒ— แƒ›แƒแƒงแƒ•แƒแƒœแƒ˜แƒšแƒ˜ แƒงแƒ•แƒ”แƒšแƒ แƒจแƒ”แƒ›แƒแƒฌแƒ›แƒ”แƒ‘แƒ แƒ“แƒแƒ“แƒ”แƒ‘แƒ˜แƒ—แƒ˜แƒ, OOM แƒจแƒ”แƒฌแƒงแƒ•แƒ”แƒขแƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒก.

แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜แƒก แƒจแƒ”แƒ แƒฉแƒ”แƒ•แƒ

แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ แƒแƒ›แƒแƒ˜แƒฌแƒฃแƒ แƒ”แƒ‘แƒ, แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ แƒ’แƒแƒ›แƒแƒ˜แƒซแƒแƒฎแƒ”แƒ‘แƒ out_of_memory(). แƒแƒฅแƒ•แƒก แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ select_bad_process(), แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ˜แƒฆแƒ”แƒ‘แƒก แƒจแƒ”แƒคแƒแƒกแƒ”แƒ‘แƒแƒก แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ˜แƒ“แƒแƒœ badness(). "แƒงแƒ•แƒ”แƒšแƒแƒ–แƒ” แƒชแƒฃแƒ“แƒ˜" แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒ›แƒ˜แƒ–แƒแƒœแƒ›แƒ˜แƒ›แƒแƒ แƒ—แƒฃแƒšแƒ˜. แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ badness() แƒ˜แƒ แƒฉแƒ”แƒ•แƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒก แƒ’แƒแƒ แƒ™แƒ•แƒ”แƒฃแƒšแƒ˜ แƒฌแƒ”แƒกแƒ”แƒ‘แƒ˜แƒก แƒ›แƒ˜แƒฎแƒ”แƒ“แƒ•แƒ˜แƒ—.

  1. แƒ‘แƒ˜แƒ แƒ—แƒ•แƒก แƒกแƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ แƒ’แƒแƒ แƒ™แƒ•แƒ”แƒฃแƒšแƒ˜ แƒ›แƒ˜แƒœแƒ˜แƒ›แƒแƒšแƒฃแƒ แƒ˜ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ แƒ—แƒแƒ•แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.
  2. แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ’แƒแƒแƒ—แƒแƒ•แƒ˜แƒกแƒฃแƒคแƒšแƒแƒ— แƒ‘แƒ”แƒ•แƒ แƒ˜ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ.
  3. แƒแƒ  แƒแƒ แƒ˜แƒก แƒกแƒแƒญแƒ˜แƒ แƒ แƒžแƒ แƒแƒชแƒ”แƒกแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒฌแƒงแƒ•แƒ”แƒขแƒ, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒ›แƒชแƒ˜แƒ แƒ” แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒแƒก แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ”แƒœ.
  4. แƒ›แƒ˜แƒœแƒ˜แƒ›แƒแƒšแƒฃแƒ แƒ˜ แƒžแƒ แƒแƒชแƒ”แƒ“แƒฃแƒ แƒ”แƒ‘แƒ˜ แƒฃแƒœแƒ“แƒ แƒ“แƒแƒกแƒ แƒฃแƒšแƒ“แƒ”แƒก.
  5. แƒ แƒ—แƒฃแƒšแƒ˜ แƒแƒšแƒ’แƒแƒ แƒ˜แƒ—แƒ›แƒ”แƒ‘แƒ˜, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒ–แƒ แƒ“แƒ˜แƒก แƒ˜แƒ› แƒžแƒ แƒแƒชแƒ”แƒกแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒจแƒแƒœแƒกแƒ”แƒ‘แƒก, แƒ แƒแƒ›แƒ”แƒšแƒ—แƒ แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒแƒช แƒ—แƒแƒ•แƒแƒ“ แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒ”แƒšแƒก แƒกแƒฃแƒ แƒก.

แƒงแƒ•แƒ”แƒšแƒ แƒแƒ› แƒจแƒ”แƒ›แƒแƒฌแƒ›แƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’, OOM แƒ˜แƒ™แƒ•แƒšแƒ”แƒ•แƒก แƒฅแƒฃแƒšแƒแƒก (oom_score). OOM แƒแƒœแƒ˜แƒญแƒ”แƒ‘แƒก oom_score แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒš แƒžแƒ แƒแƒชแƒ”แƒกแƒก แƒ“แƒ แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒแƒ›แƒ แƒแƒ•แƒšแƒ”แƒ‘แƒก แƒแƒ› แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒแƒก แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒแƒ–แƒ”. แƒฃแƒคแƒ แƒ แƒ“แƒ˜แƒ“แƒ˜ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ˜แƒก แƒ›แƒฅแƒแƒœแƒ” แƒžแƒ แƒแƒชแƒ”แƒกแƒ”แƒ‘แƒ˜ แƒฃแƒคแƒ แƒ แƒ›แƒ”แƒขแƒแƒ“ แƒ’แƒแƒฎแƒ“แƒ”แƒ‘แƒ˜แƒแƒœ OOM Killer-แƒ˜แƒก แƒ›แƒกแƒฎแƒ•แƒ”แƒ แƒžแƒšแƒ˜. Root แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒ”แƒšแƒ—แƒแƒœ แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒฃแƒš แƒžแƒ แƒแƒชแƒ”แƒกแƒ”แƒ‘แƒก แƒฃแƒคแƒ แƒ แƒ“แƒแƒ‘แƒแƒšแƒ˜ แƒฅแƒฃแƒšแƒ แƒแƒฅแƒ•แƒก แƒ“แƒ แƒœแƒแƒ™แƒšแƒ”แƒ‘แƒแƒ“ แƒกแƒแƒ•แƒแƒ แƒแƒฃแƒ“แƒแƒ, แƒ แƒแƒ› แƒ˜แƒซแƒฃแƒšแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ’แƒแƒฎแƒ“แƒ”แƒ‘แƒ แƒจแƒ”แƒฌแƒงแƒ“แƒ”แƒก.

postgres=# SELECT pg_backend_pid();
pg_backend_pid 
----------------
    3813
(1 row)

Postgres แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜แƒก ID แƒแƒ แƒ˜แƒก 3813, แƒแƒกแƒ” แƒ แƒแƒ›, แƒกแƒฎแƒ•แƒ แƒ’แƒแƒ แƒกแƒจแƒ˜ แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒฅแƒฃแƒšแƒ˜แƒก แƒ›แƒ˜แƒฆแƒ”แƒ‘แƒ แƒแƒ› แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—. oom_score:

vagrant@vagrant:~$ sudo cat /proc/3813/oom_score
2

แƒ—แƒฃ แƒแƒ  แƒ’แƒกแƒฃแƒ แƒ— OOM-Killer-แƒ›แƒ แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜ แƒกแƒแƒ”แƒ แƒ—แƒแƒ“ แƒ’แƒแƒแƒœแƒแƒ“แƒ’แƒฃแƒ แƒแƒก, แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒ™แƒ˜แƒ“แƒ”แƒ• แƒ”แƒ แƒ—แƒ˜ แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ˜: oom_score_adj. แƒ“แƒแƒแƒ›แƒแƒขแƒ”แƒ— แƒ“แƒ˜แƒ“แƒ˜ แƒฃแƒแƒ แƒงแƒแƒคแƒ˜แƒ—แƒ˜ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ, แƒ แƒแƒ—แƒ แƒจแƒ”แƒแƒ›แƒชแƒ˜แƒ แƒแƒ— แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒฆแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒจแƒแƒœแƒกแƒ”แƒ‘แƒ˜.

sudo echo -100 > /proc/3813/oom_score_adj

แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒแƒงแƒ”แƒœแƒ”แƒ‘แƒšแƒแƒ“ oom_score_adj, แƒ“แƒแƒแƒงแƒ”แƒœแƒ”แƒ— OOMScore Adjust แƒกแƒ”แƒ แƒ•แƒ˜แƒกแƒ˜แƒก แƒ‘แƒšแƒแƒ™แƒจแƒ˜:

[Service]
OOMScoreAdjust=-1000

แƒแƒœ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ— oomprotect แƒ’แƒฃแƒœแƒ“แƒจแƒ˜ rcctl.

rcctl set <i>servicename</i> oomprotect -1000

แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜แƒก แƒ˜แƒซแƒฃแƒšแƒ”แƒ‘แƒ˜แƒ— แƒจแƒ”แƒฌแƒงแƒ•แƒ”แƒขแƒ

แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒ”แƒ แƒ—แƒ˜ แƒแƒœ แƒ›แƒ”แƒขแƒ˜ แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜ แƒฃแƒ™แƒ•แƒ” แƒแƒ แƒฉแƒ”แƒฃแƒšแƒ˜แƒ, OOM-Killer แƒ˜แƒซแƒแƒฎแƒ”แƒ‘แƒก แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒแƒก oom_kill_task(). แƒ”แƒก แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ แƒแƒ’แƒ–แƒแƒ•แƒœแƒ˜แƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒ˜แƒ’แƒœแƒแƒšแƒก. แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ“แƒ”แƒคแƒ˜แƒชแƒ˜แƒขแƒ˜แƒก แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜ oom_kill() แƒฃแƒฌแƒแƒ“แƒ”แƒ‘แƒก แƒแƒ› แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒแƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒ–แƒ” SIGKILL แƒกแƒ˜แƒ’แƒœแƒแƒšแƒ˜แƒก แƒ’แƒแƒกแƒแƒ’แƒ–แƒแƒ•แƒœแƒแƒ“. แƒจแƒ”แƒขแƒงแƒแƒ‘แƒ˜แƒœแƒ”แƒ‘แƒ แƒ˜แƒฌแƒ”แƒ แƒ”แƒ‘แƒ แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒŸแƒฃแƒ แƒœแƒแƒšแƒจแƒ˜.

Out of Memory: Killed process [pid] [name].

แƒ แƒแƒ’แƒแƒ  แƒ•แƒแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒแƒ— OOM-Killer

Linux-แƒ–แƒ” แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒฉแƒแƒ แƒ—แƒแƒ— แƒแƒœ แƒ’แƒแƒ›แƒแƒ แƒ—แƒแƒ— OOM-Killer (แƒ—แƒฃแƒ›แƒชแƒ แƒ”แƒก แƒฃแƒ™แƒแƒœแƒแƒกแƒ™แƒœแƒ”แƒšแƒ˜ แƒแƒ  แƒแƒ แƒ˜แƒก แƒ แƒ”แƒ™แƒแƒ›แƒ”แƒœแƒ“แƒ”แƒ‘แƒฃแƒšแƒ˜). แƒฉแƒแƒ แƒ—แƒ•แƒ˜แƒก แƒแƒœ แƒ’แƒแƒ›แƒแƒ แƒ—แƒ•แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ— แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜ vm.oom-kill. แƒ˜แƒ›แƒ˜แƒกแƒแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ› แƒฉแƒแƒ แƒ—แƒแƒ— OOM-Killer แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ“แƒ แƒแƒก, แƒ’แƒแƒฃแƒจแƒ•แƒ˜แƒ— แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ sysctl.

sudo -s sysctl -w vm.oom-kill = 1

OOM-Killer-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒ แƒ—แƒ•แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ˜แƒ›แƒแƒ•แƒ” แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒแƒจแƒ˜ แƒ›แƒ˜แƒฃแƒ—แƒ˜แƒ—แƒ”แƒ— แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ 0:

sudo -s sysctl -w vm.oom-kill = 0

แƒแƒ› แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ“แƒ”แƒ’แƒ˜ แƒกแƒแƒ›แƒฃแƒ“แƒแƒ›แƒแƒ“ แƒแƒ  แƒจแƒ”แƒ˜แƒœแƒแƒฎแƒ”แƒ‘แƒ, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ›แƒฎแƒแƒšแƒแƒ“ แƒžแƒ˜แƒ แƒ•แƒ”แƒš แƒ’แƒแƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒแƒ›แƒ“แƒ”. แƒ—แƒฃ แƒ›แƒ”แƒขแƒ˜ แƒ’แƒแƒ›แƒซแƒšแƒ”แƒแƒ‘แƒ แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ—, แƒ“แƒแƒแƒ›แƒแƒขแƒ”แƒ— แƒ”แƒก แƒฎแƒแƒ–แƒ˜ แƒคแƒแƒ˜แƒšแƒก /etc/sysctl.conf:

echo vm.oom-kill = 1 >>/etc/sysctl.conf

แƒฉแƒแƒ แƒ—แƒ•แƒ˜แƒกแƒ แƒ“แƒ แƒ’แƒแƒ›แƒแƒ แƒ—แƒ•แƒ˜แƒก แƒ™แƒ˜แƒ“แƒ”แƒ• แƒ”แƒ แƒ—แƒ˜ แƒ’แƒ–แƒแƒ แƒชแƒ•แƒšแƒแƒ“แƒ˜แƒก แƒฉแƒแƒฌแƒ”แƒ แƒ panic_on_oom. แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒแƒฌแƒ›แƒ”แƒ‘แƒ แƒงแƒแƒ•แƒ”แƒšแƒ—แƒ•แƒ˜แƒก แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ /proc.

$ cat /proc/sys/vm/panic_on_oom
0

แƒ—แƒฃ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒแƒก แƒ“แƒแƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ— 0-แƒ–แƒ”, แƒ›แƒแƒจแƒ˜แƒœ แƒ แƒแƒชแƒ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ แƒแƒ›แƒแƒ˜แƒฌแƒฃแƒ แƒ”แƒ‘แƒ, แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒžแƒแƒœแƒ˜แƒ™แƒ แƒแƒ  แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ.

$ echo 0 > /proc/sys/vm/panic_on_oom

แƒ—แƒฃ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒแƒก แƒ“แƒแƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ— 1-แƒ–แƒ”, แƒ›แƒแƒจแƒ˜แƒœ แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ แƒแƒ›แƒแƒ˜แƒฌแƒฃแƒ แƒ”แƒ‘แƒ, แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒžแƒแƒœแƒ˜แƒ™แƒ แƒ›แƒแƒฎแƒ“แƒ”แƒ‘แƒ.

echo 1 > /proc/sys/vm/panic_on_oom

OOM-Killer แƒแƒ แƒ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒฉแƒแƒ แƒ—แƒแƒ— แƒ“แƒ แƒ’แƒแƒ›แƒแƒ แƒ—แƒแƒ—. แƒฉแƒ•แƒ”แƒœ แƒฃแƒ™แƒ•แƒ” แƒ•แƒ—แƒฅแƒ•แƒ˜แƒ—, แƒ แƒแƒ› Linux-แƒก แƒจแƒ”แƒฃแƒซแƒšแƒ˜แƒ แƒžแƒ แƒแƒชแƒ”แƒกแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒฃแƒคแƒ แƒ แƒ›แƒ”แƒขแƒ˜ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒ–แƒแƒ’แƒ•แƒ, แƒ•แƒ˜แƒ“แƒ แƒ” แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒ แƒ›แƒ˜แƒกแƒ˜ แƒ แƒ”แƒแƒšแƒฃแƒ แƒแƒ“ แƒ’แƒแƒ›แƒแƒงแƒแƒคแƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ”, แƒ“แƒ แƒ”แƒก แƒฅแƒชแƒ”แƒ•แƒ แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ“แƒ”แƒ‘แƒ Linux-แƒ˜แƒก แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜แƒ—. แƒชแƒ•แƒšแƒแƒ“แƒ˜ แƒžแƒแƒกแƒฃแƒฎแƒ˜แƒกแƒ›แƒ’แƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒแƒ›แƒแƒ–แƒ” vm.overcommit_memory.

แƒแƒ›แƒ˜แƒกแƒแƒ—แƒ•แƒ˜แƒก แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ›แƒ˜แƒฃแƒ—แƒ˜แƒ—แƒแƒ— แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜:

0: แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜ แƒ—แƒแƒ•แƒแƒ“ แƒฌแƒงแƒ•แƒ”แƒขแƒก, แƒ“แƒแƒฏแƒแƒ•แƒจแƒœแƒแƒก แƒ—แƒฃ แƒแƒ แƒ แƒซแƒแƒšแƒ˜แƒแƒœ แƒ‘แƒ”แƒ•แƒ แƒ˜ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ. แƒ”แƒก แƒแƒ แƒ˜แƒก แƒœแƒแƒ’แƒฃแƒšแƒ˜แƒกแƒฎแƒ›แƒ”แƒ•แƒ˜ Linux-แƒ˜แƒก แƒฃแƒ›แƒ”แƒขแƒ”แƒก แƒ•แƒ”แƒ แƒกแƒ˜แƒ”แƒ‘แƒจแƒ˜.
1: แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜ แƒงแƒแƒ•แƒ”แƒšแƒ—แƒ•แƒ˜แƒก แƒ˜แƒขแƒแƒ•แƒ”แƒ‘แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ— แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒแƒก. แƒ”แƒก แƒกแƒแƒ แƒ˜แƒกแƒ™แƒแƒ, แƒ แƒแƒ“แƒ’แƒแƒœ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒแƒ›แƒแƒ˜แƒฌแƒฃแƒ แƒแƒก, แƒ แƒแƒ“แƒ’แƒแƒœ, แƒ“แƒ˜แƒ“แƒ˜ แƒแƒšแƒ‘แƒแƒ—แƒแƒ‘แƒ˜แƒ—, แƒ”แƒ แƒ— แƒ“แƒฆแƒ”แƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒ”แƒ‘แƒ˜ แƒแƒ›แƒแƒก แƒ›แƒแƒ˜แƒ—แƒฎแƒแƒ•แƒก.
2: แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜ แƒแƒ  แƒ˜แƒขแƒแƒ•แƒ”แƒ‘แƒก แƒ›แƒ”แƒข แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒแƒก, แƒ•แƒ˜แƒ“แƒ แƒ” แƒ›แƒ˜แƒ—แƒ˜แƒ—แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒจแƒ˜ overcommit_ratio.

แƒแƒ› แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜แƒ—, แƒ—แƒฅแƒ•แƒ”แƒœ แƒ›แƒ˜แƒฃแƒ—แƒ˜แƒ—แƒ”แƒ‘แƒ— แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ˜แƒ› แƒžแƒ แƒแƒชแƒ”แƒœแƒขแƒก, แƒ แƒแƒ›แƒšแƒ˜แƒก แƒ–แƒ”แƒ“แƒ›แƒ”แƒขแƒแƒ“ แƒ“แƒแƒฏแƒแƒ•แƒจแƒœแƒ แƒแƒ แƒ˜แƒก แƒ“แƒแƒจแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜. แƒ—แƒฃ แƒแƒ›แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒแƒ“แƒ’แƒ˜แƒšแƒ˜ แƒแƒ  แƒแƒ แƒ˜แƒก, แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ แƒแƒ  แƒแƒ แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒแƒคแƒ˜แƒšแƒ˜ แƒ“แƒ แƒ“แƒแƒฏแƒแƒ•แƒจแƒœแƒ แƒฃแƒแƒ แƒงแƒแƒคแƒ˜แƒšแƒ˜ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ. แƒ”แƒก แƒแƒ แƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒแƒ–แƒ” แƒฃแƒกแƒแƒคแƒ แƒ—แƒฎแƒ แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ แƒ”แƒ™แƒแƒ›แƒ”แƒœแƒ“แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ PostgreSQL-แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. OOM-Killer แƒ’แƒแƒ•แƒšแƒ”แƒœแƒแƒก แƒแƒฎแƒ“แƒ”แƒœแƒก แƒกแƒฎแƒ•แƒ แƒ”แƒšแƒ”แƒ›แƒ”แƒœแƒขแƒ–แƒ” - แƒ’แƒแƒชแƒ•แƒšแƒ˜แƒก แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒšแƒแƒ‘แƒแƒ–แƒ”, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ“แƒ”แƒ‘แƒ แƒชแƒ•แƒšแƒแƒ“แƒ˜แƒก แƒ›แƒ˜แƒ”แƒ . cat /proc/sys/vm/swappiness. แƒ”แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜ แƒ”แƒฃแƒ‘แƒœแƒ”แƒ‘แƒ แƒ‘แƒ˜แƒ แƒ—แƒ•แƒก, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒฃแƒœแƒ“แƒ แƒ›แƒแƒ˜แƒฅแƒชแƒ”แƒก แƒžแƒ”แƒ˜แƒฏแƒ˜แƒœแƒ’แƒ˜. แƒ แƒแƒช แƒฃแƒคแƒ แƒ แƒ›แƒแƒฆแƒแƒšแƒ˜แƒ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ, แƒ›แƒ˜แƒ— แƒœแƒแƒ™แƒšแƒ”แƒ‘แƒ˜แƒ แƒแƒšแƒ‘แƒแƒ—แƒแƒ‘แƒ แƒ˜แƒ›แƒ˜แƒกแƒ, แƒ แƒแƒ› OOM แƒจแƒ”แƒแƒฉแƒ”แƒ แƒ”แƒ‘แƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒก, แƒ›แƒแƒ’แƒ แƒแƒ› I/O แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒ แƒ˜แƒก แƒฃแƒแƒ แƒงแƒแƒคแƒ˜แƒ— แƒ’แƒแƒ•แƒšแƒ”แƒœแƒแƒก แƒแƒฎแƒ“แƒ”แƒœแƒก แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒแƒ–แƒ”. แƒ“แƒ แƒžแƒ˜แƒ แƒ˜แƒฅแƒ˜แƒ— - แƒ แƒแƒช แƒฃแƒคแƒ แƒ แƒ“แƒแƒ‘แƒแƒšแƒ˜แƒ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ, แƒ›แƒ˜แƒ— แƒฃแƒคแƒ แƒ แƒ›แƒแƒฆแƒแƒšแƒ˜แƒ OOM-Killer แƒฉแƒแƒ แƒ”แƒ•แƒ˜แƒก แƒแƒšแƒ‘แƒแƒ—แƒแƒ‘แƒ, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒ˜แƒก แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ แƒแƒกแƒ”แƒ•แƒ” แƒฃแƒคแƒ แƒ แƒ›แƒแƒฆแƒแƒšแƒ˜แƒ. แƒœแƒแƒ’แƒฃแƒšแƒ˜แƒกแƒฎแƒ›แƒ”แƒ•แƒ˜ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ แƒแƒ แƒ˜แƒก 60, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ—แƒฃ แƒ›แƒ—แƒ”แƒšแƒ˜ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒ แƒฏแƒ“แƒ”แƒ‘แƒ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒแƒจแƒ˜, แƒฃแƒ›แƒฏแƒแƒ‘แƒ”แƒกแƒ˜แƒ แƒ“แƒแƒแƒงแƒ”แƒœแƒแƒ— แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ 1-แƒ–แƒ”.

แƒจแƒ”แƒ“แƒ”แƒ’แƒ”แƒ‘แƒ˜

แƒœแƒฃ แƒ›แƒ˜แƒกแƒชแƒ”แƒ›แƒ— แƒฃแƒคแƒšแƒ”แƒ‘แƒแƒก โ€žแƒ›แƒ™แƒ•แƒšแƒ”แƒšแƒ›แƒโ€œ OOM-Killer-แƒจแƒ˜ แƒจแƒ”แƒ’แƒแƒจแƒ˜แƒœแƒแƒ—. แƒแƒ› แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜ แƒ›แƒ™แƒ•แƒšแƒ”แƒšแƒ˜ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ˜แƒก แƒ›แƒฎแƒกแƒœแƒ”แƒšแƒ˜. แƒ˜แƒก โ€žแƒ™แƒšแƒแƒ•แƒกโ€œ แƒงแƒ•แƒ”แƒšแƒแƒ–แƒ” แƒชแƒฃแƒ“ แƒžแƒ แƒแƒชแƒ”แƒกแƒ”แƒ‘แƒก แƒ“แƒ แƒ˜แƒฎแƒกแƒœแƒ˜แƒก แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒก แƒแƒ•แƒแƒ แƒ˜แƒ˜แƒกแƒ’แƒแƒœ. แƒ˜แƒ›แƒ˜แƒกแƒแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ› แƒแƒ  แƒ“แƒแƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ— OOM-Killer-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ PostgreSQL-แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฌแƒงแƒ•แƒ”แƒขแƒแƒ“, แƒ“แƒแƒแƒงแƒ”แƒœแƒ”แƒ— vm.overcommit_memory แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ 2. แƒ”แƒก แƒแƒ  แƒ˜แƒซแƒšแƒ”แƒ•แƒ แƒ’แƒแƒ แƒแƒœแƒขแƒ˜แƒแƒก, แƒ แƒแƒ› OOM-Killer-แƒก แƒแƒ  แƒ›แƒแƒฃแƒฌแƒ”แƒ•แƒก แƒฉแƒแƒ แƒ”แƒ•แƒ, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ”แƒก แƒจแƒ”แƒแƒ›แƒชแƒ˜แƒ แƒ”แƒ‘แƒก PostgreSQL แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜แƒก แƒ˜แƒซแƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒฌแƒงแƒ•แƒ”แƒขแƒ˜แƒก แƒแƒšแƒ‘แƒแƒ—แƒแƒ‘แƒแƒก.

แƒฌแƒงแƒแƒ แƒ: www.habr.com

แƒแƒฎแƒแƒšแƒ˜ แƒ™แƒแƒ›แƒ”แƒœแƒขแƒแƒ แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ