เดฎเต†เดฎเตเดฎเดฑเดฟเด•เตเด•เต เดชเตเดฑเดคเตเดคเดพเด•เตเดจเตเดจ เด•เดฟเดฒเตเดฒเตผ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเต Linux เดชเต‹เดธเตเดฑเตเดฑเตเด—เตเดฐเต†เดŽเดธเตเด•เตเดฏเตเดŽเดฒเตเดฒเดฟเดจเดพเดฏเดฟ

เดฎเต†เดฎเตเดฎเดฑเดฟเด•เตเด•เต เดชเตเดฑเดคเตเดคเดพเด•เตเดจเตเดจ เด•เดฟเดฒเตเดฒเตผ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเต Linux เดชเต‹เดธเตเดฑเตเดฑเตเด—เตเดฐเต†เดŽเดธเตเด•เตเดฏเตเดŽเดฒเตเดฒเดฟเดจเดพเดฏเดฟ

เด‰เดณเตเดณเดชเตเดชเต‹เตพ Linux เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดธเต†เตผเดตเตผ เด…เดชเตเดฐเดคเต€เด•เตเดทเดฟเดคเดฎเดพเดฏเดฟ เด…เดตเดธเดพเดจเดฟเด•เตเด•เตเดจเตเดจเต, เด•เดพเดฐเดฃเด‚ เดจเดฟเตผเดฃเตเดฃเดฏเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต. เดจเดฟเดฐเดตเดงเดฟ เด•เดพเดฐเดฃเด™เตเด™เดณเตเดฃเตเดŸเดพเด•เดพเด‚. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, SIGSEGV - เดฌเดพเด•เตเด•เต†เตปเดกเต เดธเต†เตผเดตเดฑเดฟเดฒเต† เด’เดฐเต เดฌเด—เต เด•เดพเดฐเดฃเด‚ เดชเดฐเดพเดœเดฏเด‚. เดŽเดจเตเดจเดพเตฝ เด‡เดคเต เด…เดชเต‚เตผเดตเดฎเดพเดฃเต. เดฎเดฟเด•เตเด•เดชเตเดชเต‹เดดเตเด‚, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดกเดฟเดธเตเด•เดฟเตฝ เดธเตเดฅเดฒเดฎเต‹ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเต‹ เดคเต€เตผเดจเตเดจเต. เดจเดฟเด™เตเด™เดณเตเดŸเต† เดกเดฟเดธเตเด•เดฟเตฝ เด‡เดŸเด‚ เดคเต€เตผเดจเตเดจเดพเตฝ, เด’เดฐเต เดชเต‹เด‚เดตเดดเดฟ เดฎเดพเดคเตเดฐเดฎเต‡เดฏเตเดณเตเดณเต‚ - เดธเตเดฅเดฒเด‚ เดถเต‚เดจเตเดฏเดฎเดพเด•เตเด•เดฟ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดชเตเดจเดฐเดพเดฐเด‚เดญเดฟเด•เตเด•เตเด•.

เด“เตผเดฎเตเดฎเดฏเดฟเดฒเตเดฒเดพเดคเตเดค เด•เตŠเดฒเดฏเดพเดณเดฟ

