์ฐ๋ฆฌ์ ๊ฐ๋ฐ ๊ฒฐ๊ณผ๋ฌผ์ ๋ฆฌ๋ ์ค ํ๋ก์ธ์ค๋ก ๊ตฌ๋๋ฉ๋๋ค. Node.js๋ node ํ๋ก์ธ์ค์ด๋ฉฐ, PHP๋ nginx ๋๋ php-fpm ํ๋ก์ธ์ค์ ๋๋ค.
์ฐ๋ฆฌ๊ฐ ์๊ธฐ์น ์์ ์์ธ์ ์ ๋์ํ๋ค๋ฉด OOM์ด๋ Stack Overflow๊ฐ์ ๊ฐ์ ์ข ๋ฃ ์ฌ์ ์ธ์๋ ์ค์ค๋ก ์ข ๋ฃ๋์ง ์์ฃ . ๊ทธ๋ฌ๋, ์ธ๋ถ์์ ํ๋ก์ธ์ค๋ฅผ ์ข ๋ฃํ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค.
์ปค๋์ ํตํด ํ๋ก์ธ์ค์ ์ ํธ๋ฅผ ๋ณด๋ผ ์ ์๋๋ฐ์.
- SIGKILL : ๋น์ฅ ์ฃฝ์ด
- SIGTERM : ์ฃฝ์ด๋ฌ๋ผ๋ ์์ฒญ -> ๊ฑฐ์ / ์ด๊ฒ๋ง ๋๋ด๊ณ ์ฃฝ์๊ฒ์
์ํฉ1) ๋ฆฌ๋ ์ค ์๋ฒ ์ข ๋ฃ ๋ฆฌ๋ ์ค ์๋ฒ๋ ์๋ฒ ์ข ๋ฃ ๋ช ๋ น์ ๋ฐ์ผ๋ฉด ์คํ์ค์ธ ๋ชจ๋ ํ๋ก์ธ์ค์ ์ผ๊ด์ ์ผ๋ก ์ข ๋ฃ ์ ํธ๋ฅผ ๋ณด๋ ๋๋ค. ๊ทธ๋ฐ๋ฐ SIGKILL ์ ๋ณด๋ผ๊น์ SIGTERM์ ๋ณด๋ผ๊น์?
๋๋ต ๋ค์ ์ ์ฐจ๋ฅผ ๊ฑฐ์น๊ฒ ๋ฉ๋๋ค.
์์คํ ์ด shutdown ๋ช ๋ น์ ๋ฐ์ผ๋ฉด, ๋ชจ๋ ํ๋ก์ธ์ค์ SIGTERM ์ ํธ๋ฅผ ๋ณด๋ธ ํ ์ฝ 5์ด๊ฐ (์์คํ ์ค์ ์ ๋ฐ๋ผ ์๊ฐ์ ๋ค๋ฅผ ์ ์์ต๋๋ค.) 1์ด๋ง๋ค ํ๋ก์ธ์ค ์ข ๋ฃ ์ฌ๋ถ๋ฅผ ์ฒดํฌํ์ฌ ์๊ฐ์ด ์ง๋ ํ์๋ ๋จ์์๋ ํ๋ก์ธ์ค๋ SIGKILL ์ ๋ณด๋ ๋๋ค.
https://www.computerhope.com/unix/ushutdow.htm
์ํฉ2) AWS์ EC2 Spot ์ธ์คํด์ค ์ข ๋ฃ ํ์ง๋ง AWS์ ์ ๋ ดํ Spot Instance๋ ์ฝ๊ฐ ๋ค๋ฆ ๋๋ค.
SIGTERM ์ ํธ๋ฅผ ๋ณด๋ด๊ธฐ์ ์์ 2๋ถ ์ ์ AWS์์ ๋จผ์ EC2์ ์ํ๋ฅผ ๋ฐ๊พธ๊ฒ ๋ฉ๋๋ค. ์ด๊ฒ์ ์คํ์ธ์คํด์ค์ ํน์ฑ์ผ๋ก ๋ฆฌ๋ ์ค ํ์ค์ ์๋๋๋ค.
์ด ์ ํธ๋ ์์คํ ์ปค๋์ด ๋ณด๋ด๋ ์ ํธ๊ฐ ์๋๋ฉฐ, ์ค์ ๋ก ์๋ฒ์๋ ์ด๋ค ์ด๋ฒคํธ๋ ๋ฐ์ง ๋ชปํฉ๋๋ค. ๋ค๋ง AWS์ ๋ค๋ฅธ ์๋น์ค๋ฅผ ํตํด ์์๋ผ ์ ์์ต๋๋ค.
https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/spot-interruptions.html https://docs.aws.amazon.com/autoscaling/ec2/userguide/lifecycle-hooks.html