๋ง์ดํฌ๋ก์๋น์ค ์ํคํ ์ฒ ๋์ ์ ํ๋์ ์ด๊ณ ํ์ฅ ๊ฐ๋ฅํ ์ํํธ์จ์ด ์์คํ ์ ํต์ฌ์ผ๋ก ์ฌ๊ฒจ์ง๋๋ค. ํ์ ๋ ๋ฆฝ์ ์ผ๋ก ๋ฐฐํฌํ๊ณ , ์ ํ์ ์ผ๋ก ํ์ฅํ๋ฉฐ, ์๋น์ค๋ฅผ ๋น์ฆ๋์ค ๋๋ฉ์ธ์ ๋ง์ถฐ ๊ธด๋ฐํ๊ฒ ์กฐ์ ํ ์ ์๋ ์ ์ฐ์ฑ์ ์ป๊ฒ ๋ฉ๋๋ค. ํ์ง๋ง ์ํคํ ์ฒ๊ฐ ์ฑ์ํด์ง์ ๋ฐ๋ผ, ๋ณต์ก์ฑ์ ์ข ์ข ์กฐ์ฉํ ์ปค์ง๋ค์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ์๋น์ค ๊ฒฝ๊ณ๊ฐ ๋ชจํธํด์ง๊ณ , ์ข ์์ฑ์ด ๋ณต์กํด์ง๋ฉฐ, ๋ณ๊ฒฝ ๋น์ฉ์ด ์ฆ๊ฐํฉ๋๋ค. ํ๋ ๋ฏผ์ฒฉ์ฑ์ ๋ชจ๋ธ์ด์๋ ๊ฒ์ด ์ฑ๋ฅ, ์์ ์ฑ, ๊ทธ๋ฆฌ๊ณ ๊ฐ๋ฐ ์๋๋ฅผ ์ ํดํ๊ธฐ ์์ํฉ๋๋ค.
๋ฆฌํฉํ ๋ง ๋ค์ ์์ํ๋ ๊ฒ์ด ์๋๋๋ค. ํ๋ฅํ๋ ๋ถ์ฐ ์์คํ ์ ๋ช ํ์ฑ, ์์ง๋ ฅ, ๊ทธ๋ฆฌ๊ณ ํต์ ๋ ฅ์ ํ๋ณตํ๋ ๊ฒ์ ๋๋ค. ๋ง์ ์กฐ์ง์ด ์ง๋์น๊ฒ ์ปค์ง๊ฑฐ๋ ๋ค๋ฅธ ์กฐ์ง์ ์ง๋์น๊ฒ ์์กดํ๋ ์๋น์ค์ ์ง๋ฉดํ๊ณ ์์ต๋๋ค. ๋ ๋ค๋ฅธ ์กฐ์ง๋ค์ ์์คํ ์ ์ค์ํ ๋ถ๋ถ๋ค์ด ์ ๋๋ก ๋ชจ๋ํฐ๋ง๋์ง ์๊ฑฐ๋, ๋์จํ๊ฒ ํ ์คํธ๋๊ฑฐ๋, ๋ช ํํ ์์ ๊ถ์ด ์๋ค๋ ๊ฒ์ ๋ฐ๊ฒฌํฉ๋๋ค. ๊ตฌ์กฐํ๋ ๋ฆฌํฉํ ๋ง์ด ์๋ค๋ฉด, ํ์ ๋ฏธ๋๋ฅผ ์ํ ํ์ ๋ณด๋ค๋ ์ด๋ฏธ ๊ตฌ์ถ๋ ๊ฒ์ ์์ ํ๋ ๋ฐ ๋ ๋ง์ ์๊ฐ์ ์๋นํ๊ฒ ๋ฉ๋๋ค.
๋ง์ดํฌ๋ก์๋น์ค ์ํคํ ์ฒ๋ฅผ ๋ฆฌํฉํ ๋งํ๋ ๊ฒ์ ๋จ์ํ ์ฝ๋๋ฅผ ์ ๋ฆฌํ๋ ๊ฒ ์ด์์ ์๋ฏธ๋ฅผ ์ง๋๋๋ค. ์๋น์ค๊ฐ ์ด๋ป๊ฒ ์ํธ ์์ฉํ๋์ง, ๊ฒฝ๊ณ๊ฐ ๋ฌด๋์ง ๋ถ๋ถ์ ์ด๋์ธ์ง, ๊ทธ๋ฆฌ๊ณ ์ด๋ค ๊ตฌ์ฑ ์์๊ฐ ์ทจ์ฝ์ฑ์ด๋ ๋นํจ์จ์ฑ์ ์์ธ์ด ๋์๋์ง์ ๋ํ ์ฌ์ธต์ ์ธ ์ดํด๊ฐ ํ์ํฉ๋๋ค. ์ด ๊ณผ์ ์์ ์ค๋ณต, ์ง์ฐ์ ์ ๋ฐํ๋ ์ข ์์ฑ, ๊ทธ๋ฆฌ๊ณ ์ด์์์ ์ฌ๊ฐ์ง๋๊ฐ ๋๋ฌ๋๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์ด๋ฌํ ๋ฌธ์ ๋ค์ ์ ์คํ๊ฒ ํด๊ฒฐํ๋ค๋ฉด ํ์ฅ์ฑ์ ํฅ์์ํค๊ณ , ์ ์ง ๊ด๋ฆฌ๋ฅผ ๊ฐ์ํํ๋ฉฐ, ์ ๋ฐ์ ์ธ ์์คํ ๋ณต์๋ ฅ์ ๊ฐ์ ํ ์ ์๋ ๊ธฐํ๊ฐ ๋ ๊ฒ์ ๋๋ค.
์ฝ๋๋ฅผ ๋์ด ๋ฆฌํฉํ ๋งํ๊ธฐ
๋ง์ดํฌ๋ก์๋น์ค ์ํ๊ณ๋ฅผ ํ์ฅ ๊ฐ๋ฅํ ํํ๋ก ๋ฆฌํฉํ ๋งํ์ธ์.
๋ ๋ง์ ์ ๋ณด๋ง์ดํฌ๋ก์๋น์ค ๋ง์คํฐ๋ฆฌ ํด์ : ์ง๊ธ ๋ฆฌํฉํ ๋งํด์ผ ํ๋ ์ด์
ํ๋ ์ํํธ์จ์ด ํ์ ๋ฏผ์ฒฉ์ฑ, ํ์ฅ์ฑ, ๊ทธ๋ฆฌ๊ณ ์๋น์ค ์์ค ์์จ์ฑ์ ํ๋ณดํ๊ธฐ ์ํด ๋ง์ดํฌ๋ก์๋น์ค ์ํคํ ์ฒ๋ฅผ ๋์ ํฉ๋๋ค. ํ์ง๋ง ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ์๋ฌด๋ฆฌ ์ ์คํ๊ฒ ์ค๊ณ๋ ์์คํ ์ด๋ผ๋ ๋นํจ์จ์ฑ, ๊ธฐ์ ๋ถ์ฑ, ๊ทธ๋ฆฌ๊ณ ์กฐ์ง ๊ฐ ๋ง์ฐฐ์ ์ผ๊ธฐํ๋ ๋ฐฉ์์ผ๋ก ๋ฐ์ ํ๋ ๊ฒฝํฅ์ด ์์ต๋๋ค. ์์คํ ์ด ์ฑ์ฅํจ์ ๋ฐ๋ผ ์๋น์ค ์ํธ์์ฉ, ๋ฐฐํฌ ์ค์ผ์คํธ๋ ์ด์ , ๊ทธ๋ฆฌ๊ณ ์์คํ ๊ด์ฐฐ์ ๋ณต์ก์ฑ ๋ํ ์ฆ๊ฐํฉ๋๋ค. ๋ง์ดํฌ๋ก์๋น์ค ์ํคํ ์ฒ๋ฅผ ๋ฆฌํฉํ ๋งํ๋ ๊ฒ์ ์ฑ๋ฅ๋ฟ๋ง ์๋๋ผ ์ ํ ๋ฐ ์์ง๋์ด๋ง ๋ฌธํ์ ์ฅ๊ธฐ์ ์ธ ์ง์ ๊ฐ๋ฅ์ฑ์ ์ํด์๋ ๋งค์ฐ ์ค์ํฉ๋๋ค. ์ด ์น์ ์์๋ ๋ถ์ฐ ์์คํ ์ ์ฑ๋ฅ ์ ํ๋ก ์ธํ ์จ๊ฒจ์ง ๋น์ฉ๊ณผ ์ง๊ธ์ด ์๋น์ค ์ค๊ณ๋ฅผ ์ฌ๊ณ ํ๊ณ ๊ฐ์ ํด์ผ ํ ์ ๊ธฐ์ธ ํต์ฌ์ ์ธ ์ด์ ๋ค์ ์ดํด๋ด ๋๋ค.
์ํคํ ์ฒ๊ฐ ์๊ธฐ์ ์ฒํด ์๋ค๋ ์ ํธ
๋ง์ดํฌ๋ก์๋น์ค ํ๊ฒฝ์ ํ๋ฃป๋ฐค ์ฌ์ด์ ๋ฌด๋์ง๋ ๊ฒฝ์ฐ๊ฐ ๊ฑฐ์ ์์ต๋๋ค. ์คํ๋ ค ๊ฒฝ๊ณ ์ ํธ๊ฐ ์ ์ง์ ์ผ๋ก ๋์ ๋๊ณ , ์ข ์ข ๋ฌด์๋๋ค๊ฐ ๊ฒฐ๊ตญ ํ ์๋์ ์์คํ ๊ฐ๋ ์๊ฐ์ ์ํฅ์ ๋ฏธ์น๊ธฐ ์์ํฉ๋๋ค. ์ฒซ ๋ฒ์งธ ์ ํธ๋ ์ผ๋ฐ์ ์ผ๋ก ์ธ์ง ๊ณผ๋ถํ์ ๋๋ค. ๊ฐ๋ฐ์๊ฐ ๋จ ํ๋์ ๊ธฐ๋ฅ์ ๊ตฌํํ๊ธฐ ์ํด ์ฌ์ฏ ๊ฐ์ง ์๋น์ค, ๋ฐ์ดํฐ ๋ชจ๋ธ, ํต์ ํ๋กํ ์ฝ์ ์ดํดํด์ผ ํ ๋, ์๋น์ค ๊ฒฝ๊ณ๊ฐ ๋ ์ด์ ๋ช ํํ์ง ์๋ค๋ ๊ฒ์ด ๋ถ๋ช ํด์ง๋๋ค. ์๋น์ค ๊ฐ ์ข ์์ฑ์ ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ๋์ฑ ์ฌํ๋๊ณ , ํ๋ ์์จ์ ์ธ ๊ธฐ๋ฅ ๋จ์์๋ ๊ฒ๋ค์ด ๋ฐ์ ํ๊ฒ ๊ฒฐํฉ๋ ๋ชจ๋๋ฆฌ์ค์ฒ๋ผ ์๋ํ๊ธฐ ์์ํฉ๋๋ค.
๋ ๋ค๋ฅธ ์ ํธ๋ ๋ฐฐํฌ ๋ง๋น์ ๋๋ค. ์ด๋ก ์ ์ผ๋ก ๋ถ์ฐ ์์คํ ์ ์๋น์ค๋ ๋ ๋ฆฝ์ ์ผ๋ก ๋ฐฐํฌ ๊ฐ๋ฅํด์ผ ํฉ๋๋ค. ํ์ง๋ง ๋ณ๊ฒฝ ์ฌํญ์ ํธ์ํ ๋ ํ์ด๋ ์๋น์ค ๊ฐ์ ๋๊ธฐํ๋ ์ ๋ฐ์ดํธ๊ฐ ํ์ํ๋ค๋ฉด, ์ด๋ ์ํคํ ์ฒ์ ์ฌ๊ฐํ ๋ฌธ์ ๊ฐ ์์์ ๋ํ๋ ๋๋ค. ํธ๋ํฝ ๊ธ์ฆ์ด๋ ๋ฐฐํฌ ๋กค์์ ์ ๋ฐ์ํ๋ ์ทจ์ฝ์ฑ ๋ํ ๊ฒฐํจ ๊ฒฉ๋ฆฌ๊ฐ ์ ๋๋ก ์ด๋ฃจ์ด์ง์ง ์์์์ ์์ฌํฉ๋๋ค. ์์์น ๋ชปํ ์ฐ์์ ์ธ ์ฅ์ ์ ๊ธด ์ฌ๊ณ ํด๊ฒฐ ์๊ฐ์ ์์คํ ์ค๊ณ์ ๋ณต์๋ ฅ ๋ถ์กฑ์ ๋๋ฌ๋ ๋๋ค. ์ด๋ฌํ ์งํ๋ ์ข ์ข ์ ๊ธฐ์ ์ธ ์ฑ์ฅ๊ณผ ์๋ฐ ์์์ ์ด๋ฃจ์ด์ง ์ ์ํ ์์ ์์ ๋น๋กฏ๋์ง๋ง, ๋ง์ดํฌ๋ก์๋น์ค ์ํคํ ์ฒ์ ์ ์คํ๊ณ ์ ๋ต์ ์ธ ๋ฆฌํฉํ ๋ง์ด ํ์ํ๋ค๋ ๊ฐ์ฅ ๋ช ํํ ์งํ์ ๋๋ค.
์๋น์ค ๊ฐ์ํ๋ฅผ ํตํ ์ ๋ต์ ์ด์ต
๋ง์ดํฌ๋ก์๋น์ค๋ฅผ ๋ฆฌํฉํ ๋งํ๋ ๊ฒ์ ๋จ์ํ ๊ธฐ์ ์ ์ธ ํ์์ฑ์ด ์๋๋ผ ์ ๋ต์ ์ด์ ์ ๋๋ค. ๋ช ํํ ๋๋ฉ์ธ ๋ก์ง์ ๋ฐ์ํ๋๋ก ์๋น์ค๋ฅผ ์ฌ์ค๊ณํ๋ฉด ๊ฐ๋ฐ ํ๋ก์ธ์ค์ ํจ์จ์ฑ์ด ํฌ๊ฒ ํฅ์๋ฉ๋๋ค. ๊ฐ๋ฐ์๋ ๊ธฐ์กด ํจํด์ ํ์ ํ๋ ๋ฐ ์์๋๋ ์๊ฐ์ ์ค์ด๊ณ ๊ฐ์น ์ ๊ณต์ ๋ ๋ง์ ์๊ฐ์ ํ ์ ํ ์ ์์ต๋๋ค. ๋ฆฌํฉํ ๋ง์ ํตํด ๊ฐ๋ฐ, ํ ์คํธ ๋ฐ ๋ฐฐํฌ๊ฐ ๊ฐ๋ฅํ ๋ ์๊ณ ๋ชฉ์ ์งํฅ์ ์ธ ์๋น์ค๋ฅผ ๋ง๋ค ์ ์์ต๋๋ค. ์ด๋ ์๋๋ฅผ ํฅ์์ํฌ ๋ฟ๋ง ์๋๋ผ ์์คํ ์ ๊ด๋ จ ์๋ ๋ถ๋ถ์ ๊ฒฐํจ์ด ๋ฐ์ํ ์ํ์ ์ค์ฌ์ค๋๋ค.
ํ์ฅ์ฑ ์ธก๋ฉด์์ ๋ฆฌํฉํ ๋ง๋ ์๋น์ค๋ฅผ ํตํด ํ์ํ ๊ณณ์ ๋ฆฌ์์ค๋ฅผ ์ ํํ๊ฒ ์ ์ฉํ ์ ์์ต๋๋ค. ์ ์ฒด ์คํ์ ํ๋ก๋น์ ๋ํ๋ ๋์ ๋ถํ๊ฐ ๊ฑธ๋ฆฌ๋ ์๋น์ค๋ง ์ํ์ ์ผ๋ก ํ์ฅํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๋ฆฌ์์ค ํจ์จ์ฑ์ ์ค์ ํ๊ฒฝ์์ ๋น์ฉ ์ ๊ฐ๊ณผ ์ฑ๋ฅ ํฅ์์ผ๋ก ์ด์ด์ง๋๋ค. ๋ํ, ๊ฐ์ํ๋ ์๋น์ค๋ ์์คํ ์ ์์ ์ฑ์ ํฅ์์ํต๋๋ค. ์๋น์ค ๊ณ์ฝ์ด ๋ช ํํ๊ฒ ์ ์๋๊ณ ์ํธ ์ข ์์ฑ์ด ์ค์ด๋ค๋ฉด ์ฅ์ ๊ฐ ์์คํ ์ ์ฒด๋ก ํ์ฐ๋ ์ํ์ด ์ค์ด๋ญ๋๋ค. ๋ฌธ์ ๋ฅผ ์ ์ํ๊ฒ ํ์ ํ๊ณ ํด๊ฒฐํ ์ ์์ผ๋ฏ๋ก ์์คํ ์ ํ๊ท ๋ณต๊ตฌ ์๊ฐ์ด ๋จ์ถ๋ฉ๋๋ค. ๊ฒฝ์์ด ์น์ดํ ํ๊ฒฝ์์ ์ ์ํ๊ฒ ์ ์ํ๊ณ ๋์ ์์คํ ๊ฐ์ฉ์ฑ์ ์ ์งํ๋ ๋ฅ๋ ฅ์ ํต์ฌ์ ์ธ ๋น์ฆ๋์ค ์ฐจ๋ณํ ์์๊ฐ ๋๋ฉฐ, ๋ฆฌํฉํ ๋ง์ ๋จ์ํ ๋ฐฑ์๋ ๋ฌธ์ ๊ฐ ์๋ ๋ฏธ๋ ์งํฅ์ ์ธ ์ ๋ต์ด ๋ฉ๋๋ค.
๊ธฐ์ ๋ถ์ฑ๊ฐ ๋น์ฆ๋์ค ์ํ์ด ๋๋ ๊ฒฝ์ฐ
๋ชจ๋ ์์คํ ์ ๊ธฐ์ ๋ถ์ฑ๋ฅผ ๋์ ํ์ง๋ง, ๋ง์ดํฌ๋ก์๋น์ค ์ํ๊ณ์์๋ ์ด๋ฌํ ๋ถ์ฑ๊ฐ ์กฐ๊ธฐ์ ํด๊ฒฐ๋์ง ์์ผ๋ฉด ํต์ ๋ถ๋ฅ ์ํ๋ก ํ์ฅ๋ ์ ์์ต๋๋ค. ์ ๋๋ก ๊ด๋ฆฌ๋์ง ์์ผ๋ฉด ์ํคํ ์ฒ ๋ถ์ฑ๋ ์กฐ์ง์ ์ํ์ผ๋ก ๋ณ์ง๋ฉ๋๋ค. ๊ฐ๋ฐํ์ด ์ข ์์ฑ ์ฒด์ธ์ด๋ ๋ถํฌ๋ช ํ ์๋น์ค ๋ก์ง์ผ๋ก ์ธํด ๊ธฐ๋ฅ ์ถ์์ ์ด๋ ค์์ ๊ฒช์ผ๋ฉด ํ์ ์๋๊ฐ ๋๋ ค์ง๋๋ค. ์ด๋ฌํ ์๋ก์ด ๊ธฐ๋ฅ ์ ๊ณต ๋ถ์กฑ์ ์ฌ์ฉ์ ๋ง์กฑ๋์ ์ ์ํฅ์ ๋ฏธ์น๊ณ ์์ฅ ๊ฒฝ์๋ ฅ์ ์ฝํ์ํต๋๋ค. ์ฒ์์๋ ์ฝ๋ ์์ค์ ๋ฌธ์ ์๋ ๊ฒ์ด ์ฑ์ฅ์ ๊ฑธ๋ฆผ๋์ด ๋ฉ๋๋ค.
๋ณด์ ๋ฐ ๊ท์ ์ค์ ๋ํ ํฉํ ๋ง๋์ง ์์ ์ํคํ ์ฒ๋ก ์ธํด ์ํ์ ๋ฐ์ต๋๋ค. ์ผ๊ด๋์ง ์์ ์๋น์ค ๊ฒฝ๊ณ์ ๊ณต์ ๋ ๋ฐ์ดํฐ ์์ ๊ถ์ ๋ณด์ ์ ์ฑ ์ํ์ด๋ ๊ท์ ์๊ฑด ์ถฉ์กฑ์ ์ด๋ ต๊ฒ ๋ง๋๋ ์ฌ๊ฐ์ง๋๋ฅผ ๋ง๋ญ๋๋ค. ์ด๋ฌํ ๋ฌธ์ ๋ ์๋น์ค ์ถ์ ์ฑ์ด ํ์์ ์ธ ๊ฐ์ฌ ๋๋ ์นจํด ์๋๋ฆฌ์ค์์ ๋์ฑ ์ ํ๋ฉ๋๋ค. ๋์ฑ์ด, ์ธ์ ์์์ ์์ค์ ์ข ์ข ๊ฐ๊ณผ๋ฉ๋๋ค. ์ทจ์ฝํ๊ณ ํผ๋์ค๋ฌ์ด ์ฝ๋๋ฒ ์ด์ค์์ ์์ ํ๋ ๊ฐ๋ฐ์๋ ๋ฒ์์์ ๊ฒฝํํ ๊ฐ๋ฅ์ฑ์ด ๋ ๋๊ณ , ์์ง๋์ด๋ค์ด ์์ฐ์ฑ์ ๋์ผ ์ ์๋ ํ๊ฒฝ์ ์ถ๊ตฌํจ์ ๋ฐ๋ผ ์กฐ์ง์ ์ด์ง๋ฅ ์ด ๋์์ง๋๋ค. ์๋ จ๋ ํ์์ ์์ผ๋ฉด ํ๋ก์ ํธ ์ฐ์์ฑ์ด ์์๋ ๋ฟ๋ง ์๋๋ผ ๋์ฒดํ๊ธฐ ์ด๋ ค์ด ๋๋ฉ์ธ ์ง์์ด ๊ณ ๊ฐ๋ฉ๋๋ค. ๋ฐ๋ผ์ ๋ง์ดํฌ๋ก์๋น์ค ๋ฆฌํฉํ ๋ง์ ๊ธฐ์ ์ ๋ฌด๊ฒฐ์ฑ๊ณผ ๋น์ฆ๋์ค ์ฐ์์ฑ์ ๋ชจ๋ ๋ณดํธํ๋ ์ ์ ์ ์ธ ๋น์ฆ๋์ค ์์ฌ ๊ฒฐ์ ์ด ๋ฉ๋๋ค.
์จ๊ฒจ์ง ๊ฒฐํจ์ ๋ฐํ๋ด์ธ์: ํ์ ํ๊ธฐ ์ ์ ์ง๋จํ์ธ์
๋ง์ดํฌ๋ก์๋น์ค ์์คํ ์ ๊ตฌ์กฐ์ ๋ณ๊ฒฝ์ ์ ์ฉํ๊ธฐ ์ ์ ๋ฌด์์ด ๋ฌธ์ ์ด๊ณ , ๋ฌด์์ด ๋น๋ํ๋ฉฐ, ๋ฌด์์ด ์ฑ์ฅ์ ์ ํดํ๋์ง ์ดํดํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ๋ช ํํ ์ง๋จ ์์ด ๋ฆฌํฉํ ๋ง์ ์ฐฉ์ํ๋ฉด ๋ ธ๋ ฅ ๋ญ๋น์ ๊ฐ๊ณผ๋ ๋ฌธ์ ๋ก ์ด์ด์ง ์ ์์ต๋๋ค. ๋ถ์ฐ ์ํคํ ์ฒ๋ฅผ ํจ๊ณผ์ ์ผ๋ก ์ง๋จํ๋ ค๋ฉด ์๋น์ค ํต์ ํจํด, ์ข ์์ฑ ๊ทธ๋ํ, ์ด์ ์งํ๋ฅผ ๋ถ์ํด์ผ ํฉ๋๋ค. ์ด ๋จ๊ณ๋ ๋จ์ํ ์ฝ๋๋ฅผ ๋ค์ ์์ฑํ๋ ๊ฒ์ด ์๋๋ผ, ์์คํ ๋์์ ๋ํ ๊ฐ์์ฑ์ ํ๋ณดํ๊ณ ์๊ฐ ๊ฒฝ๊ณผ์ ๋ฐ๋ผ ๋ฐ์ํ ์ํคํ ์ฒ ๋ณํ๋ฅผ ํ์ ํ๋ ๊ฒ์ ๋๋ค. ์ด ์น์ ์์๋ ๋นํจ์จ์ฑ์ ํ์ ํ๊ณ ๋ฆฌํฉํ ๋ง ์ ๋ต์ ํ์ํ ์ค์ํ ํต์ฐฐ๋ ฅ์ ๋์ถํ๋ ํต์ฌ ๋ฐฉ๋ฒ์ ์ดํด๋ด ๋๋ค.
์์คํ ์ ์ฒด ์ํคํ ์ฒ ๊ฐ์ฌ ์ํ
์์คํ ์ ์ฒด ๊ฐ์ฌ๋ ๊ธฐ์กด์ ๋ชจ๋ ๋ง์ดํฌ๋ก์๋น์ค, ํด๋น API, ์ข ์์ฑ, ๋ฐ์ดํฐ ์ ์ฅ์ ๋ฐ ๋ฐฐํฌ ํ๊ฒฝ์ ํ์ ํ๋ ๊ฒ์ผ๋ก ์์๋ฉ๋๋ค. ๋ง์ ํ์ ์์คํ ์ ๊ตฌ์ถํ๋ค๋ ์ด์ ๋ง์ผ๋ก ์์คํ ์ ์ดํดํ๋ค๊ณ ์๊ฐํ์ง๋ง, ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ๋ฌธ์ํ๋์ง ์์ ๋ณ๊ฒฝ ์ฌํญ๊ณผ ์์๋ฐฉํธ์ ์ธ ์์ ์ ์ํคํ ์ฒ์ ์ํธ๋กํผ๋ฅผ ์ด๋ํฉ๋๋ค. ๊ฐ์ฌ๋ ์๋น์ค ์ํธ ์์ฉ ๋ฐฉ์์ ๋ํ ์ต์ ์ ์ ํํ ๋งต์ ์์ฑํด์ผ ํฉ๋๋ค. ์ฌ๊ธฐ์๋ ๋๊ธฐ ๋ฐ ๋น๋๊ธฐ ํ๋ฆ, ์ง์ ๋ฐ ๊ฐ์ ์ข ์์ฑ, ๊ทธ๋ฆฌ๊ณ ๋ชจ๋ ์ธํ๋ผ ์์ค์ ๊ฒฐํฉ์ด ํฌํจ๋ฉ๋๋ค.
ํ ๊ฐ์ง ๋ฐฉ๋ฒ์ ๋ํ์ ์ธ ์๊ฐ๋์ ๊ฑธ์ณ ์๋น์ค ํธ์ถ ๋ก๊ทธ๋ ์ถ์ ์ ๋ถ์ํ๋ ๊ฒ์ ๋๋ค. OpenTelemetry๋ ์ปค์คํ ๋ฏธ๋ค์จ์ด์ ๊ฐ์ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ๋ฉด ์์คํ ์ ๋ฐ์ ์ํธ์์ฉ ๊ฒฝ๋ก๋ฅผ ํ์ ํ ์ ์์ต๋๋ค. ์ด ๋ฐ์ดํฐ๋ฅผ ๋ฐํ์ผ๋ก ์ด๋ค ์๋น์ค๊ฐ ํต์ฌ ํ๋ธ์ด๊ณ ์ด๋ค ์๋น์ค๊ฐ ๋จ์ผ ์ฅ์ ์ง์ ์ ์ ๋ฐํ๋์ง ๋ณด์ฌ์ฃผ๋ ์๋น์ค ๊ทธ๋ํ๋ฅผ ๊ตฌ์ถํ ์ ์์ต๋๋ค. Node.js์ ๋ก๊น ๋ฏธ๋ค์จ์ด์์ ๊ธฐ๋ณธ์ ์ธ ์๋น์ค ๊ฐ ํต์ ์ ์ถ์ถํ๋ ์์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
์๋ฐ์คํฌ๋ฆฝํธ๋ณต์ฌํธ์งapp.use((req, res, next) => {
const start = Date.now();
res.on('finish', () => {
const duration = Date.now() - start;
console.log(`[TRACE] ${req.method} ${req.originalUrl} - ${duration}ms`);
});
next();
});
์ด ๊ฐ๋จํ ์ค๋ํซ์ ๊ฐ ์๋น์ค ์๋ํฌ์ธํธ์ ์์ฒญ ๊ธฐ๊ฐ์ ๊ธฐ๋กํฉ๋๋ค. ์๊ด๊ด๊ณ ID์ ํจ๊ป ์ฌ์ฉํ๋ฉด ์๋น์ค ๊ฐ ์ฑ๋ฅ ๋ณ๋ชฉ ํ์์ ํ์ ํ ์ ์์ต๋๋ค. ๊ฐ์ฌ์์๋ ๋ฐฐํฌ ๋น๋, ํ ์์ ๊ถ, ํ ์คํธ ์ปค๋ฒ๋ฆฌ์ง ์์ค๋ ํ์ ํ์ฌ ๊ฐ ์๋น์ค์ ์ ์ฒด ์ด์ ํํฉ์ ํ์ ํ ์ ์์ต๋๋ค.
์ํฌํ๋ก ์ฒด์ธ์ ๋ณ๋ชฉ ํ์ ๊ฐ์ง
์ํคํ ์ฒ๊ฐ ๋งคํ๋๋ฉด ๋ค์ ๋จ๊ณ๋ ์ฃผ์ ์ํฌํ๋ก์ ๋ณ๋ชฉ ํ์๊ณผ ๋นํจ์จ์ฑ์ ํ์ ํ๋ ๊ฒ์ ๋๋ค. ์ด๋ฌํ ๋ณ๋ชฉ ํ์์ ์ง์ฐ ์๊ฐ ํซ์คํ, ๊ณผ๋ํ I/O, ์ค๋ณต ์๋น์ค ํ, ๋๋ ๋ณ๋ ฌํ๊ฐ ๊ฐ๋ฅํ ์ง๋ ฌํ๋ ์์ ์ผ๋ก ๋ํ๋ ์ ์์ต๋๋ค. ๋ง์ดํฌ๋ก์๋น์ค์์ ํํ ๋ฐ์ํ๋ ๋ฌธ์ ์ค ํ๋๋ ์ฒด์ธ์ผ๋ก ์ฐ๊ฒฐ๋ ๋๊ธฐ ํธ์ถ์ ๊ณผ๋ํ ์ฌ์ฉ์ผ๋ก ์ธํด ์ง์ฐ ์๊ฐ์ด ์ฌํ๋๊ณ ์ฅ์ ํ์ฐ ๊ฐ๋ฅ์ฑ์ด ๋์์ง๋ ๊ฒ์ ๋๋ค.
์๋ฅผ ๋ค์ด, ์ฌ์ฉ์ ๋ฑ๋ก ํ๋ฆ์์ ์ธ์ฆ ์๋น์ค, ์ฒญ๊ตฌ ์๋น์ค, ๋ถ์ ์๋น์ค๊ฐ ์์ฐจ์ ์ผ๋ก ์คํ๋๋ ๊ฒฝ์ฐ๋ฅผ ์๊ฐํด ๋ณด๊ฒ ์ต๋๋ค. ๊ฐ ์๋น์ค๊ฐ ๋๊ธฐ์ ์ผ๋ก ํธ์ถ๋๋ ๊ฒฝ์ฐ, ์ด๋ ํ ์๋น์ค๊ฐ ๋๋ฆฌ๊ฑฐ๋ ์ฌ์ฉํ ์ ์๊ฒ ๋๋ฉด ์ ์ฒด ์ฒด์ธ์ด ์คํจํ๊ฒ ๋ฉ๋๋ค. ๋ ๋์ ์ค๊ณ๋ผ๋ฉด ๋ถ์ ๋จ๊ณ๋ฅผ ๋น๋๊ธฐ ๋ฉ์์ง ํ๋ก ๋ถ์ฐํ์ฌ ์ฌ์ฉ์ ์๋ต์ฑ์ ํฅ์์ํฌ ์ ์์ ๊ฒ์ ๋๋ค.
์ฒด์ธ ์ํฌํ๋ก๋ฅผ ์ฌ๊ตฌ์ฑํ ์ ์๋ ๊ฐ๋จํ Java ๊ธฐ๋ฐ ์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
์๋ฐ๋ณต์ฌํธ์ง// Before: Synchronous chaining
userService.register(user);
verificationService.sendOTP(user);
billingService.createAccount(user);
// After: Asynchronous offload
userService.register(user);
verificationService.sendOTP(user);
eventQueue.publish("UserRegistered", user); // analytics, billing pick up from queue
์๋น์ค ๋ก๊ทธ, ๋ชจ๋ํฐ๋ง ๋์๋ณด๋, ๋ถ์ฐ ์ถ์ ์ ๊ฒํ ํ์ฌ ๋ถ๋ฆฌ, ๋ณ๋ ฌํ ๋๋ ๋ด๊ฒฐํจ์ฑ ๊ฐํ๊ฐ ํ์ํ ์ํฌํ๋ก๋ฅผ ํ์ ํ ์ ์์ต๋๋ค. ๋ชฉํ๋ ๋จ์ํ ์ฝ๋๋ฅผ ์ต์ ํํ๋ ๊ฒ์ด ์๋๋ผ, ๋น์ฆ๋์ค ์ฑ๊ณผ๋ฅผ ์ค์ฌ์ผ๋ก ์๋น์ค๊ฐ ์กฐ์ ๋๋ ๋ฐฉ์์ ๊ฐ์ ํ๋ ๊ฒ์ ๋๋ค.
๋น์ฆ๋์ค ์ด์ ํ์ ๋ง์ถฐ ๋ฆฌํฉํ ๋ง ์กฐ์
๋ง์ดํฌ๋ก์๋น์ค ๋ฆฌํฉํ ๋ง์์ ๊ฐ์ฅ ๊ฐ๊ณผ๋๋ ๋ถ๋ถ ์ค ํ๋๋ ์ํคํ ์ฒ ๊ฐ์ ์ฌํญ์ ์ค์ ๋น์ฆ๋์ค ๋ชฉํ์ ๋ง์ถ๋ ๊ฒ์ ๋๋ค. ์์์ฑ์ด๋ ์ด๋ก ๋ง์ ์ํ ๋ฆฌํฉํ ๋ง์ ๊ฒฝ์์ง์ ์ง์ง๋ฅผ ์ป๊ธฐ ์ด๋ ต๊ณ , ์์ง๋์ด์ ์ฌ๊ธฐ๋ฅผ ์ ํ์ํค๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ๋์ , ์ํคํ ์ฒ ๋ง์ฐฐ์ด ๋น์ฆ๋์ค ์ด๋์ ํฐ๋ธ๋ฅผ ์ด๋ป๊ฒ ๋ฐฉํดํ๋์ง ์ง๋จํ๊ณ , ๊ทธ ์ฐ๊ด์ฑ์ ํ์ฉํ์ฌ ๋ณ๊ฒฝ ์ฌํญ์ ์ฐ์ ์์๋ฅผ ์ ํ์ญ์์ค.
์๋ฅผ ๋ค์ด, ์ ํ ๋ก๋๋งต์ ๊ฐ๊ฒฉ ๋ชจ๋ธ์ ๋ํ ๋น๋ฒํ ์คํ์ด ํ์ํ์ง๋ง ์ฒญ๊ตฌ ๋ง์ดํฌ๋ก์๋น์ค๊ฐ ๊ตฌ๋ ๋ก์ง๊ณผ ๋ฐ์ ํ๊ฒ ๊ฒฐํฉ๋์ด ์๋ค๋ฉด, ์ด๋ ๋ฆฌํฉํ ๋ง์ ์ฐ์ ์์๊ฐ ๋ฉ๋๋ค. ์ด ๊ฒฝ์ฐ, ๋ฌธ์ ๋ ๋ ์ด์ ๊ธฐ์ ์ ์ธ ๊ฒ์ด ์๋๋ผ ์ํํธ์จ์ด ์ ์ฝ์ผ๋ก ์์ฅํ ๋น์ฆ๋์ค์ ์ ์ฝ์ ๋๋ค. ๋ง์ฐฌ๊ฐ์ง๋ก, ์ธ ๊ฐ์ง ์๋น์ค์์ ๋ฐ๋ณต์ ์ธ ์๊ฐ ์ด๊ณผ๋ก ์ธํด ๊ณ ๊ฐ ์จ๋ณด๋ฉ์ด ๋๋ฆฌ๋ค๋ฉด, ํด๋น ์ํฌํ๋ก๋ ์ฑ๋ฅ๋ฟ ์๋๋ผ ์ฌ์ฉ์ ๊ฒฝํ๊ณผ ์ ์ง๋ฅผ ์ํด ์ต์ ํ๋์ด์ผ ํฉ๋๋ค.
์ง๋จ ๊ณผ์ ์์ ์ ํ ๊ด๋ฆฌ์, ๋ถ์๊ฐ, ๊ณ ๊ฐ ์ง์ํ๊ณผ ํ๋ ฅํ๋ฉด ์ด๋ฌํ ์จ๊ฒจ์ง ์ฐ๊ฒฐ ๊ณ ๋ฆฌ๋ฅผ ํ์ ํ ์ ์์ต๋๋ค. ์ด๋ฅผ ํตํด ์ํคํ ์ฒ ๋ก๋๋งต์ด ๋น์ฆ๋์ค ์ฑ๊ณผ์ ์ผ์นํ๊ณ , ๊ฐ ๋ฆฌํฉํ ๋ง ์ด์ ํ๊ฐ ์ธก์ ๊ฐ๋ฅํ ๊ฐ์น๋ฅผ ์ฐฝ์ถํ ์ ์์ต๋๋ค. ๋ํ ํ์ด ์ง์ค๋ ฅ์ ์ ์งํ๊ณ , ๋ฒ์ ํ์ฅ์ ๋ฐฉ์งํ๋ฉฐ, ์กฐ์ง ์ ์ฒด์ ๊ฑธ์ณ ๋ฐฑ์๋ ๊ฐ์ ์ ์ค์์ฑ์ ๊ฐ์กฐํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
ํ์ ์ ์ํ ์ฒญ์ฌ์ง: ๋ณํ์ ์ค๊ณ
๋ฌธ์ ์ , ๋ณ๋ชฉ ํ์, ๊ทธ๋ฆฌ๊ณ ์ํคํ ์ฒ์ ๋ณํ๋ฅผ ํ์ ํ ํ, ๋ค์ ์ค์ํ ๋จ๊ณ๋ ๋ฆฌํฉํ ๋ง ๋ฐฉ์์ ์ค๊ณํ๋ ๊ฒ์ ๋๋ค. ์ฑ๊ณต์ ์ธ ๋ง์ดํฌ๋ก์๋น์ค ์ ํ์ ์ํด์๋ ๊ธฐ์ ์ ๋ชฉํ์ ์ ๊ณต ์ผ์ ์ ๊ท ํ์ ์ด๋ฃจ๋ ์ ์คํ ์ฒญ์ฌ์ง์ด ํ์ํฉ๋๋ค. ๋ฌด๋ชจํ ์ ๊ฒ์ ์๋น์ค ์ค๋จ, ๊ฐ๋ฐ์ ๋ฒ์์, ๊ทธ๋ฆฌ๊ณ ๋ก๋๋งต ์ง์ฐ์ ์ํ์ ์ด๋ํฉ๋๋ค. ๋ฐ๋ผ์ ๋ชจ๋์ฑ, ์์จ์ฑ, ๊ทธ๋ฆฌ๊ณ ๋น์ฆ๋์ค ์ฐ๊ณ์ฑ์ ๊ฐ์กฐํ๋ ์ค์ฉ์ ์ธ ๊ณํ์ ํตํด ์ํคํ ์ฒ๋ฅผ ์ฌ๊ตฌ์ฑํด์ผ ํฉ๋๋ค. ์ด ์น์ ์์๋ ์ธก์ ๊ฐ๋ฅํ ๋ชฉํ๋ฅผ ์ค์ ํ๊ณ , ์คํ ๊ฐ๋ฅํ ์ ๋ต์ ํ๊ฐํ๊ณ , ํผ๋ ์์ด ์ง์์ ์ธ ๋ฆฌํฉํ ๋ง์ ๊ฐ๋ฅํ๊ฒ ํ๋ ๊ฑฐ๋ฒ๋์ค ๋ชจ๋ธ์ ๊ตฌ์ถํ๋ ๋ฐฉ๋ฒ์ ์ดํด๋ด ๋๋ค.
์ํฅ ๊ธฐ๋ฐ ์งํ๋ฅผ ์ฌ์ฉํ์ฌ ์ฑ๊ณต์ ์ ์ํ์ธ์
๋ฆฌํฉํ ๋ง ์์ ์ ์์ํ๊ธฐ ์ ์ ์ฑ๊ณต์ ๋ํ ๋ช ํํ ์ ์๋ฅผ ๋ด๋ ค์ผ ํฉ๋๋ค. ์ด๋ฌํ ์งํ๋ ์์คํ ์์ค์ ์ฑ๋ฅ ๊ฐ์ ๊ณผ ์กฐ์ง์ ์ด์ ์ ๋ชจ๋ ํฌ๊ดํด์ผ ํฉ๋๋ค. "๋์ฑ ๊น๋ํ๊ฒ ๋ง๋ค๊ธฐ" ๋๋ "๋ณต์ก์ฑ ๊ฐ์"์ ๊ฐ์ ๋ชจํธํ ๋ชฉํ๋ ์คํ ๊ฐ๋ฅํ ๋ฐฉํฅ์ ์ ์ํ์ง ๋ชปํฉ๋๋ค. ๋์ , ๋ฐฐํฌ ๋น๋, ์๋น์ค ๊ฐ๋ ์๊ฐ, ๊ฐ๋ฐ์ ๋ฆฌ๋ ํ์, ์ธํ๋ผ ๋น์ฉ ํจ์จ์ฑ๊ณผ ๊ฐ์ ๊ตฌ์ฒด์ ์ธ ์ฑ๊ณผ์ ๋ชฉํ๋ฅผ ์ฐ๊ณํ์ญ์์ค.
์๋ฅผ ๋ค์ด, ํน์ ๋ง์ดํฌ๋ก์๋น์ค์ ํ์ฌ ๋ฐฐํฌ ์ฃผ๊ธฐ๊ฐ ์ํธ ์์กด์ฑ๊ณผ ํ ์คํธ ์ค๋ฒํค๋๋ก ์ธํด ์ผ์ฃผ์ผ์ด ๊ฑธ๋ฆฐ๋ค๋ฉด, ๋ฆฌํฉํ ๋ง ๋ชฉํ๋ ์ด ์ฃผ๊ธฐ๋ฅผ ํ๋ฃจ๋ก ๋จ์ถํ๋ ๊ฒ์ผ ์ ์์ต๋๋ค. ๋ง์ฐฌ๊ฐ์ง๋ก, ์ฌ์ฉ์ ๋๋ฉด ์๋น์ค์ ์๋ต ์๊ฐ์ด ์ต๋ ๋ถํ ์ ์ ํ๋๋ ๊ฒฝ์ฐ, ์ต์ ํ ์ ํ์ ์ฑ๋ฅ ๋ฒค์น๋งํฌ๋ฅผ ์ ์ํ๊ณ ์ธก์ ํด์ผ ํฉ๋๋ค.
์งํ๋ ๋ฆฌํฉํ ๋ง์ ์ธ๊ฐ์ ์ธ ์ธก๋ฉด๋ ๋ฐ์ํด์ผ ํฉ๋๋ค. ์๋ก์ด ํ์์ด ์ผ๋ง๋ ๋นจ๋ฆฌ ์ ์ํ ์ ์๋๊ฐ? ๊ฐ๋ฐ์๋ค์ด ๋ถ๋ถ๋ช ํ ์ฑ ์์ด๋ ๋ณต์กํ ๋ ผ๋ฆฌ๋ก ์ธํด ์๋ก ์ํต์ ์ฐจ๋จํ๋ ๋น๋๋ ์ผ๋ง๋ ๋๋๊ฐ? ์ด๋ฌํ ์งํ๋ ๋จ์ํ ์ํคํ ์ฒ์ ์ํ๋ฅผ ์ถ์ ํ๋ ๋ฐ ๊ทธ์น์ง ์์ต๋๋ค. ๋ฆฌํฉํ ๋ง ๊ด๋ จ ์์ฌ ๊ฒฐ์ ์ ๋ด๋ฆฌ๊ณ ๊ธฐ์ ํฌ์์ ๊ตฌ์ฒด์ ์ธ ๊ฐ์น๋ฅผ ์ ์ฆํ์ฌ ์ดํด๊ด๊ณ์์ ์ง์ง๋ฅผ ํ๋ณดํ๋ ๋ฐ ๋์์ ์ค๋๋ค.
์ ํฉํ ๋ฆฌํฉํ ๋ง ๊ฒฝ๋ก๋ฅผ ์ ํํ์ธ์
๋ง์ดํฌ๋ก์๋น์ค ๋ฆฌํฉํ ๋ง์๋ ๋ง๋ฅ ์ ๊ทผ๋ฒ์ด ์์ต๋๋ค. ์ ๋ต์ ํ์ฌ ์ํคํ ์ฒ ์ฑ์๋, ์กฐ์ง ๊ตฌ์กฐ, ๊ทธ๋ฆฌ๊ณ ์ค๋จ์ ๋ํ ๋ด์ฑ์ ๊ณ ๋ คํ์ฌ ์๋ฆฝ๋์ด์ผ ํฉ๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ์ ์ฉ๋๋ ์ธ ๊ฐ์ง ์ ๋ต์ ์ ์ง์ ๊ตฌ์กฐ ์กฐ์ , ๋ชจ๋์ ๊ต์ฒด(์ข ์ข ์คํธ๋ญ๊ธ๋ฌ ํจํด ์ฌ์ฉ), ๊ทธ๋ฆฌ๊ณ ๋๋ฉ์ธ ์ฃผ๋ ์ฌ์ค๊ณ์ ๋๋ค.
์ ์ง์ ๊ตฌ์กฐ ์กฐ์ ์ ๋์ฒด๋ก ์์ ์ ์ด์ง๋ง ํน์ ์ํคํ ์ฒ์ ๋ฌธ์ ์ ์ด ์๋ ์์คํ ์ ์ ํฉํฉ๋๋ค. ๋ณ๊ฒฝ ์ฌํญ์ ๋จ๊ณ์ ์ผ๋ก ์ ์ฉ๋๋ฉฐ, ๊ฒฉ๋ฆฌ๋ ํ๋ฆ ๋ด์์ ๊ฐ์ ์ฌํญ์ ํ ์คํธํฉ๋๋ค. ์ด๋ฌํ ์ ๊ทผ ๋ฐฉ์์ ์ํ์ ์ ํํ์ง๋ง, ๋ถ๋ถ์ ์ธ ์์ ์ผ๋ก ์ธํด ์๋ก์ด ๋ถ์ผ์น๊ฐ ๋ฐ์ํ๋ ๊ฒ์ ๋ฐฉ์งํ๊ธฐ ์ํด ์๊ฒฉํ ์์น์ด ํ์ํฉ๋๋ค.
๊ต์ด์ ํจํด์ ์ ๋ต์ ์ผ๋ก ์ ์ถฉ์์ ์ ์ํฉ๋๋ค. ๊ธฐ์กด ์๋น์ค๋ ์๋ก์ด ๋ง์ดํฌ๋ก์๋น์ค๋ก ๋๋ฌ์ธ์ฌ ์์ผ๋ฉฐ, ์ด ๋ง์ดํฌ๋ก์๋น์ค๋ค์ ์ ์ฐจ ๊ธฐ๋ฅ์ ํ๋์ฉ ๋ด๋นํ๊ฒ ๋ฉ๋๋ค. ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ๊ธฐ์กด ์๋น์ค๋ ์ธ๋ชจ์๊ฒ ๋๊ณ , ๋จ ํ ๋ฒ์ ์ํํ ์ ํ๋ ์์ด ํ๊ธฐ๋ฉ๋๋ค.
๋๋ฉ์ธ ๊ธฐ๋ฐ ์ฌ์ค๊ณ๋ ๋์ฑ ๊ณผ๊ฐํ๋ฉฐ, ํ์ฌ ์ํคํ ์ฒ๊ฐ ๋ ์ด์ ๋น์ฆ๋์ค ์๊ตฌ๋ฅผ ๋ฐ์ํ์ง ๋ชปํ ๋ ๊ฐ์ฅ ์ ํฉํฉ๋๋ค. ์ด ๋ชจ๋ธ์์ ์์คํ ์ ๋ช ํํ๊ฒ ์ ์๋ ์๋น์ค ๊ณ์ฝ๊ณผ ๋ฐ์ดํฐ ์์ ๊ถ์ ๊ธฐ๋ฐ์ผ๋ก ์ ํ๋ ์ปจํ ์คํธ๋ฅผ ์ค์ฌ์ผ๋ก ์ฌ๊ตฌ์ฑ๋ฉ๋๋ค. ์ด๋ฌํ ์ ๊ทผ ๋ฐฉ์์ ํ๊ดด์ ์ด์ง๋ง, ์ ๋ฐํ๊ฒ ์คํ๋ ๊ฒฝ์ฐ ํ์ฅ์ฑ๊ณผ ์ ์ง ๊ด๋ฆฌ์ฑ์ ํ๊ธฐ์ ์ผ๋ก ํฅ์์ํฌ ์ ์์ต๋๋ค.
๊ฐ ์ ๋ต์ ๊ธฐ์ ์ ์คํ ๊ฐ๋ฅ์ฑ๋ฟ๋ง ์๋๋ผ ํ ์ญ๋, ์ฌ์ ์ผ์ , ํ์ฉ ๊ฐ๋ฅํ ์ํ ํ๊ณ ๋ฑ์ ์ธก๋ฉด์์๋ ํ๊ฐ๋์ด์ผ ํฉ๋๋ค.
์๋ ์ ํ ์์ด ๊ฑฐ๋ฒ๋์ค ํ๋ ์์ํฌ ์ค์
๋ง์ดํฌ๋ก์๋น์ค ๋ฆฌํฉํ ๋ง์ ์ฌ๋ฌ ํ, ์๋น์ค, ๊ทธ๋ฆฌ๊ณ ์ฌ์ ๋ถ์ ๊ฑธ์ณ ์ด๋ฃจ์ด์ง๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ๊ฑฐ๋ฒ๋์ค ํ๋ ์์ํฌ๊ฐ ์์ผ๋ฉด ํ๋ก์ธ์ค๊ฐ ๋จํธํ๋๊ณ , ์ผ๊ด์ฑ์ด ์์ผ๋ฉฐ, ํด๋ณดํ๊ธฐ ์ฝ์ต๋๋ค. ํ์ง๋ง ๊ฑฐ๋ฒ๋์ค๊ฐ ๋ณ๋ชฉ ํ์์ด ๋์ด์๋ ์ ๋ฉ๋๋ค. ๋ชฉํ๋ ํ์๋ค์๊ฒ ์ค์ ์ง์ค์ ์ ์ด๊ฐ ์๋, ๊ณต์ ๋ ํ์ค, ๋ช ํํ ๋ฌธ์, ๊ทธ๋ฆฌ๊ณ ๊ฐํธํ ์กฐ์จ์ ์ ๊ณตํ๋ ๊ฒ์ ๋๋ค.
์๋น์ค ์์ ๊ถ์ ๋ช ํํ๊ฒ ์ ์ํ๋ ๊ฒ๋ถํฐ ์์ํ์ธ์. ๋ชจ๋ ์๋น์ค์๋ ์ํคํ ์ฒ, ๋ฐํ์ ๋ฐ ํ ์คํธ๋ฅผ ๋ด๋นํ๋ ์ฃผ์ ํ์ด ์์ด์ผ ํฉ๋๋ค. ๊ณต์ ๋ฌธ์์๋ ์๋น์ค ๊ฒฝ๊ณ, API ๊ณ์ฝ, ๋ฐ์ดํฐ ํ๋ฆ ๋ฐ ๋ชจ๋ํฐ๋ง ๊ธฐ๋์น๊ฐ ํฌํจ๋์ด์ผ ํฉ๋๋ค. ์ด๋ฌํ ์ ๋ณด๋ ๋ฒ์ ๊ด๋ฆฌ๋๋ ์ ์ฅ์์ ์ ์ฅ๋์ด์ผ ํ๋ฉฐ ์ฝ๋๋ฒ ์ด์ค์ ํจ๊ป ๋ฐ์ ํด์ผ ํฉ๋๋ค.
์ํคํ ํธ, ๊ธฐ์ ์ฑ ์์, ์ธํ๋ผ ํ์ด ํจ๊ป ์ฐธ์ฌํ๋ ์์ ๊ทธ๋ฃน์ด๋ ๊ธธ๋๋ฅผ ํตํด ํ๋ ฅ์ ์ ์งํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๊ทธ๋ฃน์ ๋ฆฌํฉํ ๋ง ์์ ์ด ์ธ์ฆ ๋ฉ์ปค๋์ฆ, ๋ก๊น ํ์, ๋ฐฐํฌ ๋ฐฉ์๊ณผ ๊ฐ์ ์์คํ ์ ๋ฐ์ ํ์ค์ ์ค์ํ๋๋ก ๋ณด์ฅํฉ๋๋ค.
ํจ๊ณผ์ ์ธ ๊ฑฐ๋ฒ๋์ค ๋ชจ๋ธ์๋ ์ ๊ธฐ์ ์ธ ์ํคํ ์ฒ ๊ฒํ ๋ ํฌํจ๋ฉ๋๋ค. ์ด๋ ํํฅ์ ์ค๊ณ ์ง์๊ฐ ์๋๋ผ, ์ ์๋ ๋ฆฌํฉํฐ๋ง์ ํ๊ฐํ๊ณ , ํ์ ํจ๊ณผ๋ฅผ ์์ธกํ๋ฉฐ, ์ป์ ๊ตํ์ ๊ณต์ ํ๋ ํ์ ์ธ์ ์ด์ด์ผ ํฉ๋๋ค. ์ด๋ฌํ ๋ฐฉ์์ผ๋ก ๊ฑฐ๋ฒ๋์ค๋ ๊ด๋ฃ์ฃผ์์ ์ฅ์ ๋ฌผ์ด ์๋ ์ง์ ๊ฐ๋ฅํ ์ํคํ ์ฒ๋ฅผ ๊ฐ๋ฅํ๊ฒ ํ๋ ์์๊ฐ ๋ฉ๋๋ค.
์ฝ๋ ์ค์ด๊ธฐ, ๋ ๋ง์ ์ฑ๊ณผ ๋ฌ์ฑ: ์ ๋ต์ ๋ฆฌํฉํ ๋ง ์ ๋ต
์ํคํ ์ฒ ๋น์ ์ด ๋ช ํํด์ง๊ณ ๊ฑฐ๋ฒ๋์ค ํ๋ ์์ํฌ๊ฐ ๊ตฌ์ถ๋๋ฉด ์ง์ ํ ๋ณํ๊ฐ ์์๋ฉ๋๋ค. ์ ์ ์ ๋ฆฌํฉํ ๋ง์ ์๋น์ค ๊ฒฝ๊ณ, ํต์ ํ๋ฆ, ๋ฐ์ดํฐ ๊ตฌ์กฐ, ๊ทธ๋ฆฌ๊ณ ๊ด์ฐฐ ๊ณ์ธต ์ ๋ฐ์ ๊ฑธ์น ์ธ๊ณผ์ ๊ฐ์ ์ ํฌํจํฉ๋๋ค. ๋ฐ๋ก ์ด ์ง์ ์์ ์ํคํ ์ฒ ๊ณํ์ด ์ฝ๋๊ฐ ๋ฉ๋๋ค. ๋ชฉํ๋ ์ํํธ์จ์ด๋ฅผ ์ถ๊ฐํ๋ ๊ฒ์ด ์๋๋ผ ๋ถํ์ํ ๋ณต์ก์ฑ, ์ค๋ณต, ๊ทธ๋ฆฌ๊ณ ์ทจ์ฝ์ฑ์ ์ค์ด๋ ๊ฒ์ ๋๋ค. ๋ง์ดํฌ๋ก์๋น์ค ๋ฆฌํฉํ ๋ง์ ์ง๊ด์ด๋ ๊ธฐ์กด ์๊ฒฌ์ด ์๋ ๋ช ํํ ์ฌ์ฉ ์ฌ๋ก์ ์ค์ ๋ฐํ์ ๋์์ ๊ธฐ๋ฐ์ผ๋ก ํ ๋ ๊ฐ์ฅ ํจ๊ณผ์ ์ ๋๋ค. ์ด ์น์ ์์๋ ์๋น์ค๋ฅผ ์ต์ ํํ๊ณ ์ค์ ์ฌ์ฉ ํจํด์ ๋ง์ถฐ ์กฐ์ ํ๋ ์ค์ฉ์ ์ธ ๊ธฐ๋ฒ๋ค์ ์ดํด๋ด ๋๋ค.
์๋น์ค ๊ฒฝ๊ณ ์ฌ์กฐ์
๋ง์ดํฌ๋ก์๋น์ค ๋ฆฌํฉํ ๋ง์์ ๊ฐ์ฅ ํฐ ์ํฅ์ ๋ฏธ์น๋ ๋ณํ ์ค ํ๋๋ ๋ ผ๋ฆฌ์ ์ธ ๋น์ฆ๋์ค ๋๋ฉ์ธ์ ๋ฐ์ํ๋๋ก ์๋น์ค ๊ฒฝ๊ณ๋ฅผ โโ์ฌ์ ์ํ๋ ๊ฒ์ ๋๋ค. ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ์๋น์ค๋ ์๋ ๋ฒ์๋ฅผ ๋ฒ์ด๋ ๋ถํ์ํ ์ญํ ์ ์ํํ๋ ๊ฒฝํฅ์ด ์์ต๋๋ค. ์ด๋ก ์ธํด ์ธํฐํ์ด์ค๊ฐ ๋น๋ํด์ง๊ณ , ์ข ์์ฑ์ด ์จ๊ฒจ์ง๋ฉฐ, ๋ณ๊ฒฝ ์ฌํญ์ด ์ ์ฉ๋ ๋ ์์์น ๋ชปํ ๋ถ์์ฉ์ด ๋ฐ์ํฉ๋๋ค.
์๋น์ค ๊ฒฝ๊ณ๋ฅผ โโ์ฌํธํ๋ ค๋ฉด ๋จผ์ ํด๋น ์๋น์ค๊ฐ ์ฒ๋ฆฌํ๋ ๋ฐ์ดํฐ์ ์์ ์ ๋ถ์ํด์ผ ํฉ๋๋ค. ์ฌ๋ฌ ๋๋ฉ์ธ์ ๋ํ ์ง์์ด ์์ด์ผ ์ ๋๋ก ์๋ํฉ๋๊น? ์ข ์์ฑ์ด ๋ค๋ฅธ ์๋น์ค๋ก ์ ์ถ๋๊ณ ์์ต๋๊น? ์๋ฅผ ๋ค์ด, ์ฃผ๋ฌธ๋ฟ ์๋๋ผ ๊ฒฐ์ ๊ฒ์ฆ ๋ฐ ์ฌ์ฉ์ ๊ถํ ๋ถ์ฌ๊น์ง ๊ด๋ฆฌํ๋ "์ฃผ๋ฌธ ์๋น์ค"๋ ์ด๋ฏธ ๋๋ฌด ๋ง์ ๊ฒฝ๊ณ๋ฅผ ๋์์ต๋๋ค. ์ด ์๋น์ค๋ ๊ฒฐ์ ์๋น์ค ๋ฐ ๊ถํ ๋ถ์ฌ ์๋น์ค์ ๊ฐ์ด ๋ ์๊ณ ์์ง๋ ฅ ์๋ ๋จ์๋ก ๋ถํด๋์ด์ผ ํฉ๋๋ค.
๋๋ฉ์ธ ์ฃผ๋ ์ค๊ณ์ ๊ฐ๋ ์ธ ์ ํ๋ ์ปจํ ์คํธ ๋งคํ์ ์ฌ์ฉํ์ฌ ๊ด์ฌ์ฌ๋ฅผ ๋ถ๋ฆฌํฉ๋๋ค. ์ง๊ณ๋ ์ด๋ฒคํธ์ ๊ทธ ์ง๊ณ๋ ์ด๋ฒคํธ๊ฐ ์์ฑํ๋ ์ด๋ฒคํธ๋ฅผ ์๋ณํฉ๋๋ค. ๊ทธ๋ฐ ๋ค์ ๋ก์ง์ ๋จ์ผ ์ปจํ ์คํธ๋ฅผ ์์ ํ๋ ์๋น์ค๋ก ํด๋ฌ์คํฐ๋งํฉ๋๋ค. ์ด ํ๋ก์ธ์ค๋ ๊ฐ๋ฐ ๋ฐ ํ ์คํธ๋ฅผ ๊ฐ์ํํ ๋ฟ๋ง ์๋๋ผ ํ์ฅ์ ๋ํ ์์ฌ ๊ฒฐ์ ๋ ๋ ์ฝ๊ฒ ๋ง๋ญ๋๋ค. ์ข์ ๋ฒ์์ ์ง์ค๋ ์๋น์ค๋ ๊ด๋ จ ์๋ ์ฌ๋ฌ ์ญํ ์ ์ํํ๋ ์๋น์ค๋ณด๋ค ๋ถํ ๋ฐ์ ์ ์์ธก ๊ฐ๋ฅ์ฑ์ด ํจ์ฌ ๋์ต๋๋ค.
๋ค์์ ์๋น์ค ๊ฒฝ๊ณ ์๋ฐ๊ณผ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์ค๋ช ํ๋ Python์ ๊ฐ๋จํ ์์ ๋๋ค.
ํ์ด์ฌ๋ณต์ฌํธ์ง# BEFORE: Order service doing too much
class OrderService:
def place_order(self, user, items):
if not self.is_authorized(user):
raise Exception("Unauthorized")
self.validate_payment(user)
self.save_order(items)
# AFTER: Delegated to appropriate services
class OrderService:
def place_order(self, user, items):
if not AuthService().is_authorized(user):
raise Exception("Unauthorized")
PaymentService().validate(user)
OrderRepository().save(items)
์ด๋ฌํ ๋ณํ๋ ์ง์ ๊ฐ๋ฅํ ๋ง์ดํฌ๋ก์๋น์ค ์ํคํ ์ฒ์ ์ด์์ธ ๋ช ํ์ฑ๊ณผ ๋ชจ๋์ฑ์ ํ๋ณตํฉ๋๋ค.
์๋น์ค ๊ฐ ์ปค๋ฎค๋์ผ์ด์ ์ต์ ํ
ํต์ ํจํด์ ๋ฐ์์ฑ ์๊ณ ํ์ฅ ๊ฐ๋ฅํ ์์คํ ๊ณผ ๋ถ์์ ํ๊ณ ์ง์ฐ ์๊ฐ์ด ๊ธด ์ํคํ ์ฒ์ ์ฐจ์ด๋ฅผ ์ ์ํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ๋ง์ ๋ง์ดํฌ๋ก์๋น์ค ์์คํ ์ REST ๊ธฐ๋ฐ ๋๊ธฐ์ ํธ์ถ๋ก ์์ํ์ฌ ์ ์ฐจ ๊ธด๋ฐํ ๊ฒฐํฉ๊ณผ ์ค๋ฅ ๋ฏผ๊ฐ์ฑ ์ฆ๊ฐ๋ก ์ด์ด์ง๋๋ค. ํต์ ์ ์ต์ ํํ๋ค๋ ๊ฒ์ ์๋น์ค ๊ฐ ํต์ ๋ฐฉ์๊ณผ ์๊ธฐ๋ฅผ ์ฌ๊ณ ํ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค.
๋จผ์ , ๋ถํ์ํ ๋๊ธฐ ์ข ์์ฑ์ ํ์ ํฉ๋๋ค. ์๋น์ค A๋ ์ ๋ง ์๋น์ค B์ ์ฆ๊ฐ์ ์ธ ์๋ต์ด ํ์ํ๊ฐ์? ์๋๋ฉด ๋ถ๋ถ์ ์ธ ์ ๋ณด๋ก ์งํํ์ฌ ๋์ค์ ์กฐ์ ํ ์ ์์๊น์? ์ฐจ๋จ ํธ์ถ์์ ๋น๋๊ธฐ ๋ฉ์์ง์ผ๋ก ์ ํํ๋ ๊ฒ์ ์๋น์ค๋ฅผ ๋ถ๋ฆฌํ๋ ๊ฐ์ฅ ํจ๊ณผ์ ์ธ ๋ฐฉ๋ฒ ์ค ํ๋์ ๋๋ค. ๋ฉ์์ง ํ๋ ์ด๋ฒคํธ ๋ธ๋ก์ปค๋ฅผ ๋์ ํ๋ฉด ์๋น์ค๋ ๋ค์ด์คํธ๋ฆผ ์๋ต์ ๊ธฐ๋ค๋ฆฌ์ง ์๊ณ ์ ๋ฐ์ดํธ๋ ์์ฒญ์ ๊ฒ์ํ๊ณ ์งํํ ์ ์์ต๋๋ค.
์๋ฅผ ๋ค์ด, ์ฐฝ๊ณ ์ด๋ฒคํธ๋ก ์ธํด ์ ํ ์ฌ๊ณ ์ ๋ฐ์ดํธ๊ฐ ๋ฐ์ํ๋ ๊ฒฝ์ฐ๋ฅผ ์๊ฐํด ๋ณด๊ฒ ์ต๋๋ค. ์ ํ ์นดํ๋ก๊ทธ ์๋น์ค๋ฅผ ์ง์ ํธ์ถํ๋ ๋์ , ์ฌ๊ณ ์๋น์ค๋ ์ด๋ฒคํธ๋ฅผ ๊ฒ์ํ ์ ์์ต๋๋ค.
์๋ฐ์คํฌ๋ฆฝํธ๋ณต์ฌํธ์ง// Node.js example using an event bus
eventBus.publish('StockUpdated', {
productId: 'XYZ',
newQuantity: 130
});
๊ทธ๋ฌ๋ฉด ์ ํ ์นดํ๋ก๊ทธ ์๋น์ค๊ฐ ์ด ์ด๋ฒคํธ๋ฅผ ๊ตฌ๋ ํ๊ณ ๊ทธ์ ๋ฐ๋ผ ๋ ์ฝ๋๋ฅผ ์ ๋ฐ์ดํธํฉ๋๋ค. ์ด๋ฌํ ๋น๋๊ธฐ ๋ชจ๋ธ์ ๋ด๊ฒฐํจ์ฑ์ ํฅ์์ํค๊ณ , ์ํ์ ํ์ฅ์ ์ง์ํ๋ฉฐ, ๋ฐฐํฌ ์ค ์กฐ์ ๋ณต์ก์ฑ์ ์ค์ฌ์ค๋๋ค.
๊ทธ๋ฌ๋ ์ด ๋ชจ๋ธ์ ์ต์ข ์ผ๊ด์ฑ์ ๋์ ํ๊ณ ๊ฐ๋ ฅํ ์ฅ์ ์ฒ๋ฆฌ๋ฅผ ์๊ตฌํฉ๋๋ค. ๋ฐฐ๋ฌ ๋ชปํ ํธ์ง ํ, ์ฌ์๋ ์ ์ฑ , ๊ทธ๋ฆฌ๊ณ ๋ฉฑ๋ฑ ๋ฉ์์ง ์ฒ๋ฆฌ๊ฐ ์์คํ ์ ๋ด์ฅ๋์ด์ผ ํฉ๋๋ค. ๊ทธ ๊ฒฐ๊ณผ, ๋์ฑ ๋ณต์๋ ฅ์ด ๋ฐ์ด๋๊ณ ๋ ๋ฆฝ์ ์ผ๋ก ์งํํ๋ ์ํคํ ์ฒ๊ฐ ๊ตฌ์ถ๋ฉ๋๋ค.
๋ฐ์ดํฐ ๋ ์ด์ด ์ฌ๊ตฌ์ฑ
์๋น์ค๊ฐ ๊ณต์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ์ธ๋ถ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ์์กดํ๋ฉด ์๋น์ค ์์จ์ฑ์ด ๋น ๋ฅด๊ฒ ๋ฌด๋์ง๋๋ค. ์ง์ ํ ๋ง์ดํฌ๋ก์๋น์ค๋ ์ผ๊ด์ฑ๊ณผ ํ์ฅ์ฑ์ ์ํด ์์ฒด ๋ฐ์ดํฐ๋ฅผ ์์ ํด์ผ ํฉ๋๋ค. ๋ฐ์ดํฐ ๊ณ์ธต ๋ฆฌํฉํ ๋ง์๋ ์คํค๋ง ๋ถ๋ฆฌ, ๊ฒฝ๊ณ ์ค์ , ์๋น์ค ๊ฐ ๋ช ํํ ๋ฐ์ดํฐ ๊ณ์ฝ ์๋ฆฝ์ด ํฌํจ๋ฉ๋๋ค.
๋ ๊ฐ ์ด์์ ์๋น์ค์์ ์ก์ธ์คํ๋ ํ ์ด๋ธ์ด๋ ์ปฌ๋ ์ ์ ํ์ ํ๋ ๊ฒ๋ถํฐ ์์ํ์ธ์. ์ด๋ ๋ ๊ฑฐ์ ์์คํ ์ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ์ฌ๊ฒํ ํ์ง ์๊ณ ๋ง์ดํฌ๋ก์๋น์ค๋ก ๋ฆฌํฉํ ๋งํ ๋ ์ข ์ข ๋ฐ์ํฉ๋๋ค. ์ฒซ ๋ฒ์งธ ๋จ๊ณ๋ ์๋น์ค๋ณ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋ง๋๋ ๊ฒ์ ๋๋ค. ๊ฐ ์๋น์ค๋ ์คํค๋ง ๋ณ๊ฒฝ, ์ธ๋ฑ์ฑ ์ ๋ต, ๋ฐฑ์ ์ ์ฑ ์ ํฌํจํ์ฌ ์์ฒด ๋ฐ์ดํฐ์ ๋ํ ์์ ํ ์ ์ด๊ถ์ ๊ฐ์ ธ์ผ ํฉ๋๋ค.
์๋น์ค ๊ฐ ๋ฐ์ดํฐ ์ก์ธ์ค๋ ์ง์ ์ฟผ๋ฆฌ๊ฐ ์๋ API ๋๋ ๋ฉ์์ง์ ํตํด ์ฒ๋ฆฌํด์ผ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด, ์ฒญ๊ตฌ ์๋น์ค๊ฐ ์ฌ์ฉ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ๊ณ ๊ฐ ๋ฐ์ดํฐ๋ฅผ ์ง์ ์ฝ๋ ๋์ , ์ฌ์ฉ์ ์๋น์ค๋ฅผ ํธ์ถํ๊ฑฐ๋ ์ฌ์ฉ์ ์ด๋ฒคํธ๋ฅผ ๊ตฌ๋ ํด์ผ ํฉ๋๋ค. ์ด๋ฅผ ํตํด ๊ฐ ์๋น์ค๊ฐ ๋ฐ์ดํฐ ์บก์ํ๋ฅผ ์ ์งํ๊ณ ๋ ๋ฆฝ์ ์ผ๋ก ๋ฐ์ ํ ์ ์์ต๋๋ค.
๋ ์ง๋ณด๋ ๊ฒฝ์ฐ์๋ CQRS๋ฅผ ๊ตฌํํฉ๋๋ค(๋ช ๋ น ์ฟผ๋ฆฌ ์ฑ ์ ๋ถ๋ฆฌ) ๋๋ ์ด๋ฒคํธ ์์ฑ์ ํตํด ์ฐ๊ธฐ ์ค์ฌ์ ์ธ ๋ฌธ์ ์ ์ฝ๊ธฐ ์ค์ฌ์ ์ธ ๋ฌธ์ ๋ฅผ ๋ถ๋ฆฌํฉ๋๋ค. ์ด๋ฅผ ํตํด ํต์ฌ ๋๋ฉ์ธ ๋ก์ง์ ์ฟผ๋ฆฌ ๋ก์ง๊ณผ ๋ถ๋ฆฌํ๋ ๋์์ ํ์ฅ์ฑ๊ณผ ๊ฐ์ฌ ๊ฐ๋ฅ์ฑ์ ์ง์ํฉ๋๋ค.
๋ฐ์ดํฐ ๊ณ์ธต ๋ฆฌํฉํ ๋ง์ ๋ง์ดํฌ๋ก์๋น์ค ์ ํ์์ ๊ฐ์ฅ ๋ณต์กํ ๋จ๊ณ ์ค ํ๋์ด์ง๋ง, ๋์์ ๊ฐ์ฅ ํฐ ๋ณด๋์ ์๊ฒจ์ฃผ๋ ๋จ๊ณ์ด๊ธฐ๋ ํฉ๋๋ค. ๋ถ์ฐ ์์คํ ์์ ๊ฐ์ฅ ํํ ์ฅ์ ์์ธ ์ค ํ๋๋ฅผ ์ ๊ฑฐํ๊ณ , ๋์ฑ ์์ธก ๊ฐ๋ฅํ๊ณ ์์ ํ ์ด์์ ์ํ ํ ๋๋ฅผ ๋ง๋ จํด ์ค๋๋ค.
์ฌ์ธต์ ๊ด์ฐฐ์ฑ ๋ฐ ๋ณต๊ตฌ ๊ณ์ธต ์ถ๊ฐ
๊ด์ฐฐ์ฑ์ ๊ฐ์ ํ์ง ์๊ณ ๋ ๋ง์ดํฌ๋ก์๋น์ค ๋ฆฌํฉํ ๋ง์ด ์์ฑ๋ ์ ์์ต๋๋ค. ๋ถ์ฐ ์์คํ ์์ ๊ฐ์์ฑ์ ์์ ์ฑ์ ํ์์ ์ ๋๋ค. ๊ฐ๋ ฅํ ๋ชจ๋ํฐ๋ง๊ณผ ์ถ์ ์์ด๋ ์ฅ์ ๋ฅผ ์กฐ๊ธฐ์ ๊ฐ์งํ๊ณ , ๊ทผ๋ณธ ์์ธ์ ํ์ ํ๊ณ , ์๋น์ค ์ํธ์์ฉ์ ์ต์ ํํ๋ ๊ฒ์ด ๊ฑฐ์ ๋ถ๊ฐ๋ฅํฉ๋๋ค.
๋ชจ๋ ์๋น์ค์ ๋ถ์ฐ ์ถ์ ์ ๊ตฌํํ๋ ๊ฒ๋ถํฐ ์์ํ์ธ์. ์ด๋ฅผ ํตํด ์ฌ๋ฌ ํ์ ๊ฑธ์ณ ๋จ์ผ ์์ฒญ์ ์ถ์ ํ๊ณ ์ง์ฐ์ด๋ ์ฅ์ ๊ฐ ๋ฐ์ํ๋ ์์น๋ฅผ ๊ฐ์งํ ์ ์์ต๋๋ค. OpenTelemetry๋ Jaeger์ ๊ฐ์ ๋๊ตฌ๋ ์ง์ฐ ๋ณ๋ชฉ ํ์, ์ฌ์๋ ํญํ ๋๋ ์์์น ๋ชปํ ํธ์ถ ๋ฃจํ๋ฅผ ๊ฐ์กฐํ๋ ์์ธํ ์ถ์ ์๊ฐํ๋ฅผ ์ ๊ณตํ ์ ์์ต๋๋ค.
๋ํ, ์๊ด๊ด๊ณ ID๋ฅผ ์ฌ์ฉํ์ฌ ๊ตฌ์กฐํ๋ ๋ก๊น ์ ํตํฉํ์ธ์. ๋ก๊ทธ๋ ๋ชจ๋ ์๋น์ค์์ ์ผ๊ด๋์ด์ผ ํ๋ฉฐ ์๋ํ๋ ๋ถ์์ ์ง์ํ๋๋ก ์ค๊ณ๋์ด์ผ ํฉ๋๋ค. ์งํ ์์ง์๋ ์์คํ ์ํ(CPU, ๋ฉ๋ชจ๋ฆฌ, ์์ฒญ๋ฅ )๋ฟ๋ง ์๋๋ผ ์ฃผ๋ฌธ ์๋ฃ์จ์ด๋ ๋ก๊ทธ์ธ ์ฑ๊ณต๋ฅ ๊ณผ ๊ฐ์ ๋น์ฆ๋์ค ์์ค ์งํ๋ ํฌํจ๋์ด์ผ ํฉ๋๋ค.
๋ชจ๋ ์๋น์ค์ ์ค๋ฅ ๋ณต๊ตฌ ๊ธฐ๋ฅ์ ๋ด์ฅํด์ผ ํฉ๋๋ค. ํ๋ก ์ฐจ๋จ๊ธฐ, ์ง์ ๋ฐฑ์คํ ์ฌ์๋, ๊ทธ๋ฆฌ๊ณ ํด๋ฐฑ ๋ก์ง์ ์ฌ์ฉํ์ฌ ์ผ์์ ์ธ ์ฅ์ ๊ฐ ํ๋๋์ง ์๋๋ก ํด์ผ ํฉ๋๋ค. ๋ชฉํ๋ ์ฅ์ ๋ฅผ ์์ ํ ์ ๊ฑฐํ๋ ๊ฒ์ด ์๋๋ผ ์ฅ์ ๋ฅผ ๊ฒฉ๋ฆฌํ๊ณ ์ํํ๊ฒ ๋ณต๊ตฌํ๋ ๊ฒ์ ๋๋ค. ์ด๋ฌํ ์์ค์ ์ด์ ์ฑ์๋๋ ๋ฆฌํฉํ ๋ง๋ ์๋น์ค๋ฅผ ์์ฒด์ ์ผ๋ก ํฌํจ๋๊ณ ์๊ฐ ๋ณต๊ตฌ๋๋ ๋จ์๋ก ๋ง๋ค์ด ์ค๋๋ค.
์ถ์ ์ ๊ฒ์ฆ: ์ ๋ฌธ๊ฐ์ฒ๋ผ ํ ์คํธํ์ธ์
๋ง์ดํฌ๋ก์๋น์ค ๋ฆฌํฉํ ๋ง์ ๋จ์ํ ๊ตฌ์กฐ์ ์์ ์ด ์๋๋๋ค. ์ ๊ฒํ์ง ์์ผ๋ฉด ์๋ก์ด ๋ฒ๊ทธ, ์ฑ๋ฅ ์ ํ, ์๋น์ค ์ฅ์ ๊ฐ ๋ฐ์ํ ์ ์๋ ๊ณ ์ํ ์์ ์ ๋๋ค. ๊ฒ์ฆ์ ์ํคํ ์ฒ์ ์ฑ ์์ ์ ์ ์ ๋๋ค. ๋ฆฌํฉํ ๋ง๋ ์๋น์ค๋ ๋ฐฐํฌ ์ ์ ์ ํ์ฑ, ๋ณต์๋ ฅ, ๊ทธ๋ฆฌ๊ณ ๊ธฐ๋ฅ์ ๊ธฐ๋์น์์ ๋ถํฉ์ฑ์ ์ ์ฆํด์ผ ํฉ๋๋ค. ๋ง์ดํฌ๋ก์๋น์ค ํ๊ฒฝ์์์ ํ ์คํธ๋ ๊ธฐ์กด์ ๋จ์ ํ ์คํธ๋ฅผ ๋์ด์ผ ํฉ๋๋ค. ๋คํธ์ํฌ ์ง์ฐ ์๊ฐ, ์ข ์์ฑ ๋์, ๋ฉ์์ง ๋ฌด๊ฒฐ์ฑ, ๊ทธ๋ฆฌ๊ณ ํ ๊ฐ ๋ณํํ๋ ๊ณ์ฝ๊น์ง ๊ณ ๋ คํด์ผ ํฉ๋๋ค. ์ด ์น์ ์์๋ ์์ ํ ์ถ์์ ๋น ๋ฅธ ํผ๋๋ฐฑ ๋ฃจํ๋ฅผ ๊ฐ๋ฅํ๊ฒ ํ๋ ๊ณ ๊ธ ํ ์คํธ ๊ธฐ๋ฒ๊ณผ ์ค์ ์ฌ๋ก๋ฅผ ์ดํด๋ด ๋๋ค.
์๋ํ๋ ํ์ง ๋คํธ์ํฌ ๊ตฌ์ถ
์๋น์ค๋ฅผ ํ์คํ๊ฒ ๋ฆฌํฉํ ๋งํ๋ ค๋ฉด ์์คํ ์ ๋ชจ๋ ๊ณ์ธต์ ๊ฑธ์ณ ์๋ํ๋ ํ ์คํธ๋ฅผ ํตํฉํด์ผ ํฉ๋๋ค. ์ฌ๊ธฐ์๋ ํต์ฌ ๋ก์ง์ ๋ํ ๋จ์ ํ ์คํธ, API ๋ฌด๊ฒฐ์ฑ์ ์ํ ๊ณ์ฝ ํ ์คํธ, ์ข ์์ฑ ๊ฒ์ฆ์ ์ํ ํตํฉ ํ ์คํธ, ๊ทธ๋ฆฌ๊ณ ์ ์ฒด ์ํฌํ๋ก๋ฅผ ๊ฒ์ฆํ๋ ์ข ๋จ ๊ฐ ํ ์คํธ๊ฐ ํฌํจ๋ฉ๋๋ค. ๊ฐ ํ ์คํธ ์ ํ์ ์๋ก ๋ค๋ฅธ ๋ชฉ์ ์ ์ํํ๋ฉฐ, ๋ชจ๋ ํ ์คํธ๋ ๊ท๋ชจ์ ๋ง๋ ํ์ง์ ์ ์งํ๋ ๋ฐ ํ์์ ์ ๋๋ค.
๋จ์ ํ ์คํธ๋ ์๋น์ค ๋ด์ ๊ณ ๋ฆฝ๋ ๋ก์ง์ ๊ฒ์ฆํฉ๋๋ค. ๋น ๋ฅด๊ณ ์ ํํ๋ฉฐ ๋ชจ๋ ํ ์คํธ ์ค์ํธ์ ๊ธฐ๋ฐ์ ํ์ฑํฉ๋๋ค. ํ์ง๋ง ์๋น์ค ์ํธ ์์ฉ ๋ฐฉ์์ ๋ฌธ์ ์ ์ ํฌ์ฐฉํ์ง๋ ๋ชปํฉ๋๋ค. ๊ณ์ฝ ํ ์คํธ๋ ์ด๋ฌํ ๊ฐ๊ทน์ ๋ฉ์๋๋ค. ๊ณ์ฝ ํ ์คํธ๋ ์๋น์ค API๊ฐ ์๋น์์ ๊ธฐ๋์ ๋ถํฉํ๋์ง, ๊ทธ๋ฆฌ๊ณ ๊ทธ ๋ฐ๋์ ๊ฒฝ์ฐ๋ ๋ง์ฐฌ๊ฐ์ง์ธ์ง ํ์ธํฉ๋๋ค. ์ด๋ฅผ ํตํด ํ ์๋น์ค์ ๋ณ๊ฒฝ์ผ๋ก ์ธํด ํ์ ์๋น์์ ๋์์ด ๊ฐ์๊ธฐ ์ค๋จ๋๋ ์ํฉ์ ๋ฐฉ์งํ ์ ์์ต๋๋ค.
์๋ฅผ ๋ค์ด, ์ฌ์ฉ์ ์๋น์ค๊ฐ ํ๋กํ ์๋ํฌ์ธํธ์ ๋ํ JSON API๋ฅผ ์ ๊ณตํ๋ ๊ฒฝ์ฐ ์๋น์ ๊ณ์ฝ ํ ์คํธ์์ ํด๋น ๊ตฌ์กฐ๋ฅผ ๊ฒ์ฆํ ์ ์์ต๋๋ค.
json๋ณต์ฌํธ์ง{
"id": "string",
"name": "string",
"email": "string"
}
๊ฐ๋ฐ์๊ฐ ์๋ก์ด ํ์ ํ๋๋ฅผ ์ถ๊ฐํ๊ฑฐ๋ ํค๋ฅผ ๋ณ๊ฒฝํ๋ ๊ฒฝ์ฐ, ๋ณ๊ฒฝ ์ฌํญ์ด ๋ช ์์ ์ผ๋ก ์กฐ์ ๋์ง ์์ผ๋ฉด ๊ณ์ฝ ํ ์คํธ๊ฐ ์คํจํฉ๋๋ค. ํตํฉ ํ ์คํธ๋ ์๋น์ค ๊ฐ์ ์ค์ ํธ์ถ์ ์๋ฎฌ๋ ์ด์ ํ๋ฉฐ, ์ข ์ข ๋ฉ๋ชจ๋ฆฌ ๋ด ์ข ์์ฑ์ด๋ ๋ชจ์ ์ข ์์ฑ์ ์ฌ์ฉํฉ๋๋ค. ์ด๋ฌํ ํ ์คํธ๋ ์ธ์ฆ ํ๋ฆ, ์์ฒญ ํ์ด๋ก๋ ๋ฐ ์๋ต ํ์์ด ์ฌ๋ฐ๋ฅด๊ฒ ์ ๋ ฌ๋๋์ง ํ์ธํฉ๋๋ค.
์๋ํฌ์๋ ํ ์คํธ๋ ์ต์์ ์์ค์์ ์๋ํ๋ฉฐ ์ฌ๋ฌ ์๋น์ค์ ๊ฑธ์ณ ์ค์ ์ฌ์ฉ์ ์ํฌํ๋ก๋ฅผ ๋ณต์ ํฉ๋๋ค. ์๋๋ ๋๋ฆฌ์ง๋ง, ์จ๋ณด๋ฉ, ์ฒดํฌ์์, ํ์ผ ์ ๋ก๋์ ๊ฐ์ ์๋๋ฆฌ์ค๋ฅผ ์ ์ฒด ์คํ์์ ๊ฒ์ฆํ๋ ๋ฐ ํ์์ ์ ๋๋ค. ๋ฆฌํฉํ ๋ง ์ ๊ฐ ํ ์คํธ ์ค์ํธ๋ ํ๊ท๋ฅผ ๋ฐฉ์งํ๊ณ ๊ฐ๋ฐ์์ ์ ๋ขฐ๋๋ฅผ ๋์ด๋ ๊ฐ๋๋ ์ผ์ ์ ๊ณตํฉ๋๋ค.
๋ถํ ๋ฐ ํผ๋ ํ ์คํธ ์ํ
๋ฆฌํฉํ ๋ง๋ ์๋น์ค๋ ์ ํ์ฑ๋ฟ๋ง ์๋๋ผ ์คํธ๋ ์ค ์ํฉ์์์ ๋ณต์๋ ฅ๋ ํ ์คํธํด์ผ ํฉ๋๋ค. ๋ถํ ํ ์คํธ๋ ์ ์ ํ๊ณ๋ฅผ ๋์ด์ฐ์ ๋ ์๋น์ค๊ฐ ์ด๋ป๊ฒ ๋์ํ๋์ง ๊ฒ์ฌํฉ๋๋ค. ๋ฉ๋ชจ๋ฆฌ ๋์, ์ค๋ ๋ ๊ฒฝํฉ, ํ์ ์ง์ฐ, ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฒฝํฉ๊ณผ ๊ฐ์ ๋ฌธ์ ๋ฅผ ๋๋ฌ๋ ๋๋ค. Locust, Gatling, k6์ ๊ฐ์ ๋๊ตฌ๋ ์์ฒ ๋ช ์ ์ฌ์ฉ์๋ฅผ ์๋ฎฌ๋ ์ด์ ํ๊ณ ์ค์ ํธ๋ํฝ ํจํด์ ์์ฑํ ์ ์์ต๋๋ค.
๊ธฐ์ค ์งํ๋ถํฐ ์์ํ์ธ์. ํ์ฌ ์๋น์ค๊ฐ ์ฒ๋ฆฌํ ์ ์๋ ์ต๋ ์ฒ๋ฆฌ๋์ ์ผ๋ง์ ๋๊น? ์ ์ ๋ฐ ์ต๋ ๋ถํ ์ ์๋ต ์๊ฐ์ ์ผ๋ง์ ๋๊น? ์์คํ ์ ๊ธ์ฆ ํ ์ด๋ป๊ฒ ๋ณต๊ตฌ๋ฉ๋๊น? ์ด์ ์ค๋จ์ ๋ฐฉ์งํ๊ธฐ ์ํด ์ ๋ฌด ์๊ฐ ์ธ ๋๋ ๊ฒฉ๋ฆฌ๋ ํ๊ฒฝ์์ ํ ์คํธ๋ฅผ ์คํํ์ธ์.
์นด์ค์ค ํ ์คํธ๋ ๋ณต์๋ ฅ์ ํ ๋จ๊ณ ๋ ๋ฐ์ ์ํต๋๋ค. ํ๊ฒฝ์ ์ ์ด๋ ์ฅ์ ๋ฅผ ๋์ ํ์ฌ ์๋น์ค์ ์๋ต ๋ฐฉ์์ ํ๊ฐํฉ๋๋ค. ํฌ๋๋ฅผ ๋ฌด์์๋ก ์ข ๋ฃํ๊ฑฐ๋, ์ข ์ ์๋น์ค์ ์ง์ฐ ์๊ฐ์ ์ถ๊ฐํ๊ฑฐ๋, ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๋จ์ ์๋ฎฌ๋ ์ด์ ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ํ ์คํธ๋ ํด๋ฐฑ ๋ก์ง์ ์ทจ์ฝ์ ์ ํ์ ํ๊ณ ํ๋ก ์ฐจ๋จ๊ธฐ ๋๋ ์ฌ์๋๊ฐ ์์๋๋ก ์๋ํ๋์ง ๋ณด์ฌ์ค๋๋ค.
์๋ฅผ ๋ค์ด, Kubernetes ํด๋ฌ์คํฐ์์ ๊ฐ๋จํ ๋ช ๋ น์ ์ฌ์ฉํ์ฌ ํผ๋์ ์๋ฎฌ๋ ์ด์ ํ ์ ์์ต๋๋ค.
bash๋ณต์ฌํธ์งkubectl delete pod user-service-abc123
์ด๋ ์์คํ ์ด ํธ๋ํฝ์ ์ด๋ป๊ฒ ์ฌ๋ผ์ฐํ ํ๊ณ , ๋ถํ๋ฅผ ์ด๋ป๊ฒ ์ฒ๋ฆฌํ๊ณ , ์๋น์ค ๋ ์ง์คํธ๋ฆฌ๋ฅผ ์ ๋ฐ์ดํธํ๋์ง ํ ์คํธํ๋ ์ข ๋ฃ ์ด๋ฒคํธ๋ฅผ ํธ๋ฆฌ๊ฑฐํฉ๋๋ค. ๋ถํ ํ ์คํธ์ ์นด์ค์ค ํ ์คํธ๋ ๋ชจ๋ ๋ง์ดํฌ๋ก์๋น์ค๊ฐ ์ ์ ๊ฒฝ๋ก๋ฟ๋ง ์๋๋ผ ์ค์ ์์ธก ๋ถ๊ฐ๋ฅํ ์ํฉ๋ ์ฒ๋ฆฌํ ์ ์๋์ง ๊ฒ์ฆํ๋ ๋ฐ ํ์์ ์ ๋๋ค.
Canary ๋ฐฐํฌ ๋ฐ ๋กค๋ฐฑ์ ์์ ํ๊ฒ ์ฌ์ฉํ์ธ์
์๋น์ค๊ฐ ์๋ํ, ํตํฉ ๋ฐ ์ฑ๋ฅ ํ ์คํธ๋ฅผ ํต๊ณผํ๋๋ผ๋ ํ๋ก๋์ ํ๊ฒฝ์ ์ ์คํ๊ฒ ๋์ ํด์ผ ํฉ๋๋ค. ๋ฆฌํฉํ ๋ง ๋ณ๊ฒฝ ์ฌํญ์ ์ข ์ข ์ค์ ๊ฒฝ๋ก์ ์ํฅ์ ๋ฏธ์น๋ฉฐ, ์ ์ฒด ์ถ์๋ ๋ถํ์ํ ์ํ์ ์ด๋ํฉ๋๋ค. ๋์ ์นด๋๋ฆฌ์ ๋ฐฐํฌ๋ฅผ ์ฌ์ฉํ์ฌ ์ค์๊ฐ์ผ๋ก ๋์์ ๋ชจ๋ํฐ๋งํ๋ฉด์ ์์์ ์ฌ์ฉ์ ๋๋ ํธ๋ํฝ์ ๋ณ๊ฒฝ ์ฌํญ์ ์ ์ฉํ์ธ์.
์นด๋๋ฆฌ์ ๋ฐฐํฌ๋ฅผ ํตํด ์ค๋ฅ์จ, ์ง์ฐ ์๊ฐ, ์ฌ์ฉ์ ์ฐธ์ฌ๋ ๋ฑ์ ์งํ๋ฅผ ๊ฒ์ฆํ ์ ์์ต๋๋ค. ์ด์ ์งํ๊ฐ ๊ฐ์ง๋๋ฉด ๋ ๋์ ์ฌ์ฉ์์ธต์ ์ํฅ์ ๋ฏธ์น๊ธฐ ์ ์ ๋ณ๊ฒฝ ์ฌํญ์ ์ฆ์ ๋กค๋ฐฑํ ์ ์์ต๋๋ค. ์ค์ ๋ก๋ ์๋น์ค ๋ฉ์ ๋๋ ๋ก๋ ๋ฐธ๋ฐ์ ๊ตฌ์ฑ์ ์ฌ์ฉํ์ฌ ํธ๋ํฝ์ 5%๋ฅผ ์ ๋ฒ์ ์ผ๋ก ๋ผ์ฐํ ํ๋ ๊ฒ์ด ํฌํจ๋ ์ ์์ต๋๋ค.
๋ชจ๋ํฐ๋ง ๋๊ตฌ๋ ๋ฐฐํฌ ํ๋ก์ธ์ค์ ๊ธด๋ฐํ๊ฒ ํตํฉ๋์ด์ผ ํฉ๋๋ค. HTTP 500 ๋น์จ, ์คํจํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฟผ๋ฆฌ, ์๋ต ์๊ฐ ์๊ณ๊ฐ๊ณผ ๊ฐ์ ์ฃผ์ ์งํ์ ๋ํ ์๋ฆผ์ ์ค์ ํ์ธ์. ๋์๋ณด๋๋ฅผ ์ฌ์ฉํ์ฌ ์ด์ ๋ฒ์ ๊ณผ ์ ๋ฒ์ ์ ์งํ๋ฅผ ์ค์๊ฐ์ผ๋ก ๋น๊ตํ์ธ์. ์์ ํ ์นด๋๋ฆฌ์ ๋ฐฐํฌ๋ ๋จ์ํ ๋ ธ์ถ์ ์ ํํ๋ ๊ฒ์ด ์๋๋๋ค. ์กฐ๊ธฐ ๊ฒฝ๊ณ ์ ํธ๋ฅผ ๊ฐ์งํ๊ณ ์กฐ์น๋ฅผ ์ทจํ ์ ์๋ ๊ด์ธก ์ธํ๋ผ๋ฅผ ๊ฐ์ถ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค.
๋กค๋ฐฑ์ ์๋ํ๋๊ณ ์ถฉ๋ถํ ์ฐ์ต๋์ด์ผ ํฉ๋๋ค. ๋ฒ์ ์ด ๊ด๋ฆฌ๋๋ ์ปจํ ์ด๋, GitOps ์ํฌํ๋ก ๋๋ ๋ณ๊ฒฝ ๋ถ๊ฐ๋ฅํ ์ธํ๋ผ๋ฅผ ์ฌ์ฉํ๋ , ๋ณ๊ฒฝ ์ฌํญ ๋กค๋ฐฑ์ ๋ช ์๊ฐ์ด ์๋ ๋ช ๋ถ ์์ ์๋ฃ๋์ด์ผ ํฉ๋๋ค. ์ด ์ต์ข ๊ฒ์ฆ ๋จ๊ณ๋ ๋ฆฌํฉํ ๋ง๋ ์๋น์ค๊ฐ ํ๋ก๋์ ํ๊ฒฝ์์ ์๋ก์ด ํ์ค์ด ๋๊ธฐ ์ ๋ง์ง๋ง ์์ ์ฅ์น์ ๋๋ค.
์ํํ ์ถ์: ํผ๋ ์๋ ์ ํ
๋ฆฌํฉํ ๋ง๋ ๋ง์ดํฌ๋ก์๋น์ค๋ฅผ ๋ผ์ด๋ธ ํ๋ก๋์ ํ๊ฒฝ์ ๋ฐฐํฌํ๋ ๊ฒ์ ์ํคํ ์ฒ ์ด๋ก ๊ณผ ์ด์ ํ์ค์ด ๋ง๋๋ ์ง์ ์ ๋๋ค. ์๋ฌด๋ฆฌ ์ ์ค๊ณ๋ ์๋น์ค ๋ณ๊ฒฝ์ด๋ผ๋ ์ ํ ๊ณผ์ ์ ์ ์คํ๊ฒ ๊ด๋ฆฌํ์ง ์์ผ๋ฉด ์คํจํ ์ ์์ต๋๋ค. ๋ค์ดํ์, ํตํฉ ์คํจ, ๋ฐ์ดํฐ ๋ถ์ผ์น๋ ์ด ๋จ๊ณ์์ ํํ ๋ฐ์ํ๋ ์ํ์ ๋๋ค. ํต์ฌ ์๋น์ค๋ฅผ ๊ต์ฒดํ๊ฑฐ๋ ์ฌ๊ตฌ์ฑํ๋ ๋์์ ์ฌ์ฉ์์๊ฒ ์์คํ ์ ๊ฐ์ฉ์ฑ, ์์ ์ฑ, ๊ทธ๋ฆฌ๊ณ ์ผ๊ด์ฑ์ ์ ์งํ๋ ๊ฒ์ด ๊ณผ์ ์ ๋๋ค. ์ฑ๊ณต์ ์ธ ์ถ์ ์ ๋ต์ ์ ์ง์ ์ธ ๋ง์ด๊ทธ๋ ์ด์ , ์ด์ ๋ฒ์ ๊ณผ์ ํธํ์ฑ, ๊ทธ๋ฆฌ๊ณ ๋ฐฉ์ด์ ํ๋ก๊ทธ๋๋ฐ ๊ธฐ๋ฒ์ ๊ฒฐํฉํฉ๋๋ค. ์ด ์น์ ์์๋ ๋น์ฆ๋์ค ํฌ๋ฆฌํฐ์ปฌ ์์คํ ์ ํ๋ฆ์ ๋ฐฉํดํ์ง ์๊ณ ๊ธฐ์กด ์์คํ ์์ ์๋ก์ด ์์คํ ์ผ๋ก ์ ํํ๋ ๋ฐฉ๋ฒ์ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
์ ์ง์ ์ผ๋ก ์๋น์ค ๋ง์ด๊ทธ๋ ์ด์
๋๊ท๋ชจ ๋ง์ดํฌ๋ก์๋น์ค ๋ณ๊ฒฝ์ ๋จ๊ณ์ ์ผ๋ก ์ ์ฉํด์ผ ํฉ๋๋ค. ๊ธฐ์กด ์๋น์ค๋ฅผ ์๋กญ๊ฒ ๋ฆฌํฉํ ๋ง๋ ์๋น์ค๋ก ๊ต์ฒดํ๋ ๊ฒ์ ๋จ ํ ๋ฒ์ ์ ํ์ผ๋ก ๋๋๋ ๊ฒฝ์ฐ๊ฐ ๊ฑฐ์ ์์ต๋๋ค. ๋์ , ์ ์ง์ ๋ง์ด๊ทธ๋ ์ด์ ๊ธฐ๋ฒ์ ์ฌ์ฉํ๋ฉด ์ํฅ์ ์ต์ํํ๊ณ , ๋์์ ๊ฒ์ฆํ๊ณ , ์ ์ง์ ์ผ๋ก ํผ๋๋ฐฑ์ ์์งํ ์ ์์ต๋๋ค. ๋ชฉํ๋ ์ ํ์ด ์๋ฃ๋ ๋๊น์ง ๊ธฐ์กด ์๋น์ค์ ์ ์๋น์ค๊ฐ ์ผ์์ ์ผ๋ก ๊ณต์กดํ ์ ์๋๋ก ํ๋ ๊ฒ์ ๋๋ค.
ํจ๊ณผ์ ์ธ ๋ฐฉ๋ฒ ์ค ํ๋๋ ์๋์์ ๋๋ค. ์ด ํจํด์์๋ ๋ฆฌํฉํ ๋ง๋ ์๋น์ค๊ฐ ๊ธฐ์กด ์๋น์ค์ ํจ๊ป ์คํ๋ฉ๋๋ค. ์์ ์์ฒญ์ ๋ณต์ ๋์ด ๋ ์๋น์ค ๋ชจ๋๋ก ๋ผ์ฐํ ๋์ง๋ง, ์๋ต์ ์๋ ์๋น์ค์์๋ง ์ฒ๋ฆฌํฉ๋๋ค. ์ ์๋น์ค๋ ์์ฒญ์ ์๋์ผ๋ก ์ฒ๋ฆฌํ๋ฏ๋ก ์ฌ์ฉ์์๊ฒ ์ํฅ์ ์ฃผ์ง ์๊ณ ๋์์ ๊ฒ์ฆํ๊ณ , ๋ก๊ทธ๋ฅผ ๋ชจ๋ํฐ๋งํ๊ณ , ์ฑ๋ฅ์ ๋น๊ตํ ์ ์์ต๋๋ค.
๋ ๋ค๋ฅธ ์ ๊ทผ ๋ฐฉ์์ ๊ธฐ๋ฅ ํ๋๊น ์ ๋๋ค. ์ด ๋ฐฉ์์์๋ ์ ์๋น์ค์์ ์ฒ๋ฆฌํ๋ ํน์ ๊ธฐ๋ฅ์ด ์ผ๋ถ ์ฌ์ฉ์ ๋๋ ๋ด๋ถ ํ์๊ฒ๋ง ํ์ฑํ๋ฉ๋๋ค. ์ด๋ฅผ ํตํด ๋ผ์ด๋ธ ํ ์คํธ ํ๊ฒฝ์ ์ ๊ณตํ๊ณ ์ถ์๋ฅผ ๊ฐ์ ํ๋ ๋์ ๋ ธ์ถ์ ์ ํํ ์ ์์ต๋๋ค. ๊ธฐ๋ฅ ํ ๊ธ์ ์ค์์์ ๊ด๋ฆฌํด์ผ ํ๋ฉฐ, ์ด์ ์งํ๊ฐ ๊ฐ์ง๋๋ฉด ์ฆ์ ๋กค๋ฐฑํ ์ ์์ด์ผ ํฉ๋๋ค.
์ด ์ ์ง์ ๋ง์ด๊ทธ๋ ์ด์ ๋ชจ๋ธ์ ํธ๋ํฝ์ด ๋ง์ ์๋ํฌ์ธํธ, ๋ณต์กํ ์ํฌํ๋ก ๋๋ ๋ฏผ๊ฐํ ๋น์ฆ๋์ค ์ด์์ ์ง์ํ๋ ์๋น์ค์ ํนํ ํจ๊ณผ์ ์ ๋๋ค. ์ฌ์ฉ์๋ฅผ ์ํ์ผ๋ก๋ถํฐ ๋ณดํธํ๋ ๋์์ ์๋ก์ด ๊ตฌํ์ ์ธ๋ถ์ ์ผ๋ก ์กฐ์ ํ ์ ์๋ ์ ์ฐ์ฑ์ ์ ๊ณตํฉ๋๋ค.
๋ผ์ด๋ธ ๋ฆฌํฉํฐ๋ง ์ค ํธํ์ฑ ์ ์ง
์๋ก์ด ์๋น์ค๊ฐ ์ถ์๋จ์ ๋ฐ๋ผ ์ด์ ๋ฒ์ ์์คํ ์ฉ์ผ๋ก ์ค๊ณ๋ ๊ธฐ์กด ํด๋ผ์ด์ธํธ ๋ฐ ์๋น์ค์ ์ํธ ์์ฉํด์ผ ํฉ๋๋ค. ์ ํ ๊ณผ์ ์์ ๊ธฐ๋ฅ ์ค๋จ์ ๋ฐฉ์งํ๊ธฐ ์ํด ํ์ ํธํ์ฑ์ ํ์์ ์ ๋๋ค. ์ด๋ API์ ๋ฐ์ดํฐ ํ์ ๋ชจ๋์ ์ ์ฉ๋ฉ๋๋ค.
API๋ ๋ช
์์ ์ผ๋ก ๋ฒ์ ์ ๊ด๋ฆฌํด์ผ ํฉ๋๋ค. ์๋ํฌ์ธํธ์ ๋ณ๊ฒฝ ์ฌํญ์ ์ ์ฉํ ๋ ๊ธฐ์กด ์์ฒญ ๋๋ ์๋ต ํ์์ ๊ทธ๋๋ก ๋ณ๊ฒฝํ์ง ๋ง์ธ์. ๋์ , ์๋ํฌ์ธํธ์ ์ ๋ฒ์ ์ ๊ฒ์ํ๊ณ ํด๋ผ์ด์ธํธ๊ฐ ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ์ตํธ์ธํ ์ ์๋๋ก ํ์ธ์. ์๋ฅผ ๋ค์ด, /v2/orders ํจ๊ป /v1/orders ๊ทธ๋ฆฌ๊ณ ์๋น์๋ค์ ํตํฉ์ ์
๋ฐ์ดํธํ๋ฉด์ ์ ์ง์ ์ผ๋ก ์ด์ ํฉ๋๋ค.
๋ฉ์์ง์ ์ด๋ฒคํธ๋ ๋ฒ์ ์ธ์ ๊ธฐ๋ฅ์ ๊ฐ์ถฐ์ผ ํฉ๋๋ค. ์ด๋ฒคํธ ๊ธฐ๋ฐ ์ํคํ ์ฒ์์ ๊ฒ์์๋ ์ด๋ฒคํธ ํ์ด๋ก๋์ ์ค๋ํ ๋ณ๊ฒฝ์ ๊ฐํด์๋ ์ ๋ฉ๋๋ค. ์ ํ๋๋ฅผ ๋น-์ค๋จ ๋ฐฉ์์ผ๋ก ์ถ๊ฐํ๊ฑฐ๋ ์์ ํ ์๋ก์ด ์ด๋ฒคํธ ์ ํ์ ๊ฒ์ํด์ผ ํฉ๋๋ค. ์๋น์๋ ์ ์ ์๋ ํ๋๋ฅผ ๋ฌด์ํ๊ณ ๋ ์ด์ ์ง์๋์ง ์๋ ํ๋๋ฅผ ์ํํ๊ฒ ์ฒ๋ฆฌํ๋๋ก ์ค๊ณ๋์ด์ผ ํฉ๋๋ค.
์ฝ๋ ์์ค์์๋ ๊ธฐ์กด ์ธํฐํ์ด์ค์ ์ ์ธํฐํ์ด์ค ๊ฐ์ ์ด๋ํฐ ๋๋ ๋ณํ๊ธฐ๋ฅผ ์ฌ์ฉํ์ฌ ํธํ์ฑ์ ์ ์งํ์ธ์. ์๋ฅผ ๋ค์ด, ํธํ์ฑ ๊ณ์ธต์ ๊ธฐ์กด ๋ฐ์ดํฐ ๋ชจ๋ธ๊ณผ ์๋ก์ด ๋๋ฉ์ธ๋ณ ํํ ๋ฐฉ์ ๊ฐ์ ๋ณํ์ ์ง์ํ ์ ์์ต๋๋ค. ์ด๋ฅผ ํตํด ๋ด๋ถ ์ฝ๋๊ฐ ๋ณ๊ฒฝ ์ฌํญ์ ์กฐ๊ธฐ์ ๋ ธ์ถํ์ง ์๊ณ ๋ ๋ฐ์ ํ ์ ์์ต๋๋ค.
ํธํ์ฑ์ ๋ณด์ฅํ๋ ๊ฒ์ ๋จ์ํ ์ถฉ๋์ ๋ฐฉ์งํ๋ ๊ฒ๋ง์ด ์๋๋๋ค. ์๋น์ค ๊ฐ์ ๊ณ์ฝ์ ๋ณดํธํ๊ณ ์ดํด๊ด๊ณ์ ๊ฐ์ ์ ๋ขฐ๋ฅผ ๊ตฌ์ถํฉ๋๋ค. ํ์ ๊ฐ์์ค๋ฌ์ด ํ๊ท์ ๋ํ ๋๋ ค์ ์์ด ๊ฐ์์ ์๋์ ๋ง์ถฐ ์๋ก์ด ๋์์ธ์ ์ฑํํ ์ ์์ต๋๋ค.
์ผ์์ ์ผ๋ก ์ญ๋ฐฉํฅ ์ธํฐํ์ด์ค ์ ์ง
๋ง์ดํฌ๋ก์๋น์ค ๋ฆฌํฉํ ๋ง ์ค์ ๊ธฐ์กด ํด๋ผ์ด์ธํธ๋ ๋ค์ด์คํธ๋ฆผ ์์คํ ์ ๋ฆฌํฉํ ๋ง๋ ๋์์ธ๊ณผ ๋ ์ด์ ์ผ์นํ์ง ์๋ ๋ ๊ฑฐ์ ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์ฆ๊ฐ์ ์ธ ์ฌ์์ฑ์ ๊ฐ์ ํ๋ ๋์ , ์ด๋ํฐ, ํ์ฌ๋ ๋๋ ํธํ์ฑ ๋ํผ๋ฅผ ํตํด ์ด๋ฌํ ์ธํฐํ์ด์ค๋ฅผ ์ผ์์ ์ผ๋ก ์ ์ง ๊ด๋ฆฌํ์ธ์.
์๋ฅผ ๋ค์ด, ๋ ๊ฑฐ์ ์์คํ ์ด ํํํ๋ ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ฅผ ๋ ธ์ถํ๋ API์ ์์กดํ๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค. ๋ฆฌํฉํ ๋ง ํ ์ ์์คํ ์ ํด๋น ๋ฐ์ดํฐ๋ฅผ ๊ณ์ธต์ ์ผ๋ก ํํํ ์ ์์ต๋๋ค. ๋ชจ๋ ํด๋ผ์ด์ธํธ ์์คํ ์ ๋ค์ ์์ฑํ๋ ๋์ , ๊ธฐ์กด API๋ฅผ ์๋ก์ด ๋ด๋ถ API๋ฅผ ํธ์ถํ๊ณ ๋ ๊ฑฐ์ ํ์์ ๋ง๊ฒ ์๋ต์ ์ฌ๊ตฌ์ฑํ๋ ์์ ๋ณํ ๊ณ์ธต์ผ๋ก ๋ ธ์ถํฉ๋๋ค.
์ด ํธํ์ฑ ๊ณ์ธต์ ์ฌ์ฉํ๋ฉด ํด๋ผ์ด์ธํธ๊ฐ ์ ๋ฐ์ดํธํ๋ ๋ฐ ํ์ํ ์๊ฐ์ ํ๋ณดํ๋ ๋์์ ๋ด๋ถ์ ์ผ๋ก ์๋ก์ด ํ์ค์ ๋์ ํ ์ ์์ต๋๋ค. ๋ํ, ํฅํ ์ง์ ์ค๋จ๋ ์์ญ์ ๋ถ๋ฆฌํ์ฌ ๋ง์ด๊ทธ๋ ์ด์ ๊ณํ์ ๊ฐ์ํํฉ๋๋ค. ์ด๋ฌํ ๋ ๊ฑฐ์ ์๋ํฌ์ธํธ์ ํ๊ทธ๋ฅผ ์ง์ ํ๊ณ ๋ฌธ์ํํ์ฌ ๋ชจ๋ ์ข ์์ฑ์ด ์ ํ๋๋ฉด ์ ๊ฑฐ๋๋๋ก ๋ช ํํ๊ฒ ํ์ํด์ผ ํฉ๋๋ค.
์ด์ ๋ฒ์ ์ ์ธํฐํ์ด์ค๋ฅผ ์ ์งํ๋ ๊ฒ์ ์ฅ๊ธฐ์ ์ธ ์ ๋ต์ ์๋์ง๋ง, ๋จ๊ณ์ ์ถ์์ ์ค์ํ ๋ถ๋ถ์ ๋๋ค. ์ด๋ ๊ธฐ์กด ์ธํฐํ์ด์ค์ ์ ๊ท ์ธํฐํ์ด์ค ์ฌ์ด์ ์์ถฉ ์ญํ ์ ํ์ฌ ์กฐ๊ธฐ ํ์์ ๋ฐฉ์งํ๊ณ , ์กฐ์ง์ด ํ์ ์์ ์ ํผ๋์ ์ด๋ํ์ง ์๊ณ ๋ฆฌํฉํ ๋งํ ์ ์๋๋ก ํฉ๋๋ค.
์์ํ ์ต์ ํํ๊ธฐ: ๋ฆฌํฉํ ๋ง ์ดํ ๋ชจ๋ฒ ์ฌ๋ก
๋ง์ดํฌ๋ก์๋น์ค ๋ฆฌํฉํ ๋ง์ ์๋ฃํ๋ ๊ฒ์ ์ฌ์ ์ ๋์ด ์๋๋ผ, ๋์ฑ ์ง์ ๊ฐ๋ฅํ๊ณ ๋ฐ์์ฑ์ด ๋ฐ์ด๋ ์ํคํ ์ฒ์ ์์์ ๋๋ค. ๊ฐ๋ ฅํ ๋ฆฌํฉํ ๋ง ์ดํ ์คํ ๋ฐฉ์์ด ์๋ค๋ฉด ์๋ฌด๋ฆฌ ์ธ๋ จ๋ ๋ฆฌ๋์์ธ์ด๋ผ๋ ์ผ๊ด์ฑ๊ณผ ๋นํจ์จ์ฑ์ ๊ทธ๋ฌผ๋ง์ผ๋ก ์ ๋ฝํ ์ ์์ต๋๋ค. ์ฅ๊ธฐ์ ์ธ ์ฑ๊ณต์ ์๋ก์ด ๊ฒฝ๊ณ๋ฅผ ๊ฐํํ๊ณ , ์ง์์ ์ธ ํผ๋๋ฐฑ์ ์์งํ๋ฉฐ, ์ํคํ ์ฒ์ ๊ฑด์ ์ฑ์ ์ผ์ ์ด์์ ํตํฉํ๋ ๋ฐ ๋ฌ๋ ค ์์ต๋๋ค. ๋ฆฌํฉํ ๋ง๋ ์์คํ ์ ์ง์ํ๋ ๋น์ฆ๋์ค๋งํผ ๋น ๋ฅด๊ฒ ์งํํด์ผ ํฉ๋๋ค. ์ด ์น์ ์์๋ ์ํคํ ์ฒ๋ฅผ ์ด๊ธฐ ๊ตฌ์ถ ์ดํ๊น์ง ๋ณดํธ, ์ ์ง ๋ฐ ์ต์ ํํ๋ ๋ฐฉ๋ฒ์ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
์ง์์ ์ธ ๋ชจ๋ํฐ๋ง ๋ฐ ์ ์
๋ฆฌํฉํ ๋ง๋ ์์คํ ์ด ์ด์ ํ๊ฒฝ์ ๋์ ๋๋ฉด, ์ฑ๋ฅ๊ณผ ์์ ์ฑ์ด ๊ธฐ๋์น๋ฅผ ์ถฉ์กฑํ๋์ง ํ์ธํ๊ธฐ ์ํด ์ง์์ ์ธ ๋ชจ๋ํฐ๋ง์ด ํ์์ ์ ๋๋ค. ์ด๋ ๋จ์ํ ๊ธฐ์ ์ ์ธ ๊ฐ๋ ์๊ฐ๋ง์ ์๋ฏธํ๋ ๊ฒ์ด ์๋๋๋ค. ํจํด์ ๊ด์ฐฐํ๊ณ , ์ด์ ์งํ๋ฅผ ๊ฐ์งํ๊ณ , ์ค์ ํ๊ฒฝ์์ ์๋น์ค๊ฐ ์ํํ๊ฒ ์๋ํ๋์ง ๊ฒ์ฆํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ์ฃผ์ ์งํ์๋ ์ง์ฐ ์๊ฐ, ์ค๋ฅ์จ, ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋, ์์ฒญ ์ฒ๋ฆฌ๋ ๋ฑ์ด ํฌํจ๋๋ฉฐ, ์ด๋ ์๋น์ค ๋ฐ ์ด์๋ณ๋ก ์ธ๋ถํ๋ฉ๋๋ค.
ํ์ง๋ง ๋จ์ํ ์งํ๋ง์ผ๋ก๋ ์ถฉ๋ถํ์ง ์์ต๋๋ค. ๊ฑฐ๋ ์ฑ๊ณต๋ฅ , ์ฌ์ฉ์ ์ฐธ์ฌ๋, ๊ธฐ๋ฅ ๋์ ๋ฅ ๊ณผ ๊ฐ์ ๋น์ฆ๋์ค ์์ค ์งํ๋ ์ถ์ ํด์ผ ํฉ๋๋ค. ์ด๋ฌํ ์งํ๋ ์ํคํ ์ฒ ๋ณ๊ฒฝ์ด ์ค์ ๊ฒฐ๊ณผ์ ์ด๋ค ์ํฅ์ ๋ฏธ์น๋์ง์ ๋ํ ํต์ฐฐ๋ ฅ์ ์ ๊ณตํฉ๋๋ค. ์๋ฅผ ๋ค์ด, ๋ฆฌํฉํ ๋ง๋ ๊ฒฐ์ ํ๋ฆ์ด API ์ง์ฐ ์๊ฐ์ ๊ฐ์ ํ์ง๋ง ์ ํ์จ์ ๋จ์ด๋จ๋ฆฐ๋ค๋ฉด ์ค๊ณ์์ ์ด๋ค ๋ถ๋ถ์ ์ฌ๊ฒํ ํด์ผ ํ ์๋ ์์ต๋๋ค.
์๋น์ค ์์ค ๋ชฉํ(SLO)์ ์๋ฆผ ์๊ณ๊ฐ์ ๊ด์ฐฐ ํ๋ ์์ํฌ์ ํตํฉํ์ธ์. ๋์๋ณด๋๋ ์์ง๋์ด๋ง ๋ฐ ๋น์ฆ๋์ค ์ดํด๊ด๊ณ์ ๋ชจ๋๋ฅผ ์ํด ํ๋ ์ด์ ๋์ด ์์คํ ์ํ์ ๋ํ ๊ณต์ ๋ ๋ทฐ๋ฅผ ์ ๊ณตํด์ผ ํฉ๋๋ค. ์ถ์ ๋ฐ ๋ก๊ทธ๋ ์ผ๊ด์ฑ์ ์ ์งํด์ผ ํ๋ฉฐ, ์๊ด๊ด๊ณ ID๋ฅผ ํตํด ์๋น์ค ๊ฐ ์ฌ์ฉ์ ์ฌ์ ์ ์ฐ๊ฒฐํด์ผ ํฉ๋๋ค. ๋ชฉํ๋ ๋จ์ํ ๋ฌธ์ ์ ๋์ํ๋ ๊ฒ๋ฟ๋ง ์๋๋ผ ์ฌ์ ์๋ฐฉ์ ์ต์ ํ ๊ธฐํ๋ฅผ ํ์ ํ๋ ๊ฒ์ ๋๋ค.
์ง์์ ์ธ ๋ชจ๋ํฐ๋ง์ ๋ฐ๋ณต์ ์ธ ๊ฐ์ ์ ์ด์งํ๋ ํผ๋๋ฐฑ ๋ฃจํ๋ฅผ ์์ฑํฉ๋๋ค. ์ ๊ธฐ์ ์ธ ์คํ๋ฆฐํธ ๋ฐ ๊ณํ ์ธ์ ์ ํตํฉ๋๋ฉด ์ด ๋ฐ์ดํฐ๋ ์์คํ ์ ์ด๋ค ๋ถ๋ถ์ ๋์ฑ ๊ฐ์ ํ๊ฑฐ๋ ๋จ์ํํด์ผ ํ๋์ง ํ์ ํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
๋ชจ๋์ ์ฌ๊ณ ๋ฌธํ ์ก์ฑ
ํ ๋ฌธํ๊ฐ ๋ณํ์ง ์์ผ๋ฉด ์๋ฌด๋ฆฌ ํ๋ฅญํ ๋ฆฌํฉํ ๋ง ๋ ธ๋ ฅ์ด๋ผ๋ ์๋ฐ๊ฐ์ ๋ฌด๋์ง ์ ์์ต๋๋ค. ๋ชจ๋์ ๋ง์ดํฌ๋ก์๋น์ค ์ํคํ ์ฒ๋ฅผ ์ ์งํ๋ ค๋ฉด ๊ฐ๋ฐํ์ ์ ์ด์ ๋ฆฌํฉํ ๋ง์ ํจ๊ณผ์ ์ผ๋ก ๋ง๋ค์ด์ค ์์น๋ค์ ์ฒด๋ํด์ผ ํฉ๋๋ค. ์ฌ๊ธฐ์๋ ์ฑ ์ ์์ฌ์ ๋ช ํ์ฑ, ์๋น์ค ๊ฒฝ๊ณ์ ์กด์ค, ๊ทธ๋ฆฌ๊ณ ๋๋ฉ์ธ ๊ฐ ์๊ฒฉํ ์กฐ์จ์ด ํฌํจ๋ฉ๋๋ค.
๊ฐ ํ์ ์๋น์ค์ ๊ด๋ฆฌ์ ์ญํ ์ ํด์ผ ํฉ๋๋ค. ์ฆ, ๋ช ํํ API๋ฅผ ์ ์งํ๊ณ , ํฌ๊ด์ ์ธ ๋ฌธ์๋ฅผ ์์ฑํ๋ฉฐ, ์ธํฐํ์ด์ค๋ฅผ ๊ณต๊ฐ ๊ณ์ฝ์ฒ๋ผ ์ทจ๊ธํด์ผ ํฉ๋๋ค. ๋ํ ์ข ์์ฑ์ ๋ํด ๋นํ์ ์ผ๋ก ์๊ฐํ๋ ๊ฒ๋ ํฌํจ๋ฉ๋๋ค. ์๋น์ค๊ฐ ๋ค๋ฅธ ์๋น์ค๋ฅผ ํธ์ถํด์ผ ํ ๋๋ง๋ค ๊ฐ๋ฐ์๋ ํด๋น ๊ด๊ณ๊ฐ ํ์ํ์ง, ์๋๋ฉด ์ด๋ฒคํธ ๋๋ ๊ณต์ ์ถ์ํ๋ฅผ ํตํด ์ฒ๋ฆฌํ ์ ์๋์ง ์๋ฌธํด์ผ ํฉ๋๋ค.
์๋น์ค ๊ฒํ ์ ์ํคํ ์ฒ ํ๊ณ ๋ ํ์ค ๊ดํ์ด ๋์ด์ผ ํฉ๋๋ค. ์ด๋ฌํ ํ์๋ ์๊ณ์ง์๋ ๊ฐ๋ ์ ๊ดํ ๊ฒ์ด ์๋๋๋ค. ๊ฐ๋ฑ ์์๋ฅผ ํ์ ํ๊ณ , ๊ฒฝ๊ณ ์๋ฐ ์ฌํญ์ ๋ ผ์ํ๋ฉฐ, ์ข์ ๋์์ธ์ ๊ฐํํ๋ ํ๋ ฅ์ ์ธ ๊ธฐํ์ ๋๋ค. ๊น๋ํ ๋ฆฌํฉํฐ๋ง๊ณผ ์ ๊ทน์ ์ธ ๋์์ธ ์ฌ๊ณ ์ ๋ํ ๋ณด์์ ํ์ ์ฌ๊ณ ๋ฐฉ์์ ์๋ฐฉ ํ๋์์ ์ฅ์ธ ์ ์ ์ผ๋ก ์ ํํ ์ ์๋๋ก ํฉ๋๋ค.
๋ชจ๋์ ์ฌ๊ณ ๋ ์ฝ๋ ๊ทธ ์ด์์ผ๋ก ํ์ฅ๋์ด์ผ ํฉ๋๋ค. ์ธํ๋ผ, ๋ฐ์ดํฐ ํ์ดํ๋ผ์ธ, ๋ฐฐํฌ ํ๋ฆ์ ๋ชจ๋ ์์จ์ฑ์ ์กด์คํ๊ณ ๊ธด๋ฐํ ๊ฒฐํฉ์ ํผํ๋๋ก ๊ตฌ์กฐํ๋์ด์ผ ํฉ๋๋ค. ์ด๋ฌํ ์ต๊ด์ ์ ๋ํํจ์ผ๋ก์จ ์กฐ์ง์ ๋ฆฌํฉํ ๋ง์ ๋ํ ํฌ์๋ฅผ ๋ณด์กดํ๊ณ ์ง์์ ์ธ ์ฑ์ฅ์ ๊ธฐ๋ฐ์ ๊ตฌ์ถํ ์ ์์ต๋๋ค.
๋ชจ๋ ๋จ๊ณ์ ๋ํ ํ๊ณ ์ ๊ฒํ
๋ฆฌํฉํ ๋ง์์ ๋ฐฐ์ฐ๋ ๊ฐ์ฅ ํจ๊ณผ์ ์ธ ๋ฐฉ๋ฒ ์ค ํ๋๋ ์ฝ๋ ๋ณ๊ฒฝ๋ฟ ์๋๋ผ ๊ฒฐ์ ์ฌํญ, ์์ถฉ ๊ด๊ณ, ๊ทธ๋ฆฌ๊ณ ๊ฒฐ๊ณผ๊น์ง ๋ฌธ์ํํ๋ ๊ฒ์ ๋๋ค. ์ฌํ ๋ถ์์ ์ข ์ข ์ฅ์ ๋ฐ์ ์์๋ง ์ค์ํ์ง๋ง, ๋ชจ๋ ์ฃผ์ ๋ฆฌํฉํ ๋ง ๋จ๊ณ์ ํ๊ณ ๋ถ์(retrospective)์ ์ ์ฉํด์ผ ํฉ๋๋ค. ์ด๋ฌํ ์ธ์ ์ ํตํด ์ ๋์ ์ง์์ด ํ์ฑ๋๊ณ ํฅํ ํ๋ก์ ํธ๊ฐ ๋ช ํํด์ง๋ ๊ฒ์ ๋๋ค.
์ข์ ํ๊ณ ์๋ ๊ฐ๋ฐ์, ์ค๊ณ์, ์ ํ ์์ ์, ์ด์์ง์ ์๊ฒฌ์ด ํฌํจ๋ฉ๋๋ค. ๊ณํํ๋ ๊ฒ๊ณผ ์ค์ ๋ก ์งํ๋ ๊ฒ์ ๋น๊ต ๊ฒํ ํ๋ ๊ฒ๋ถํฐ ์์ํ์ธ์. ๋ฌด์์ด ์์กฐ๋กญ๊ฒ ์งํ๋์๋์? ์์๋ณด๋ค ์ค๋ ๊ฑธ๋ฆฐ ๋ถ๋ถ์ ๋ฌด์์ธ๊ฐ์? ์์์น ๋ชปํ ํ๊ธ ํจ๊ณผ๋ ์์๋์? ์ ํ ๊ณผ์ ์์์ผ ๋๋ฌ๋ ์ํคํ ์ฒ์์ ์ฝ์ ์ ์งํ๋ ์์๋์?
์ด๋ฌํ ๋ ผ์๋ฅผ ํตํด ๊ด์ฐฐ ๊ฐ๋ฅ์ฑ ๋ถ์กฑ, ๋ฎ์ ํ ์คํธ ์ปค๋ฒ๋ฆฌ์ง, ์์์น ๋ชปํ ์๋น์ค ๊ฐ ์ข ์์ฑ๊ณผ ๊ฐ์ ๋ฐ๋ณต์ ์ธ ๋ฌธ์ ๊ฐ ๋๋ฌ๋๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ํ์ ํจ์ผ๋ก์จ ํ์ ํ๋ก์ธ์ค์ ํด์ ๋ชจ๋ ๊ฐ์ ํ ์ ์์ต๋๋ค. ๋ํ ํ๊ณ ๋ฅผ ํตํด ํ ๊ฐ ๊ณต์ ๊ฐ๋ฅํ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ๋์ถํ์ฌ ๋ ๋์ ์ํคํ ์ฒ ์ ๋ฐ์ ๊ฑธ์ณ ์ผ๊ด๋ ํจํด์ ๊ตฌ์ถํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
ํ๊ณ ๋ฅผ ํตํด ์์ฑ๋ ๋ฌธ์๋ ๋ฒ์ ๊ด๋ฆฌ ์ ์ฅ์์ ์ ์ฅํ๊ณ ์ฝ๊ฒ ์ ๊ทผํ ์ ์์ด์ผ ํฉ๋๋ค. ๋ค์ด์ด๊ทธ๋จ, ์์ฌ ๊ฒฐ์ ๋ก๊ทธ, ๋ง์ด๊ทธ๋ ์ด์ ๊ฐ์ด๋๋ ํ์ฌ ํ๋ฟ๋ง ์๋๋ผ ํฅํ ์ฑ์ฉ ๋ฐ ํ๋ก์ ํธ์๋ ๋งค์ฐ ์ค์ํฉ๋๋ค. ์ฑ๊ณต์ ์ธ ๋ง์ดํฌ๋ก์๋น์ค ๋ฆฌํฉํ ๋ง์ ํตํด ์ป์ ํต์ฐฐ๋ ฅ์ ๊ฒฐ์ฝ ์์คํ๊ฒ ์ฌ๊ฒจ์ ธ์๋ ์ ๋ฉ๋๋ค. ์ด๋ ๋ค์ ์ํคํ ์ฒ ์งํ์ ๊ธฐ๋ฐ์ด ๋ ๊ฒ์ ๋๋ค.
ํจ์ ๋ฌธ์ ํผํ์ธ์: ํํ ์์ด ๋ฆฌํฉํ ๋งํ์ธ์
์ฒ ์ ํ ๊ณํ๊ณผ ์คํ์๋ ๋ถ๊ตฌํ๊ณ , ๋ง์ดํฌ๋ก์๋น์ค ๋ฆฌํฉํ ๋ง์ ๊ฐ๋น์ผ ์ค์๋ฅผ ์ ์ง๋ฅผ ์ํ์ ์๊ณ ์์ต๋๋ค. ์ด๋ฌํ ์คํจ๋ ์ ์๋ ๋ถ์กฑํ ๊ธฐ์ ๋ก ์ธํด ๋ฐ์ํ๋ ๊ฒฝ์ฐ๊ฐ ๊ฑฐ์ ์์ต๋๋ค. ์คํ๋ ค ์๋ชป๋ ๊ฐ์ , ์ผ๊ด์ฑ ๋ถ์กฑ, ๊ทธ๋ฆฌ๊ณ ์๋ชป๋ ์์ถฉ ๊ด๊ณ์์ ๋น๋กฏ๋ฉ๋๋ค. ๋น์ฆ๋์ค ๋งฅ๋ฝ ์์ด ๊ธฐ์ ์ ์ผ๋ง๋ง ์ถ๊ตฌํ๋ฉด ๊ณผ๋ํ ์์ง๋์ด๋ง์ผ๋ก ์ด์ด์ง ์ ์์ผ๋ฉฐ, ํผ์์ ์ธ ํด๊ฒฐ์ฑ ์ผ๋ก๋ ์์คํ ์ ์ธ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ง ๋ชปํ ์ ์์ต๋๋ค. ๋ฆฌํฉํ ๋ง์ ๋ง๋ฒ์ ์งํก์ด๊ฐ ์๋๋๋ค. ๊ฒธ์, ์๊ฒฉํจ, ๊ทธ๋ฆฌ๊ณ ์ํคํ ์ฒ ํ๊ฒฝ์ ๋ํ ๋ช ํํ ์ดํด๋ฅผ ๋ฐํ์ผ๋ก ํค์ณ๋๊ฐ์ผ ํ๋ ๋ณต์กํ ๋ณํ์ ๋๋ค. ์ด ์น์ ์์๋ ๊ฐ์ฅ ํํ ํจ์ ๋ฌธ(trapdoor)์ ๋ถ์ํ๊ณ ํจ์ ์ ๋น ์ง์ง ์๋ ๋ฐฉ๋ฒ์ ์ดํด๋ด ๋๋ค.
์กฐ๊ธฐ ์ต์ ํ์ ์ฃผ์ํ์ธ์
๋ง์ดํฌ๋ก์๋น์ค ๋ฆฌํฉํ ๋ง์์ ๊ฐ์ฅ ํํ ํจ์ ์ค ํ๋๋ ๋ชจ๋ ๊ฒ์ ํ๊บผ๋ฒ์ ์ต์ ํํ๋ ค๋ ์ถฉ๋์ ๋๋ค. ๊ฐ๋ฐ์๋ ์ข ์ข ๋นํจ์จ์ฑ์ด๋ ์ค๋ณต์ ๋ฐ๊ฒฌํ๊ณ , ํ์ฌ ์์คํ ๋ฌธ์ ๊ฐ ์๋ ๋ถ๋ถ์์๋ ์ฆ์ ์์ ํ๋ ค๊ณ ํฉ๋๋ค. ์ด๋ ๋ ธ๋ ฅ ๋ญ๋น, ๋ฒ์ ํ์ฅ, ๊ทธ๋ฆฌ๊ณ ์๋์น ์์ ํ๊ท๋ก ์ด์ด์ง๋๋ค. ์ค์ํ์ง ์์ ๊ฒฝ๋ก๋ฅผ ์ต์ ํํ๋ฉด ์ธก์ ๊ฐ๋ฅํ ํจ๊ณผ๋ ์์ง๋ง ๋ณต์ก์ฑ๋ง ์ฆ๊ฐํ๊ฒ ๋ฉ๋๋ค.
์ํคํ ์ฒ์ ์๋ฒฝํจ์ ์ถ๊ตฌํ๋ ๋์ , ๊ฐ์ฅ ์ค์ํ ๋ถ๋ถ์ ์ง์คํ์ธ์. ๋น์ฆ๋์ค ๋ชฉํ๋ฅผ ์ง์ ์ ์ผ๋ก ์ง์ํ๊ฑฐ๋ ์ฃผ์ ์ํฌํ๋ก์ ๋ณ๋ชฉ ํ์์ ์ ๊ฑฐํ๋ ๋ฆฌํฉํ ๋ง ์์ ์ ์ฐ์ ์์๋ฅผ ์ ํ์ธ์. ๋ถํ๋ก ์ธํด ์ฅ์ ๊ฐ ๋ฐ์ํ๋ ๊ฒฐ์ ์๋น์ค๋ ์์ ์ ์ผ๋ก ์ฌ์ฉ๋๋ ๋ด๋ถ ๊ด๋ฆฌ ๋๊ตฌ๋ณด๋ค ๋ ๋ง์ ๊ด์ฌ์ ๊ธฐ์ธ์ฌ์ผ ํฉ๋๋ค. ์ด๋ก ์ ๊ณ ๋ ค ์ฌํญ์ด ์๋ ์งํ์ ์ด์ ๋ฐ์ดํฐ๋ฅผ ํ์ฉํ์ฌ ์์ฌ ๊ฒฐ์ ์ ๋ด๋ฆฌ์ธ์.
์ฑ๊ธํ ์ต์ ํ๋ ๊ณผ๋ํ ๊ตฌํํ๋ก ์ด์ด์ง๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์ฐ์ํด ๋ณด์ธ๋ค๋ ์ด์ ๋ก ์๋น์ค๋ฅผ ์ด ๊ฐ์ ๋ง์ดํฌ๋ก์๋น์ค๋ก ๋๋๋ ๊ฒ๊ณผ, ๋๋ฉ์ธ์ด ์ ์ดํด๋๊ณ ๋ ๋ฆฝ์ ์ผ๋ก ์งํํ๊ณ ์๋ค๋ ์ด์ ๋ก ๊ทธ๋ ๊ฒ ํ๋ ๊ฒ์ ๋ค๋ฆ ๋๋ค. ์ธ๋ถ์ฑ์ ํ์์ ์ํด ์ป์ด์ ธ์ผ ํ๋ฉฐ, ์ฌ์ฉ ํจํด์ ํตํด ๊ฒ์ฆ๋์ด์ผ ํฉ๋๋ค. ๋์์ด ๊ฐ์ ํ๋ ค๋ ์ ํน์ ๋ฟ๋ฆฌ์น์ธ์. ์์ ์ฑ๊ณผ ๋ช ํ์ฑ์ ์ถ์์ ์ธ ์ฐ์ํจ๋ณด๋ค ๋ ํฐ ๊ฐ์น๋ฅผ ์ ๊ณตํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค.
๋๋ฉ์ธ ๊ฒฝ๊ณ๋ฅผ ๋์น์ง ๋ง์ธ์
ํ์ด ์๋น์ค๋ฅผ ๋ฆฌํฉํ ๋งํ ๋, ํนํ ๋ง๊ฐ์ผ์ด ๋น ๋ฏํ ์ํฉ์์๋ ๋๋ฉ์ธ ๋ก์ง์ด ์์๋๊ธฐ ์ฝ์ต๋๋ค. ์ด๋ก ์ธํด ๊ธฐ์ ์ ์ผ๋ก ๋ถ๋ฆฌ๋์์ง๋ง ๊ธฐ๋ฅ์ ์ผ๋ก๋ ์ฌ์ ํ ์ฝํ ๋ง์ดํฌ๋ก์๋น์ค๊ฐ ์์ฑ๋ฉ๋๋ค. ์๋น์ค ๊ฐ ์ฑ ์์ ๊ณต์ ํ๊ฑฐ๋, ๋ฐ์ดํฐ ์ ๊ทผ ๋ฐฉ์์ด ์ค๋ณต๋๊ฑฐ๋, ์ ์ฌํ ๋ก์ง์ ๋ค๋ฅธ ์ด๋ฆ์ผ๋ก ๋ค์ ๊ตฌํํ๋ ๊ฒฝ์ฐ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก ์ค๋ณต, ๋ถ์ผ์น, ๊ทธ๋ฆฌ๊ณ ์ด์ ์ค๋ฒํค๋๊ฐ ๋ฐ์ํฉ๋๋ค.
์ด๋ฅผ ๋ฐฉ์งํ๋ ค๋ฉด ๋ชจ๋ ๋ฆฌํฉํ ๋ง์ ๋๋ฉ์ธ ๊ฒฝ๊ณ์ ๋ํ ์ฌ์ธต์ ์ธ ์ดํด๋ฅผ ๋ฐํ์ผ๋ก ํด์ผ ํฉ๋๋ค. ์ด๋ฌํ ๊ฒฝ๊ณ๋ ๋จ์ํ ๋ฐ์ดํฐ๋ API์ ๋ํ ๊ฒ์ด ์๋๋ผ, ์๋ก ๋ค๋ฅธ ๋น์ฆ๋์ค ์ญ๋ ์์ญ์ ๋ํ๋ ๋๋ค. ์ฌ๊ณ ๋ก์ง๊ณผ ์ดํ ์ฒ๋ฆฌ๋ฅผ ํผํฉํ๋ ์๋น์ค๋ ์ฝ๋๊ฐ ์ฌ๋ฌ ํด๋๋ ์ปจํ ์ด๋์ ๋ถ์ฐ๋์ด ์๋๋ผ๋ ์ ํ๋ ์ปจํ ์คํธ ์์น์ ์๋ฐํฉ๋๋ค.
๋๋ฉ์ธ ์ ๋ฌธ๊ฐ ๋ฐ ์ ํ ์์ ์์์ ํ์ ์ ์ ํํ ๊ฒฝ๊ณ๋ฅผ ์ค์ ํ๋ ๋ฐ ์ค์ํฉ๋๋ค. ๋๋ฉ์ธ ๋ชจ๋ธ๋ง ์ฐ์ต, ์ด๋ฒคํธ ์คํ ๋ฐ ์ํฌ์, ๋๋ ์ดํด๊ด๊ณ์์์ ํ์ดํธ๋ณด๋ ์ธ์ ์ ํตํด ์ด๋ค ์ฑ ์์ด ์ด๋์ ์ํ๋์ง ๋ช ํํ ํ ์ ์์ต๋๋ค. ์๋น์ค๋ ์ง์ค๋ ฅ ์๊ณ , ์บก์ํ๋์ด ์์ผ๋ฉฐ, ๋ชฉ์ ์งํฅ์ ์ด์ด์ผ ํฉ๋๋ค. ๋ชฉํ๋ ๋จ์ํ ๋ถํด๊ฐ ์๋๋ผ ์์ง๋ ฅ์ ๋๋ค. ์๋น์ค๋ ์ค๋ณต์ ์ต์ํํ๋ฉด์ ๋จ์ผํ๊ณ ์์ ์ ์ธ ๋น์ฆ๋์ค ๊ฐ๋ ์ ๋ํ๋ด์ผ ํฉ๋๋ค.
ํ ๋ถ์ผ์น ๋ฐ ์๋์ฐ ๋ฆฌํฉํฐ๋ง ๋ฐฉ์ง
๋๊ท๋ชจ ์กฐ์ง์์ ๊ฐ์ฅ ์ํํ ๋ฆฌํฉํ ๋ง ์คํจ ์ค ํ๋๋ ํ ๊ฐ ๋ถ์ผ์น์ ๋๋ค. ์ฌ๋ฌ ํ์ด ์๋ก ํ๋ ฅํ๊ฑฐ๋ ํ์ค์ ๊ณต์ ํ์ง ์๊ณ ๊ณ ๋ฆฝ๋ ์ํ์์ ์๋น์ค๋ฅผ ๋ฆฌํฉํ ๋งํ๋ฉด ๋ถ์ผ์น๊ฐ ์ฆํญ๋ฉ๋๋ค. ์ด๋ฌํ ๋ถ์ผ์น๋ API ๋ถ์ผ์น, ํธํ๋์ง ์๋ ๋ก๊น ํ์, ์๋ก ๋ค๋ฅธ ์ธํ๋ผ ์ค์ ๋๋ ์์์น ๋ชปํ ๋ฐ์ดํฐ ์ข ์์ฑ์ผ๋ก ๋ํ๋ ์ ์์ต๋๋ค.
๋ ์ฌ๊ฐํ ๊ฒ์, ๊ฐ๋ฐ์๊ฐ ๊ณต์์ ์ธ ๊ฒํ ๋ ๋ฌธ์ํ ์์ด ์๋น์ค์ ์ผ๋ถ๋ฅผ ์กฐ์ฉํ ์ฌ์ค๊ณํ๋ ์๋์ฐ ๋ฆฌํฉํ ๋ง์ผ๋ก ์ธํด ์์คํ ์ด ๋จํธํ๋ ์ํ๋ก ๋จ์ ์ ์๋ค๋ ๊ฒ์ ๋๋ค. ์ด๋ฌํ ๋ณ๊ฒฝ ์ฌํญ์ ์ข ์ข ์ ๋ฌ๋์ง ์๊ฑฐ๋, ์ฒ ์ ํ๊ฒ ํ ์คํธ๋์ง ์๊ฑฐ๋, ๋ ๊ด๋ฒ์ํ ์ํคํ ์ฒ ์์น์ ๋ถํฉํ์ง ์์, ๋ง์น ์ง์ ๋ ๊ฒ์ฒ๋ผ ์์ฅ๋ ๊ธฐ์ ๋ถ์ฑ๊ฐ ๋ฐ์ํฉ๋๋ค.
์ด๋ฅผ ๋ฐฉ์งํ๋ ค๋ฉด ๋ชจ๋ ๋ฆฌํฉํ ๋ง ์์ ์ด ๊ณต์ ๋ ๋ก๋๋งต์ ๋ฐ๋ผ ์งํ๋๋๋ก ํด์ผ ํฉ๋๋ค. ์ํคํ ์ฒ ๊ฒฐ์ ๊ธฐ๋ก(ADR)์ ์์ฑํ๊ณ ์ฃผ์ ๋ณ๊ฒฝ ์ฌํญ์ ๊ฒํ ํด์ผ ํฉ๋๋ค. ํ ๊ฐ์ ์ ๊ธฐ์ ์ธ ๋๊ธฐํ๋ฅผ ํตํด ๋์์ธ, ๋ฐฉํด ์์, ํจํด์ ๊ณต์ ํด์ผ ํฉ๋๋ค. ๋ฌด์๋ณด๋ค๋, ๊ณ ๋ฆฝ๋ ์ต์ ํ๋ณด๋ค๋ ํ์ ์ ์ค์ํ๋ ๋ฌธํ๋ฅผ ์กฐ์ฑํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค.
์ฒ ์ ํ ๋ฌธ์ํ, ํฌ๋ช ํ ์ํต, ๊ทธ๋ฆฌ๊ณ ์๋น์ค ์์น์ ๋ํ ๊ณตํต๋ ์ดํด๋ ๋ง์ฐฐ์ ์ค์ด๊ณ ์์ง๋ ฅ์ ํ์ฑํฉ๋๋ค. ๋ฆฌํฉํ ๋ง์ ๊ธฐ์ ์ ์ธ ๋ ธ๋ ฅ๋งํผ์ด๋ ์กฐ์ง์ ์ธ ๋ ธ๋ ฅ์ด๊ธฐ๋ ํฉ๋๋ค. ๋ชจ๋๊ฐ ํ๋ ฅํ ๋ ๋ณํ๋ ์๋ก๋ฅผ ๊ฐํํฉ๋๋ค. ํ์ง๋ง ๋ณํ๊ฐ ๋จํธํ๋๋ฉด ์๋ก ์์๋ฉ๋๋ค.
Smart TS XL์ ์ฌ์ฉํ ํ์ ๋ฆฌํฉํ ๋ง
๋ง์ดํฌ๋ก์๋น์ค ๋ฆฌํฉํ ๋ง์ ๊ธฐ์ ์ ํ๊ฒฝ๋ฟ๋ง ์๋๋ผ ์ฝ๋๋ฒ ์ด์ค, ์ข ์์ฑ, ์๋น์ค ์ํธ์์ฉ ๋ด์ ์กด์ฌํ๋ ๋ณด์ด์ง ์๋ ์ํคํ ์ฒ ๋๋ฌธ์ ๋ณต์กํฉ๋๋ค. ์ํคํ ์ฒ๋ฅผ ์ดํดํ๋ ๊ฒ์ด ํต์ฌ์ ๋๋ค. ๋ณ๊ฒฝ ์ฌํญ์ ์์ ํ๊ณ ์ฒด๊ณ์ ์ผ๋ก ์คํํ๋ ๊ฒ์ด ๋ ๋ค๋ฅธ ํต์ฌ์ ๋๋ค. ๋ฐ๋ก ์ด ๋ถ๋ถ์์ Smart TS XL์ด ๋ฑ์ฅํฉ๋๋ค. Smart TS XL์ ๋๊ท๋ชจ ๋ถ์ฐ ์์คํ ์ ๋ฐ์ ๊ฑธ์ณ ํ์๊ฒ ์ฌ์ธต์ ์ธ ์ํคํ ์ฒ ํต์ฐฐ๋ ฅ์ ์ ๊ณตํ๋๋ก ์ค๊ณ๋ ์ ๋ฌธ ์ ์ ๋ฐ ๋์ ๋ถ์ ํ๋ซํผ์ ๋๋ค. ๊ตฌ์กฐ์ ๊ฒฐํจ์ ํ์ ํ๊ณ , ์๋น์ค ์ข ์์ฑ์ ์๊ฐํํ๊ณ , ์๋น์ค ๊ฐ ๋์์ ์ถ์ ํจ์ผ๋ก์จ ๋ฆฌํฉํ ๋ง์ ์ํํ ์๋ ํ๋ก์ธ์ค์์ ๋ฐ์ดํฐ ๊ธฐ๋ฐ์ ์ ๋ขฐ์ฑ ๋์ ์์ ์ผ๋ก ์ ํํฉ๋๋ค.
๋ง์ดํฌ๋ก์๋น์ค ๋ฆฌํฉํ ๋ง์์ Smart TS XL์ ๋ ํนํ๊ฒ ๋ง๋๋ ์์
ํ์ผ ๋๋ ํจ์ ์์ค์์ ์๋ํ๋ ๊ธฐ์กด ์ฝ๋ ๋ถ์ ๋๊ตฌ์ ๋ฌ๋ฆฌ Smart TS XL์ ์์คํ ์์ค์์ ์๋ํฉ๋๋ค. Node.js ๋ฐฑ์๋์ ํ๋ฐํธ์๋ ์ธํฐํ์ด์ค๋ฅผ ๊ฐ์ถ ํ์ด๋ธ๋ฆฌ๋ ํ๊ฒฝ์ ํฌํจํ์ฌ TypeScript ๋ฐ JavaScript ์ฝ๋๋ฒ ์ด์ค๋ฅผ ์์งํ๊ณ ์ค์๊ฐ ์ํคํ ์ฒ ๋งต์ ๊ตฌ์ถํฉ๋๋ค. ์ด ๋งต์๋ ์๋น์ค ๊ฒฝ๊ณ, ํจ์ ํธ์ถ ์ฒด์ธ, ๋ชจ๋ ์ข ์์ฑ, API ๊ณ์ฝ ๋ฐ ์ด๋ฒคํธ ๊ธฐ๋ฐ ์ํธ ์์ฉ์ด ํฌํจ๋ฉ๋๋ค.
๋ง์ดํฌ๋ก์๋น์ค ํ์ ๊ฒฝ์ฐ, ์ด๋ ์๋น์ค์ ๊ตฌ์กฐ์ ๊ฒฐํฉ๋๋ฅผ ์ฆ์ ํ์ ํ ์ ์์์ ์๋ฏธํฉ๋๋ค. ์ด๋ค ๋ชจ๋์ด ๋๋ฌด ํฐ์ง, ์ด๋ค API๊ฐ ๊ฐ์ฅ ์์ฃผ ์ฌ์ฉ๋๋์ง, ์ด๋ค ์๋น์ค๊ฐ ๊ฒฉ๋ฆฌ ์์น์ ์๋ฐํ๋์ง ํ์ ํ ์ ์์ต๋๋ค. Smart TS XL์ ์จ๊ฒจ์ง ์ํธ ์ข ์์ฑ, ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ์ฝ๋ ๊ฒฝ๋ก, ๊ทธ๋ฆฌ๊ณ ํ๋ก๋์ ํ๊ฒฝ์์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๊ธฐ ์ ๊น์ง๋ ์์์ฐจ๋ฆฌ์ง ๋ชปํ ์ ์๋ ์ํ ์ฐธ์กฐ๋ฅผ ๋๋ฌ๋ ๋๋ค.
์ด๋ฌํ ์์ค์ ์ํคํ ์ฒ ํฌ๋ช ์ฑ์ ๋ฆฌํฉํ ๋ง์ ์ค๋นํ ๋ ํนํ ์ค์ํฉ๋๋ค. ์ฝ๋๋ฅผ ์์ ํ๊ธฐ ์ ์ ๊ฒฝ๊ณ ๋ณ๊ฒฝ์ด๋ API ์ฌ์ค๊ณ์ ์ํฅ์ ์๋ฎฌ๋ ์ด์ ํ ์ ์์ต๋๋ค. ์ด๋ฅผ ํตํด ๊ฐ๋ฐ์์ ์ํคํ ํธ๋ ํ์ฌ ์ํคํ ์ฒ์ ๋ํ ์ ํํ๊ณ ์ธํฐ๋ํฐ๋ธํ ๋ชจ๋ธ์ ํ๋ณดํ์ฌ ์ถ์ธก์ ๋ฐฐ์ ํ๊ณ ๋์ฑ ์ค๋งํธํ ๊ณํ์ ์ธ์ธ ์ ์์ต๋๋ค.
๋ฐ๊ฒฌ์์ ์คํ๊น์ง: Smart TS XL์ ์ฌ์ฉํ ์ํฌํ๋ก ๋ฆฌํฉํ ๋ง
Smart TS XL์ ์ํคํ ์ฒ ๊ฒฐํจ์ ์ง๋จํ๋ ๊ฒ ์ด์์ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ์ฒด๊ณ์ ์ด๊ณ ์ถ์ ๊ฐ๋ฅํ ๋ฆฌํฉํ ๋ง ์ํฌํ๋ก๋ฅผ ์ง์ํฉ๋๋ค. ํ์ ์ํคํ ์ฒ ๋์์ ํ๊ทธ๋ฅผ ์ง์ ํ๊ณ , ์ฐ์ ์์์ ๋ฐ๋ฅธ ๋ฆฌํฉํ ๋ง ์ ์์ ์์ฑํ๊ณ , ์๋น์ค ๋ด๋น์์๊ฒ ํ ๋นํ ์ ์์ต๋๋ค. ์ด๋ฌํ ์์ ์ ์ด์ ํธ๋์ปค๋ก ๋ด๋ณด๋ด๊ฑฐ๋ CI/CD ์์คํ ์ ์ง์ ํตํฉํ ์ ์์ต๋๋ค.
์๋ฅผ ๋ค์ด, ํน์ ์๋น์ค์ 12๊ฐ์ ์์๋ฐ์ด๋ ์ข ์์ฑ๊ณผ ์๋ํฌ์ธํธ๋น 5๊ฐ ์ด์์ ํธ์ถ ๊ณ์ธต์ด ์๋ ๊ฒ์ผ๋ก ํ์ธ๋๋ฉด Smart TS XL์ ์ด๋ฅผ ์ปคํ๋ง ํซ์คํ์ผ๋ก ํ์ํฉ๋๋ค. ์ดํ, ์์ฐ์ค๋ฌ์ด ์ฌ์ฉ ํด๋ฌ์คํฐ ๋ฐ ๋ฐํ์ ํ๋กํ์ ๊ธฐ๋ฐ์ผ๋ก ๋ชจ๋์ ๋ถํ ์ง์ ์ ์ ์ํ ์ ์์ต๋๋ค. ๊ฐ๋ฐ์๋ ์ ์๋ ์ถ์ถ์ ๊ฒํ ํ๊ณ ์ ์ง์ ์ผ๋ก ์ ์ฉํ์ฌ ์ธ์ ์๋น์ค์ ๋ฐ์ดํฐ ํ๋ฆ์ ๋ฏธ์น๋ ์ํฅ์ ์ ํํ ํ์ ํ ์ ์์ต๋๋ค.
๋ํ, ์ด ๋๊ตฌ๋ ์๊ฐ ๊ฒฝ๊ณผ์ ๋ฐ๋ฅธ ์ํคํ ์ฒ ์ํ๋ฅผ ์ถ์ ํฉ๋๋ค. ์ฆ, ํ์ฌ ์๋น์ค ๋งต์ ์ด์ ๋ฒ์ ๊ณผ ๋น๊ตํ๊ณ ๊ฐ์ ์ฌํญ์ ์ ๋ํํ ์ ์์ต๋๋ค. ๊ณต์ ๋ชจ๋ ์๋ฅผ ์ค์๋์? ์๋น์ค ๋ถ๋ฆฌ ํ ์ค์ ์ํฌํ๋ก ๊ฐ ์ง์ฐ ์๊ฐ์ด ๊ฐ์ ๋์๋์? Smart TS XL์ ์๊ฐ์ ์ด๊ณ ์ธก์ ๊ฐ๋ฅํ ์งํ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ด๋ฌํ ์ง๋ฌธ์ ๋ํ ๋ช ํํ ๋ต์ ์ ๊ณตํฉ๋๋ค.
Smart TS XL์ ๋์ ํ ํ์ ์ค์ ์ฑ๊ณผ
๋ง์ดํฌ๋ก์๋น์ค ๋ฆฌํฉํ ๋ง ๊ณผ์ ์์ Smart TS XL์ ์ฌ์ฉํ๋ ํ์ ๋ฐฐํฌ ์ผ์ ์ด ํฌ๊ฒ ๋จ์ถ๋๊ณ ๋ฐฐํฌ ํ ์ฌ๊ณ ๊ฐ ๊ฐ์ํ๋ค๊ณ ๋ณด๊ณ ํฉ๋๋ค. ๋๊ตฌ์ ์๋ด์ ๋ฐ๋ผ ์ํคํ ์ฒ๋ฅผ ๋ถ์ํ๊ณ ๋ณํํจ์ผ๋ก์จ ์๋ก์ด ์ข ์์ฑ์ด ์๊ธฐ๊ฑฐ๋ ๊ณผ๊ฑฐ์ ์ค์๋ฅผ ๋ฐ๋ณตํ ๊ฐ๋ฅ์ฑ์ ์ค์ผ ์ ์์ต๋๋ค. ์ํคํ ์ฒ ๊ฒฝ๊ณ๊ฐ ๋ช ํํด์ง์ ๋ฐ๋ผ ๋๋ฒ๊น ์๊ฐ์ด ๋จ์ถ๋๊ณ , ์ผ๊ด๋ ๊ตฌ์กฐ์ ๋ฌธ์ํ๋ก ์ธํด ์จ๋ณด๋ฉ์ด ๋์ฑ ์ฌ์์ง๋๋ค.
๋ฆฌํฉํ ๋ง์ ๋ ์ด์ ๋ฏธ์ง์ ์์ญ์ ํํค์น๋ ๊ฒ์ฒ๋ผ ๋๊ปด์ง์ง ์์ต๋๋ค. ๋์ , ์ ์ฒด ์ํ๊ณ์ ๋ํ ๊ฐ๋ ฅํ ์ง๋๋ฅผ ๋ฐํ์ผ๋ก ํต์ ๋๊ณ ํต์ฐฐ๋ ฅ ์๋ ์คํ ๋ฐฉ์์ด ๋ฉ๋๋ค. ์ฑ์ฅํ๋ ์คํํธ์ ์ด๋ ๋ณต์กํ ๊ธฐ์ ํ๊ฒฝ์ด๋ , Smart TS XL์ ๋ง์ดํฌ๋ก์๋น์ค ์ํคํ ์ฒ๋ฅผ ๋จ์ํ '์๋๋ค'๊ณ ๊ธฐ๋ํ๋ ์์ค์์ ๋ฒ์ด๋ ๊ฒฌ๊ณ ํ๊ณ ํ์ฅ ๊ฐ๋ฅํ๋ฉฐ ์ ์ค๊ณ๋ ๊ฒ์ผ๋ก ์ฆ๋ช ํ ์ ์๋ ์์ค์ผ๋ก ์ ํํฉ๋๋ค.
ํ๋ซํผ์ ๋ฏธ๋๋ฅผ ์ค๋นํ์ธ์
๋ง์ดํฌ๋ก์๋น์ค ์ํคํ ์ฒ ๋ฆฌํฉํ ๋ง์ ํ์ ์ ์ธ ํ์์ ๋๋ค. ๊ธฐ์ ์ ์ธ ์ ๊ทธ๋ ์ด๋, ์ฝ๋ ์ ๋ฆฌ, ๋๋ ์ฌํ ๋์์ ์ธ ์์ ์ด ์๋๋ผ, ๋์ฑ ์ง์ ๊ฐ๋ฅํ๊ณ ํ์ฅ ๊ฐ๋ฅํ๋ฉฐ ๋ณต์๋ ฅ์ด ๋ฐ์ด๋ ์์คํ ์ ํฅํ ์์์ ์ธ ์ ํ์ ๋๋ค. ์ฌ์ฉ์, ํ, ๊ทธ๋ฆฌ๊ณ ๋น์ฆ๋์ค์ ๋ณํํ๋ ์๊ตฌ์ ๋ง์ถฐ ์ํํธ์จ์ด๋ฅผ ์ ์ ๋ฉ์ถ๊ณ , ์ฌํ๊ฐํ๊ณ , ์ฌ์ ๋นํ๋ ๊ฒฐ์ ์ ๋๋ค.
์ด ์ฌ์ ์ ํตํด ๋ณ๋ชฉ ํ์์ ๋ฐ๊ฒฌํ๊ณ , ๊ณผ๋ํ๊ฒ ํ์ฅ๋ ์๋น์ค๋ฅผ ๊ฐ์ํํ๊ณ , ์ปค๋ฎค๋์ผ์ด์ ํ๋ฆ์ ์ฌ๊ตฌ์ฑํ๊ณ , ๋์ฑ ๊ฐ๋ ฅํ ๊ฒฝ๊ณ๋ฅผ ์ค์ ํ์ต๋๋ค. ๋ฆฌํฉํ ๋ง์ ์ผํ์ฑ ์คํ๋ฆฐํธ๊ฐ ์๋, ๋๋ฉ์ธ ๋ช ํ์ฑ๊ณผ ์ด์ ์ธ์์ ๊ธฐ๋ฐํ ๋ฐ๋ณต์ ์ด๊ณ ์งํ ์ค์ฌ์ ์ธ ๋ฐฉ์์ผ๋ก ์ ๊ทผํ์ต๋๋ค. ์ด๋ฌํ ์ฌ๊ณ ๋ฐฉ์ ๋๋ถ์ ๊ฐ์ ์ฌํญ์ด ์ง์๋๊ณ ์ํฉ ๋ณํ์ ๋ฐ๋ผ ์ ์ํ ์ ์์ต๋๋ค.
๊ถ๊ทน์ ์ผ๋ก ๋ฆฌํฉํ ๋ง์ ์ง์ ํ ๊ฐ์น๋ ๋ ๋น ๋ฅธ ๋ฐฐํฌ, ๋ ํฐ ์ ๋ขฐ, ๋ ๋ฎ์ ์ํ, ๊ทธ๋ฆฌ๊ณ ๋ณํ์ ๋๋ ค์ ์์ด ๋์ํ๋ ๋ฏผ์ฒฉ์ฑ์ ์์ต๋๋ค. ์ ๋ฆฌํฉํ ๋ง๋ ๋ง์ดํฌ๋ก์๋น์ค ์ํคํ ์ฒ๋ ํ์ฌ๋ฅผ ๊ฐ๋ก๋ง๋ ์ง์ด ์๋๋ผ, ํ์ฌ์ ํจ๊ป ์ฑ์ฅํ๋ ์์ฐ์ด ๋ฉ๋๋ค. ๊ท์จ์ ์ ์งํ๊ณ , ๋์์์ด ์ด๋ ค์ด ์ง๋ฌธ์ ๋์ง์ธ์. ๊ทธ๋ฆฌ๊ณ ๋ฏธ๋์๋ ์ ์ฐํ๊ณ ์์ ์ ์ด๋ฉฐ ๋ช ํํ ์์คํ ์ ์ค๋ ๊ตฌ์ถํ์ธ์.