เดจเต€ เดŽเดชเตเดชเต‹เตพ เดธเต†เตผเดตเตผ เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดชเตเดฐเด•เตเดฐเดฟเดฏ เดฎเต†เดฎเตเดฎเดฑเดฟ เดคเต€เตผเดจเตเดจเต, Linux เด”เดŸเตเดŸเต-เด“เดซเต-เดฎเต†เดฎเตเดฎเดฑเดฟ เด•เดฟเดฒเตเดฒเตผ เดฐเดฃเตเดŸเต เดชเดฐเดฟเดนเดพเดฐเด™เตเด™เตพ เดตเดพเด—เตเดฆเดพเดจเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต: เดฎเตเดดเตเดตเตป เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเต†เดฏเตเด‚ เด•เตเดฐเดพเดทเต เดšเต†เดฏเตเดฏเตเด• เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดฎเต†เดฎเตเดฎเดฑเดฟ เดจเดถเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจ เดชเตเดฐเต‹เดธเดธเตเดธเต (เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป) เด…เดตเดธเดพเดจเดฟเดชเตเดชเดฟเด•เตเด•เตเด•. เดคเต€เตผเดšเตเดšเดฏเดพเดฏเตเด‚, เดชเตเดฐเต‹เดธเดธเตเดธเต เด…เดตเดธเดพเดจเดฟเดชเตเดชเดฟเดšเตเดšเต OS เด•เตเดฐเดพเดทเดพเด•เตเดจเตเดจเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดฐเด•เตเดทเดฟเด•เตเด•เตเดจเตเดจเดคเดพเดฃเต เดจเดฒเตเดฒเดคเต. เดšเตเดฐเตเด•เตเด•เดคเตเดคเดฟเตฝ, เด”เดŸเตเดŸเต-เด“เดซเต-เดฎเต†เดฎเตเดฎเดฑเดฟ เด•เดฟเดฒเตเดฒเตผ เดŽเดจเตเดจเดคเต เด•เต‡เตผเดฃเตฝ เด•เตเดฐเดพเดทเดพเด•เตเดจเตเดจเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดฐเด•เตเดทเดฟเด•เตเด•เดพเตป เด’เดฐเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเต† เด…เดตเดธเดพเดจเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต เดชเตเดฐเด•เตเดฐเดฟเดฏเดฏเดพเดฃเต. OS เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเต เดจเดฟเดฒเดจเดฟเตผเดคเตเดคเดพเตป เด‡เดคเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเต† เดฌเดฒเดฟเด•เดดเดฟเด•เตเด•เตเดจเตเดจเต. เด†เดฆเตเดฏเด‚ OOM เดŽเด™เตเด™เดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเตเดตเต†เดจเตเดจเตเด‚ เด…เดคเต เดŽเด™เตเด™เดจเต† เดจเดฟเดฏเดจเตเดคเตเดฐเดฟเด•เตเด•เดพเดฎเต†เดจเตเดจเตเด‚ เดšเตผเดšเตเดš เดšเต†เดฏเตเดฏเดพเด‚, เดคเตเดŸเตผเดจเตเดจเต OOM เด•เดฟเดฒเตเดฒเตผ เดเดคเตŠเด•เตเด•เต† เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เตพ เด…เดตเดธเดพเดจเดฟเดชเตเดชเดฟเด•เตเด•เดฃเดฎเต†เดจเตเดจเต เดคเต€เดฐเตเดฎเดพเดจเดฟเด•เตเด•เตเดจเตเดจเตเดตเต†เดจเตเดจเต เดจเต‹เด•เตเด•เดพเด‚.

เดชเตเดฐเดงเดพเดจ เดœเต‹เดฒเดฟเด•เดณเดฟเตฝ เด’เดจเตเดจเต 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 เด•เดฟเดฒเตเดฒเดฑเดฟเดจเต เด‡เดฐเดฏเดพเด•เดพเดจเตเดณเตเดณ เดธเดพเดงเตเดฏเดค เด•เต‚เดŸเตเดคเดฒเดพเดฃเต. เดฑเต‚เดŸเตเดŸเต เดฏเต‚เดธเดฑเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เดชเตเดฐเด•เตเดฐเดฟเดฏเด•เตพเด•เตเด•เต เด•เตเดฑเดžเตเดž เดธเตเด•เต‹เตผ เด‰เดฃเตเดŸเต, เด…เดคเต เด…เดตเดธเดพเดจเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป เดจเดฟเตผเดฌเดจเตเดงเดฟเดคเดฐเดพเด•เดพเดจเตเดณเตเดณ เดธเดพเดงเตเดฏเดค เด•เตเดฑเดตเดพเดฃเต.

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

Postgres เดชเตเดฐเต‹เดธเดธเตเดธเต เดเดกเดฟ 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, เดธเต‡เดตเดจ เดฌเตเดฒเต‹เด•เตเด•เดฟเตฝ OOMScoreAdjust เดธเดœเตเดœเดฎเดพเด•เตเด•เตเด•:

[Service]
OOMScoreAdjust=-1000

เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด• oomprotect เด’เดฐเต เดŸเต€เดฎเดฟเตฝ rcctl.

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

เด’เดฐเต เดชเตเดฐเด•เตเดฐเดฟเดฏเดฏเตเดŸเต† เดจเดฟเตผเดฌเดจเตเดงเดฟเดค เด…เดตเดธเดพเดจเดฟเดชเตเดชเดฟเด•เตเด•เตฝ

เด’เดจเตเดจเต‹ เด…เดคเดฟเดฒเดงเดฟเด•เดฎเต‹ เดชเตเดฐเด•เตเดฐเดฟเดฏเด•เตพ เด‡เดคเดฟเดจเด•เด‚ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดคเตเดคเดฟเดฐเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ, OOM-เด•เดฟเดฒเตเดฒเตผ เดซเด‚เด—เตโ€Œเดทเดจเต† เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจเต oom_kill_task(). เดˆ เดซเด‚เด—เตเดทเตป เดชเตเดฐเด•เตเดฐเดฟเดฏเดฏเดฟเดฒเต‡เด•เตเด•เต เด’เดฐเต เด…เดตเดธเดพเดจเดฟเดชเตเดชเดฟเด•เตเด•เตฝ เดธเดฟเด—เตเดจเตฝ เด…เดฏเดฏเตเด•เตเด•เตเดจเตเดจเต. เดฎเต†เดฎเตเดฎเดฑเดฟ เด•เตเดฑเดตเดพเดฃเต†เด™เตเด•เดฟเตฝ oom_kill() เดชเตเดฐเต‹เดธเดธเตเดธเดฟเดฒเต‡เด•เตเด•เต เด’เดฐเต SIGKILL เดธเดฟเด—เตเดจเตฝ เด…เดฏเดฏเตโ€Œเด•เตเด•เดพเตป เดˆ เดซเด‚เด—เตโ€Œเดทเดจเต† เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจเต. เด•เต‡เตผเดฃเตฝ เดฒเต‹เด—เดฟเดฒเต‡เด•เตเด•เต เด’เดฐเต เดธเดจเตเดฆเต‡เดถเด‚ เดŽเดดเตเดคเดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต.

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

OOM-เด•เดฟเดฒเตเดฒเตผ เดŽเด™เตเด™เดจเต† เดจเดฟเดฏเดจเตเดคเตเดฐเดฟเด•เตเด•เดพเด‚

ะ’ Linux เดจเดฟเด™เตเด™เตพเด•เตเด•เต OOM-Killer เดชเตเดฐเดพเดชเตเดคเดฎเดพเด•เตเด•เดพเดจเต‹ เด…เดชเตเดฐเดพเดชเตเดคเดฎเดพเด•เตเด•เดพเดจเต‹ เด•เดดเดฟเดฏเตเด‚ (เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต‡เดคเต เดถเตเดชเดพเตผเดถ เดšเต†เดฏเตเดฏเตเดจเตเดจเดฟเดฒเตเดฒเต†เด™เตเด•เดฟเดฒเตเด‚). เด‡เดคเต เดชเตเดฐเดพเดชเตเดคเดฎเดพเด•เตเด•เดพเดจเต‹ เด…เดชเตเดฐเดพเดชเตเดคเดฎเดพเด•เตเด•เดพเดจเต‹, เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเตผ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด•. vm.oom-kill. เดฑเตบเดŸเตˆเดฎเดฟเตฝ OOM-เด•เดฟเดฒเตเดฒเตผ เดชเตเดฐเดตเตผเดคเตเดคเดจเด•เตเดทเดฎเดฎเดพเด•เตเด•เดพเตป, เด•เดฎเดพเตปเดกเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเด• 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-เด•เดฟเดฒเตเดฒเตผ เด“เดฃเดพเด•เตเด•เดพเดจเตเด‚ เด“เดซเดพเด•เตเด•เดพเดจเตเด‚ เด•เดดเดฟเดฏเตเด‚. Linux เดฒเดญเตเดฏเดฎเดพเดฏเดคเดฟเดจเต‡เด•เตเด•เดพเตพ เด•เต‚เดŸเตเดคเตฝ เดฎเต†เดฎเตเดฎเดฑเดฟ เดชเตเดฐเต‹เดธเดธเตเดธเตเด•เตพเด•เตเด•เดพเดฏเดฟ เด•เดฐเตเดคเดฟเดตเดšเตเดšเต‡เด•เตเด•เดพเด‚, เดชเด•เตเดทเต‡ เดฏเดฅเดพเตผเดคเตเดฅเดคเตเดคเดฟเตฝ เด…เดคเต เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ, เด•เต‚เดŸเดพเดคเต† เดˆ เดธเตเดตเดญเดพเดตเด‚ เด’เดฐเต เด•เต‡เตผเดฃเตฝ เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเดพเดฃเต เดจเดฟเดฏเดจเตเดคเตเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต. Linuxเด‡เดคเดฟเดจเต เดตเต‡เดฐเดฟเดฏเดฌเดฟเตพ เด‰เดคเตเดคเดฐเดตเดพเดฆเดฟเดฏเดพเดฃเต. vm.overcommit_memory.

เด…เดคเดฟเดจเดพเดฏเดฟ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดฎเต‚เดฒเตเดฏเด™เตเด™เตพ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚:

0: เดตเดณเดฐเต†เดฏเดงเดฟเด•เด‚ เดฎเต†เดฎเตเดฎเดฑเดฟ เดฑเดฟเดธเตผเดตเต เดšเต†เดฏเตเดฏเดฃเต‹ เดตเต‡เดฃเตเดŸเดฏเต‹ เดŽเดจเตเดจเต เด•เต‡เตผเดฃเตฝ เดคเดจเตเดจเต†เดฏเดพเดฃเต เดคเต€เดฐเตเดฎเดพเดจเดฟเด•เตเด•เตเดจเตเดจเดคเต. เดฎเดฟเด•เตเด• เดชเดคเดฟเดชเตเดชเตเด•เดณเดฟเดฒเตเด‚ เด‡เดคเต เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟ เดฎเต‚เดฒเตเดฏเดฎเดพเดฃเต. Linux.
1: เด•เต‡เตผเดฃเตฝ เดŽเดชเตเดชเต‹เดดเตเด‚ เด…เดงเดฟเด• เดฎเต†เดฎเตเดฎเดฑเดฟ เดฑเดฟเดธเตผเดตเต เดšเต†เดฏเตเดฏเตเด‚. เด‡เดคเต เด…เดชเด•เดŸเด•เดฐเดฎเดพเดฃเต, เด•เดพเดฐเดฃเด‚ เดฎเต†เดฎเตเดฎเดฑเดฟ เดคเต€เตผเดจเตเดจเตเดชเต‹เดฏเต‡เด•เตเด•เดพเด‚, เด•เดพเดฐเดฃเด‚, เดฎเดฟเด•เตเด•เดตเดพเดฑเตเด‚, เด’เดฐเต เดฆเดฟเดตเดธเด‚ เดชเตเดฐเด•เตเดฐเดฟเดฏเด•เตพเด•เตเด•เต เด…เดคเต เด†เดตเดถเตเดฏเดฎเดพเดฏเดฟ เดตเดฐเตเด‚.
2: เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเดฟเตฝ เดชเดฑเดžเตเดžเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต‡เด•เตเด•เดพเตพ เด•เต‚เดŸเตเดคเตฝ เดฎเต†เดฎเตเดฎเดฑเดฟ เด•เต‡เตผเดฃเตฝ เดฑเดฟเดธเตผเดตเต เดšเต†เดฏเตเดฏเดฟเดฒเตเดฒ overcommit_ratio.

เดˆ เดชเดฐเดพเดฎเต€เดฑเตเดฑเตผ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต, เด“เดตเตผ เดฑเดฟเดธเตผเดตเต เดšเต†เดฏเตเดฏเดพเตป เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเตเดŸเต† เดถเดคเดฎเดพเดจเด‚ เดจเดฟเด™เตเด™เตพ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เตเดจเตเดจเต. เด…เดคเดฟเดจเต เด‡เดŸเดฎเดฟเดฒเตเดฒเต†เด™เตเด•เดฟเตฝ, เดฎเต†เดฎเตเดฎเดฑเดฟ เด…เดจเตเดตเดฆเดฟเด•เตเด•เดฟเดฒเตเดฒ, เดธเด‚เดตเดฐเดฃเด‚ เดจเดฟเดทเต‡เดงเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเด‚. PostgreSQL-เดจเต เดถเตเดชเดพเตผเดถ เดšเต†เดฏเตเดฏเตเดจเตเดจ เดเดฑเตเดฑเดตเตเด‚ เดธเตเดฐเด•เตเดทเดฟเดคเดฎเดพเดฏ เด“เดชเตเดทเดจเดพเดฃเดฟเดคเต. OOM-เด•เดฟเดฒเตเดฒเดฑเดฟเดจเต† เดฎเดฑเตเดฑเตŠเดฐเต เด˜เดŸเด•เด‚ เดฌเดพเดงเดฟเด•เตเด•เตเดจเตเดจเต - เดตเต‡เดฐเดฟเดฏเดฌเดฟเตพ เดจเดฟเดฏเดจเตเดคเตเดฐเดฟเด•เตเด•เตเดจเตเดจ เดธเตเดตเดพเดชเตเดชเดฟเด‚เด—เต เด•เดดเดฟเดตเต cat /proc/sys/vm/swappiness. เดชเต‡เดœเดฟเด‚เด—เต เดŽเด™เตเด™เดจเต† เด•เตˆเด•เดพเดฐเตเดฏเด‚ เดšเต†เดฏเตเดฏเดฃเดฎเต†เดจเตเดจเต เดˆ เดฎเต‚เดฒเตเดฏเด™เตเด™เตพ เด•เต‡เตผเดฃเดฒเดฟเดจเต‹เดŸเต เดชเดฑเดฏเตเดจเตเดจเต. เด‰เดฏเตผเดจเตเดจ เดฎเต‚เดฒเตเดฏเด‚, OOM เดชเตเดฐเด•เตเดฐเดฟเดฏ เด…เดตเดธเดพเดจเดฟเดชเตเดชเดฟเด•เตเด•เดพเดจเตเดณเตเดณ เดธเดพเดงเตเดฏเดค เด•เตเดฑเดตเดพเดฃเต, เดชเด•เตเดทเต‡ I/O เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เด•เดพเดฐเดฃเด‚ เด‡เดคเต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเตฝ เดชเตเดฐเดคเดฟเด•เต‚เดฒ เดธเตเดตเดพเดงเต€เดจเด‚ เดšเต†เดฒเตเดคเตเดคเตเดจเตเดจเต. เดคเดฟเดฐเดฟเดšเตเดšเตเด‚ - เด•เตเดฑเดžเตเดž เดฎเต‚เดฒเตเดฏเด‚, OOM-เด•เดฟเดฒเตเดฒเตผ เด‡เดŸเดชเต†เดŸเดฒเดฟเดจเตเดณเตเดณ เดธเดพเดงเตเดฏเดค เด•เต‚เดŸเตเดคเดฒเดพเดฃเต, เดชเด•เตเดทเต‡ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดชเตเดฐเด•เดŸเดจเดตเตเด‚ เด•เต‚เดŸเตเดคเดฒเดพเดฃเต. เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟ เดฎเต‚เดฒเตเดฏเด‚ 60 เด†เดฃเต, เดŽเดจเตเดจเดพเตฝ เดฎเตเดดเตเดตเตป เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด‚ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเตฝ เดฏเต‹เดœเดฟเด•เตเด•เตเดจเตเดจเตเดตเต†เด™เตเด•เดฟเตฝ, เดฎเต‚เดฒเตเดฏเด‚ 1 เด†เดฏเดฟ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดพเดฃเต เดจเดฒเตเดฒเดคเต.

เดซเดฒเด™เตเด™เตพ

OOM-เด•เดฟเดฒเตเดฒเดฑเดฟเดฒเต† "เด•เตŠเดฒเดฏเดพเดณเดฟ" เดจเดฟเด™เตเด™เดณเต† เดญเดฏเดชเตเดชเต†เดŸเตเดคเตเดคเดพเตป เด…เดจเตเดตเดฆเดฟเด•เตเด•เดฐเตเดคเต. เดˆ เดธเดพเดนเดšเดฐเตเดฏเดคเตเดคเดฟเตฝ, เด•เตŠเดฒเดฏเดพเดณเดฟ เดจเดฟเด™เตเด™เดณเตเดŸเต† เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดจเตเดฑเต† เดฐเด•เตเดทเด•เดจเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚. เด‡เดคเต เดเดฑเตเดฑเดตเตเด‚ เดฎเต‹เดถเด‚ เดชเตเดฐเด•เตเดฐเดฟเดฏเด•เดณเต† "เด•เตŠเดฒเตเดฒเตเดจเตเดจเต" เด•เต‚เดŸเดพเดคเต† เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเต† เด•เตเดฐเดพเดทเดฟเตฝ เดจเดฟเดจเตเดจเต เดฐเด•เตเดทเดฟเด•เตเด•เตเดจเตเดจเต. PostgreSQL เด…เดตเดธเดพเดจเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป OOM-Killer เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เต‡เดฃเตเดŸเดฟเดตเดฐเตเดจเตเดจเดคเต เด’เดดเดฟเดตเดพเด•เตเด•เดพเตป, เด‡เดคเดฟเดจเดพเดฏเดฟ เดธเดœเตเดœเดฎเดพเด•เตเด•เตเด• vm.overcommit_memory เดฎเต‚เดฒเตเดฏเด‚ 2. OOM-เด•เดฟเดฒเตเดฒเตผ เด‡เดŸเดชเต†เดŸเต‡เดฃเตเดŸเดคเดฟเดฒเตเดฒเต†เดจเตเดจเต เด‡เดคเต เด‰เดฑเดชเตเดชเตเดจเตฝเด•เตเดจเตเดจเดฟเดฒเตเดฒ, เดชเด•เตเดทเต‡ เด‡เดคเต PostgreSQL เดชเตเดฐเด•เตเดฐเดฟเดฏ เด…เดตเดธเดพเดจเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป เดจเดฟเตผเดฌเดจเตเดงเดฟเดคเดฎเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดธเดพเดงเตเดฏเดค เด•เตเดฑเดฏเตเด•เตเด•เตเด‚.

เด…เดตเดฒเด‚เดฌเด‚: www.habr.com

DDoS เดชเดฐเดฟเดฐเด•เตเดทเดฏเตเดณเตเดณ เดธเตˆเดฑเตเดฑเตเด•เตพเด•เตเด•เดพเดฏเดฟ เดตเดฟเดถเตเดตเดธเดจเต€เดฏเดฎเดพเดฏ เดนเต‹เดธเตเดฑเตเดฑเดฟเด‚เด—เต เดตเดพเด™เตเด™เตเด•, VPS VDS เดธเต†เตผเดตเดฑเตเด•เตพ ๐Ÿ”ฅ DDoS เดชเดฐเดฟเดฐเด•เตเดท, VPS VDS เดธเต†เตผเดตเดฑเตเด•เตพ เด‰เดณเตเดณ เดตเดฟเดถเตเดตเดธเดจเต€เดฏเดฎเดพเดฏ เดตเต†เดฌเตโ€Œเดธเตˆเดฑเตเดฑเต เดนเต‹เดธเตเดฑเตเดฑเดฟเด‚เด—เต เดตเดพเด™เตเด™เต‚ | ProHoster