ํญ์ ์ฐ๊ฒฐ๋ ๋์งํธ ์ํ๊ณ์์ ๊ฐ๋ ์๊ฐ์ ์ ํ ์ฌํญ์ด ์๋๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ ์ ๋์์์ด ์ฌ์ฉ ๊ฐ๋ฅํ ์ํ๋ก ์ ์ง๋์ด์ผ ํ๋ฉฐ, ๋ณด์ด์ง ์๋ ๊ณณ์์ ๋์์์ด ์งํํด์ผ ํฉ๋๋ค. ์์คํ ์ด ์จ๋ผ์ธ ๋ฑ ํน, ์๋ฃ ๊ธฐ๋ก, ๋๋ ์ค์ํ ๋ฌผ๋ฅ ์ํฌํ๋ก์ฐ๋ฅผ ์ง์ํ๋ , ์ฌ์ฉ์๋ ๋์ ๋๋ ์ค๋จ ์์ด ์ํํ๊ฒ ์ ๊ทธ๋ ์ด๋๋๊ธฐ๋ฅผ ๊ธฐ๋ํฉ๋๋ค. ๋ฐ๋ผ์ ๋ค์ดํ์ ์๋ ๋ฆฌํฉํ ๋ง์ ๋จ์ํ ์์ง๋์ด๋ง ๋ชฉํ๊ฐ ์๋๋ผ ์ค์ง์ ์ธ ํ์ ์์์ ๋๋ค.
๋ฆฌํฉํ ๋ง์ ์ฝ๋ ์ฌ๊ตฌ์ฑ, ๊ธฐ๋ฅ ๋ชจ๋ํ, ์ํคํ ์ฒ ๊ฐ์ ์ ํตํด ์ํํธ์จ์ด ํ์ง์ ํฅ์์ํต๋๋ค. ํ์ง๋ง ์ด๋ฌํ ๋ณ๊ฒฝ ์ฌํญ์ ์ค์ ์์คํ ์ ์ ์ฉํ๋ ๊ฒ์ ์ํ์ ์ด๋ํฉ๋๋ค. ๋ณ๊ฒฝ ์ฌํญ์ ์ง์ฐ ์๊ฐ์ ๋ฐ์์ํค๊ฑฐ๋, ๋ฐ์ดํฐ๋ฅผ ์์์ํค๊ฑฐ๋, ์ฃผ์ ๊น๊ฒ ์ฒ๋ฆฌํ์ง ์์ผ๋ฉด ์์ธกํ ์ ์๋ ๋์์ ์ด๋ํ ์ ์์ต๋๋ค. ๊ฐ์ฅ ์ค์ํ ๊ณผ์ ๋ ์์คํ ์ด ์์ ์ ์ผ๋ก ์๋ํ๊ณ ์ฌ์ฉ์์๊ฒ ์๋น์ค๋ฅผ ์ ๊ณตํ๋ ๋์ ๋ณ๊ฒฝ ์ฌํญ์ ๊ตฌํํ๋ ๊ฒ์ ๋๋ค.
๋ค์ดํ์ ์์ด ํ๋ํ
์ํฐํ๋ผ์ด์ฆ๊ธ ์ ์ด ๋ฐ ์ ๋ฐ์ฑ์ ํตํด ํ๋ก๋์ ์์ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ผ์ด๋ธ๋ก ๋ฆฌํฉํ ๋งํ์ธ์.
๋๋ฌ๋ณด๊ธฐ SMART TS XL์ด๋ฌํ ๊ณผ์ ๋ฅผ ํด๊ฒฐํ๋ ค๋ฉด ๊ฐ๋ ฅํ ๋ฐฐํฌ ๋ฐฉ์, ์ ์ง์ ์ธ ์ ๋ฌ ๋ฐฉ์, ์ ์คํ ๋ฐ์ดํฐ ์ฒ๋ฆฌ, ๊ทธ๋ฆฌ๊ณ ํ๋ ฅ์ ์ธ ๋กค๋ฐฑ ๊ณํ์ด ๋ชจ๋ ํ์ํฉ๋๋ค. ํธ๋ํฝ ์ ํ ๊ธฐ๋ฒ๋ถํฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ง์ด๊ทธ๋ ์ด์ ์ ๋ต๊น์ง, ๊ฐ๋ฐ์๋ ์ ๋ฐํ๊ฒ ๋ณํ๋ฅผ ์กฐ์จํด์ผ ํฉ๋๋ค. ๋ชฉํ๋ ๋ค์ดํ์, ์๋น์ค ์ ํ ๋๋ ์ ๋ฌด ์ค๋จ ์์ด ๋ผ์ด๋ธ ์์คํ ์ ํ์ ํ๋ ๊ฒ์ ๋๋ค.
๋ค์ดํ์ ์์ด ์ด์ ํ๊ฒฝ์์ ๋ฆฌํฉํ ๋ง์ ์ํํ๊ธฐ ์ํ ์๋ ํฌ ์๋ ๋ก๋๋งต์ ๋๋ค. ์ต์ ๋ถ์ฐ ์์คํ ๊ณผ ๋ ๊ฑฐ์ ์ธํ๋ผ ๋ชจ๋์์ ์์ ํ๊ณ ๋ฐ๋ณต์ ์ผ๋ก ์ง์์ ์ธ ๋ณ๊ฒฝ์ ์ํํ ์ ์๋๋ก ํ๋ ๊ธฐ์ ๊ณผ ํจํด์ ์ดํด๋ด ๋๋ค.
์ ๋ก ๋ค์ดํ์ ๋ฆฌํฉํ ๋ง ๊ธฐ๋ณธ ์ฌํญ
์ ๋ก ๋ค์ดํ์ ๋ฆฌํฉํ ๋ง์ ์ด์ ์์คํ ์ ์จ๋ผ์ธ ์ํ๋ก ์ ์งํ๊ณ ์ค๋จ ์์ด ๋ฐ์ ์ํค๋ ๊ณผ์ ์ ๋๋ค. ์ํํ ๋ฐฐํฌ, ์์ ํ ๋กค๋ฐฑ, ๊ทธ๋ฆฌ๊ณ ์ค์๊ฐ ๊ฒ์ฆ์ ์ํ ๊ณํ, ํด, ๊ทธ๋ฆฌ๊ณ ์ํคํ ์ฒ ๊ด๋ จ ์์ฌ๊ฒฐ์ ์ด ํ์ํฉ๋๋ค. ์ด ๋ฐฉ๋ฒ๋ก ์ ํต์ฌ์ ๊ตฌ์ฑ ์์๋ฅผ ์ ์ง์ ์ผ๋ก, ํนํ ์ค์๊ฐ ํธ๋ํฝ๊ณผ ๋ณํํ์ฌ ํ ์คํธํ๊ณ ์ ํํ ์ ์๋ ๋ฅ๋ ฅ์ ๋๋ค.
๋ธ๋ฃจ-๊ทธ๋ฆฐ ๋ฐฐํฌ ํจํด
๋ธ๋ฃจ-๊ทธ๋ฆฐ ๋ฐฐํฌ๋ ์ํํ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฐ์ดํธ๋ฅผ ์ํด ์ฌ์ฉ๋๋ ์ ๋ต์ ๋ฐฉ๋ฒ์ ๋๋ค. ์ด ์์น์ ๋ ๊ฐ์ ๋์ผํ ํ๋ก๋์ ํ๊ฒฝ์ ํ์๋ก ํฉ๋๋ค. ํ๋๋ ์ฌ์ฉ์ ํธ๋ํฝ์ ์ ๊ทน์ ์ผ๋ก ์ฒ๋ฆฌํ๊ณ , ๋ค๋ฅธ ํ๋๋ ์๋ก์ด ์ฝ๋ ๋๋ ๊ตฌ์ฑ ๋ณ๊ฒฝ์ ์คํ ์ด์งํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ๋๊ธฐ ํ๊ฒฝ์ ์ ๋ฒ์ ์ด ์์ ํ ํ ์คํธ๋๊ณ ๊ฒ์ฆ๋๋ฉด ํ๋ก๋์ ํธ๋ํฝ์ ๋จ์ผ ์์์ ๋จ๊ณ๋ก ํด๋น ํ๊ฒฝ์ผ๋ก ๋ฆฌ๋๋ ์ ๋ฉ๋๋ค.
์ด ์ค์ ์ ๋ค์ดํ์์ ๊ฑฐ์ 0์ผ๋ก ์ค์ ๋๋ค. ๊ธฐ์กด ๋ผ์ด๋ธ ํ๊ฒฝ์ ์ ๋ฐ์ดํธ ๋ฐฐํฌ, ์ค๋ชจํฌ ํ ์คํธ ๋ฐ ๊ฒฉ๋ฆฌ๋ ๋ชจ๋ํฐ๋ง์ด ์งํ๋๋ ๋์์๋ ๊ณ์ ์๋ํฉ๋๋ค. ์ ํ ํ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋๋ผ๋ ์๋ ํ๊ฒฝ์ ๊ทธ๋๋ก ์ ์ง๋๋ฏ๋ก ์ด์ ๋ฒ์ ์ผ๋ก ์ฝ๊ฒ ๋๋๋ฆด ์ ์์ต๋๋ค.
๋ธ๋ฃจ-๊ทธ๋ฆฐ ๋ฐฐํฌ์ ์ฑ๊ณต์ ์๋ํ, ์ธํ๋ผ ์ค๋ณต, ๊ทธ๋ฆฌ๊ณ ํจ๊ณผ์ ์ธ ํธ๋ํฝ ๊ด๋ฆฌ์ ๋ฌ๋ ค ์์ต๋๋ค. ์ปจํ ์ด๋ ์ค์ผ์คํธ๋ ์ดํฐ, ๋ก๋ ๋ฐธ๋ฐ์, ์ฝ๋ํ ์ธํ๋ผ ํ๋ซํผ๊ณผ ๊ฐ์ ์ต์ ๋๊ตฌ๋ ํ๊ฒฝ ๊ฐ ์์ ์ ์ธ ํ๋ก๋น์ ๋ ๋ฐ ์ ํ์ ํต์ฌ์ ์ธ ์ญํ ์ ํฉ๋๋ค. ์ด ๋ฐฉ๋ฒ์ ๋ฆด๋ฆฌ์ค ํ์ง์ ๋ํ ๋์ ์ ๋ขฐ์ฑ์ ์ ๊ณตํ๊ณ ๋๊ท๋ชจ ๋ณ๊ฒฝ ์ ์์ ๋ง ์ญํ ์ ํฉ๋๋ค.
๋ ๊ฐ์ ๋์ผํ ํ๋ก๋์ ํ๊ฒฝ ์ ์ง
๋ ์ด์ ํ๊ฒฝ ๊ฐ์ ๋๋ฑ์ฑ์ ์ ์งํ๋ ๊ฒ์ ๊ธฐ์ ์ , ์ด์์ ๊ณผ์ ์ ๋๋ค. ๊ฐ ํ๊ฒฝ์ ๊ตฌ์ฑ, ์ข ์์ฑ, ๋คํธ์ํน, ๋ฐ์ดํฐ ์ก์ธ์ค ๋ฐ ๋ณด์ ์ ์ฑ ์ธก๋ฉด์์ ์๋ก ๋์ผํด์ผ ํฉ๋๋ค. ๋ฏธ๋ฌํ ๋ถ์ผ์น์กฐ์ฐจ๋ ์ผ๊ด๋์ง ์์ ๋์์ ์ด๋ํ ์ ์์ผ๋ฉฐ, ์ด๋ ๋ธ๋ฃจ-๊ทธ๋ฆฐ ๋ฐฐํฌ์ ๋ชฉ์ ์ ์ ํดํฉ๋๋ค.
์๋ํ๋ ์ด๋ฌํ ๋๋ฑ์ฑ์ ์ ์งํ๋ ๋ฐ ํ์์ ์ ๋๋ค. Terraform์ด๋ AWS CloudFormation๊ณผ ๊ฐ์ ์ฝ๋ํ ์ธํ๋ผ(IaC) ๋๊ตฌ๋ ์ ์ธ์ ์ ์๋ฅผ ํตํด ๋์ผํ ํ๊ฒฝ์ ํ๋ก๋น์ ๋ํ ์ ์์ต๋๋ค. Ansible์ด๋ Puppet๊ณผ ๊ฐ์ ๊ตฌ์ฑ ๊ด๋ฆฌ ์์คํ ์ ์ํํธ์จ์ด ์ค์ ๊ณผ ๋ฐํ์ ๋งค๊ฐ๋ณ์๊ฐ ๋ฐฐํฌ ์ ๋ฐ์์ ๋๊ธฐํ๋๋๋ก ๋ณด์ฅํฉ๋๋ค.
๋ชจ๋ํฐ๋ง๊ณผ ๊ด์ฐฐ ๊ฐ๋ฅ์ฑ ๋ํ ์ค์ํ ์ญํ ์ ํฉ๋๋ค. ๋ ํ๊ฒฝ ๋ชจ๋ ๋์ผํ ์๊ฒฉ ์ธก์ ์งํ, ๋ก๊ทธ, ์ถ์ ๊ธฐ๋ฅ์ ๊ฐ์ถ์ด ์ฑ๋ฅ์ ๊ฒ์ฆํ๊ณ ์ด์ ์งํ๋ฅผ ๊ฐ์งํด์ผ ํฉ๋๋ค. ํ๋ก๋์ ํ๊ฒฝ์ ๋ณ๊ฒฝ ์ฌํญ์ ์ ์ฉํ๊ธฐ ์ ์ ์ค๋น ์ํ๋ฅผ ํ์ธํ๊ธฐ ์ํด ๋ ๋ฒ์ ๋ชจ๋์์ ์ํ ์ ๊ฒ์ ์ผ๊ด๋๊ฒ ์คํํด์ผ ํฉ๋๋ค.
์ธํ๋ผ์ ๊ตฌ์ฑ์ ๋ฒ์ ๊ด๋ฆฌ๋ ์ํฐํฉํธ๋ก ์ฒ๋ฆฌํจ์ผ๋ก์จ ํ์ ๋๋ฆฌํํธ๋ฅผ ๋ฐฉ์งํ๊ณ ์๋ก์ด ํ๊ฒฝ์ด ์ด์ ํ๊ฒฝ์ ์ถฉ์คํ๊ฒ ๋ฐ์ํ๋๋ก ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ์์น์ ํต์ ๋ ์ ํ์ ๊ฐ๋ฅํ๊ฒ ํ๊ณ ๋ชจ๋ ๋ฐฐํฌ ์ฃผ๊ธฐ์ ๋ํ ํ์ ์ ์ฌ์ด์ค๋๋ค.
์ฆ๊ฐ์ ์ธ ๋กค๋ฐฑ์ ์ํ ํธ๋ํฝ ์ ํ ์ ๋ต
๋ธ๋ฃจ-๊ทธ๋ฆฐ ๋ฐ ์ ์ฌ ๋ฐฐํฌ ๋ชจ๋ธ์ ์ฃผ์ ์ด์ ์ค ํ๋๋ ์ฅ์ ๋ฐ์ ์ ํธ๋ํฝ์ ์ฆ์ ๋ฆฌ๋๋ ์ ํ ์ ์๋ค๋ ๊ฒ์ ๋๋ค. ์ด๋ฅผ ์ํด์๋ ์ค์๊ฐ ์ฌ์ฉ์ ์์ฒญ์ ์ต์ํ์ ์ง์ฐ ์๊ฐ๊ณผ ์๋ ๊ฐ์ ์์ด ๋ค๋ฅธ ํ๊ฒฝ์ผ๋ก ๋ผ์ฐํ ํ ์ ์๋ ๊ฐ๋ ฅํ ํธ๋ํฝ ์ ํ ๋ฉ์ปค๋์ฆ์ด ํ์ํฉ๋๋ค.
์ต์ ๊ตฌํ ๋ฐฉ์์ ์ผ๋ฐ์ ์ผ๋ก ์ํํธ์จ์ด ์ ์ ๋ก๋ ๋ฐธ๋ฐ์, ์งง์ TTL(Time-to-Live) ์ค์ ์ ๊ฐ์ถ DNS ๋ผ์ฐํ , ๋๋ Istio๋ Linkerd์ ๊ฐ์ ์๋น์ค ๋ฉ์๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์ด๋ฌํ ์์คํ ์ ํตํด ํ์ ์ ํ๋ฆฌ์ผ์ด์ ๊ณ์ธต ๋๋ ๋คํธ์ํฌ ์์ค์์ ํธ๋ํฝ์ ๋น ๋ฅด๊ณ ์์ ํ๊ฒ ์ฌ๋ผ์ฐํ ํ ์ ์์ต๋๋ค.
๋กค๋ฐฑ ์ ๋ต์ ์ ํ๋ฆฌ์ผ์ด์ ๊ณผ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ํ๊ฐ ๋ฒ์ ๊ฐ์ ํธํ๋ ๋๋ง ํจ๊ณผ์ ์ ๋๋ค. ๋ฐ๋ผ์ ๋กค๋ฐฑ ์ค ๋ฐ์ดํฐ ์์์ ๋ฐฉ์งํ๊ธฐ ์ํด ์ด์ ๋ฒ์ ๊ณผ์ ํธํ์ฑ์ ์ ์งํด์ผ ํฉ๋๋ค. ๋ํ, ๋กค๋ฐฑ ๊ณํ์ ์คํ ์ด์ง ๋๋ ํ ์คํธ ํ๊ฒฝ์์ ์ ๊ธฐ์ ์ผ๋ก ์ฐ์ตํ์ฌ ์๋ฐ ์ํฉ์์๋ ์ ์ฐจ๊ฐ ์์ ์ ์ผ๋ก ์ ์ง๋๋๋ก ํด์ผ ํฉ๋๋ค.
์๋ํ๋ ๋กค๋ฐฑ ๋ฉ์ปค๋์ฆ์ ์ฌ์ฉํ๋ฉด ์ํ์ ์ํํ ๋ฟ๋ง ์๋๋ผ ๋ฐฐํฌ ์๋๋ ํฅ์๋ฉ๋๋ค. ํ์ ๋ณต์กํ ๋ณต๊ตฌ๊ฐ ์๋ ๊ตฌ์ฑ ๋ฌธ์ ์ธ ๋กค๋ฐฑ์ ํตํด ๋ณ๊ฒฝ ์ฌํญ์ ์ ์ฉํ ์ ์๋ค๋ ๊ฒ์ ์๊ณ ์์ ๋ ๋์ฑ ์ ๊ทน์ ์ผ๋ก ๋ณ๊ฒฝ ์ฌํญ์ ์ ์ฉํฉ๋๋ค.
์ ํ ์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋๊ธฐํ
๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ๋ณธ์ง์ ์ผ๋ก ์ํ๋ฅผ ์ ์ฅํ๊ณ ์ ํ๋ฆฌ์ผ์ด์ ์ ํ์ฑ์ ํต์ฌ์ ์ธ ์ญํ ์ ํ๋ฏ๋ก, ๋ค์ดํ์ ์๋ ๋ฆฌํฉํ ๋ง ๊ณผ์ ์์ ์ฒ๋ฆฌํ๊ธฐ ๊ฐ์ฅ ๋ณต์กํ ๊ตฌ์ฑ ์์ ์ค ํ๋์ ๋๋ค. ์คํค๋ง ๋ณ๊ฒฝ์ด ํ์ํ ๊ฒฝ์ฐ, ์ ํ๋ฆฌ์ผ์ด์ ์ ์ด์ ๋ฒ์ ๊ณผ ์ ๋ฒ์ ๊ฐ์ ๋๊ธฐํ๊ฐ ๋งค์ฐ ์ค์ํฉ๋๋ค.
๊ฐ์ฅ ๋๋ฆฌ ์ฑํ๋ ํจํด์ ํ์ฅ-์ถ์ ์ ๋ต์ ๋๋ค. ์ด ์ ๋ต์ ์๋ก์ด ์คํค๋ง ์์๋ฅผ ์ถ๊ฐ์ ์ผ๋ก ๋์ (ํ์ฅ)ํ ํ, ์ด์ ๋ฒ์ ๊ณผ ์ ์ ํ๋ฆฌ์ผ์ด์ ๋ฒ์ ์ด ๋์์ ์๋ํ๋๋ก ํ๋ ๊ฒ์ ํฌํจํฉ๋๋ค. ์ ๋ฒ์ ์ด ์์ ํ ์ฑํ๋๊ณ ๊ฒ์ฆ๋๋ฉด, ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ์คํค๋ง ๊ตฌ์ฑ ์์๋ ์ ๊ฑฐ(์ถ์)๋ฉ๋๋ค. ์ด 2๋จ๊ณ ์ ๊ทผ ๋ฐฉ์์ ์ด์ ๋ฒ์ ๊ณผ์ ํธํ์ฑ์ ์ ํดํ ์ ์๋ ํ๊ดด์ ์ธ ์คํค๋ง ๋ณ๊ฒฝ์ ๋ฐฉ์งํฉ๋๋ค.
๋๊ธฐ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ณต์ ๋๋ ๋ณ๊ฒฝ ๋ฐ์ดํฐ ์บก์ฒ(CDC) ๋๊ตฌ๋ ํ๊ฒฝ ์ ๋ฐ์ ์ผ๊ด์ฑ ์ ์ง์ ๋์์ด ๋ ์ ์์ต๋๋ค. ์ด๋ฌํ ๋๊ตฌ๋ ๋ฐ์ดํฐ์ ์ค์๊ฐ ๋ณ๊ฒฝ ์ฌํญ์ ์บก์ฒํ์ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋๋ ๋ฒ์ ๊ฐ์ ์ ํํ๊ณ , ์ด๋ฅผ ํตํด ์ ํจ์ฑ ๊ฒ์ฌ ๋ฐ ๋กค๋ฐฑ์ ์ง์ํฉ๋๋ค.
๋ํ Liquibase๋ Flyway์ ๊ฐ์ ์คํค๋ง ๋ง์ด๊ทธ๋ ์ด์ ๋๊ตฌ๋ ๋ฒ์ ๊ด๋ฆฌํ ๋ง์ด๊ทธ๋ ์ด์ , ๋กค๋ฐฑ ์คํฌ๋ฆฝํธ, ๋ฐฐํฌ ํํฌ๋ฅผ ์ง์ํฉ๋๋ค. ์ด๋ฌํ ๋๊ตฌ๋ฅผ ์๋ํ๋ ๋ฐฐํฌ ํ์ดํ๋ผ์ธ๊ณผ ๊ฒฐํฉํ๋ฉด ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ณ๊ฒฝ ์ฌํญ์ด ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฐ์ดํธ์ ํจ๊ป ์์ ํ๊ฒ ๋ฐฐํฌ๋ ์ ์์ต๋๋ค.
๋ฆฌํฉํ ๋ง ํ์ฑํ ๋๊ตฌ๋ก์์ ๊ธฐ๋ฅ ํ ๊ธ
๊ธฐ๋ฅ ํ ๊ธ์ ํ๋ก๋์ ํ๊ฒฝ์์ ์์ ํ๊ณ ์ ์ง์ ์ธ ๋ฆฌํฉํ ๋ง์ ๊ฐ๋ฅํ๊ฒ ํ๋ ๊ฐ์ฅ ์ ์ฐํ๊ณ ํจ๊ณผ์ ์ธ ๋๊ตฌ ์ค ํ๋์ ๋๋ค. ์ฝ๋ ๋ฐฐํฌ์ ๊ธฐ๋ฅ ๋ ธ์ถ์ ๋ถ๋ฆฌํ์ฌ ๋ชจ๋ ์ฌ์ฉ์์๊ฒ ํ์ฑํํ์ง ์๊ณ ๋ ์ฝ๋์ ์๋ก์ด ๊ธฐ๋ฅ์ ์ถ๊ฐํ ์ ์๋๋ก ํฉ๋๋ค. ์ด๋ฌํ ๋ถ๋ฆฌ๋ฅผ ํตํด ํ์ ์ํ์ ์ต์ํํ๊ณ ํ์ํ ๊ฒฝ์ฐ ์ ์ํ ๋กค๋ฐฑ์ ์ง์ํ๋ฉด์ ์ ์ง์ ์ผ๋ก ๊ตฌ์กฐ์ ๋ณ๊ฒฝ์ ์ํํ ์ ์์ต๋๋ค.
ํ ๊ธ์ ๊ธฐ์กด ์ํฌํ๋ก๋ฅผ ๋ฐฉํดํ์ง ์๊ณ ๊ธฐ์กด ๋ก์ง ๊ฒฝ๋ก์ ์ ๋ก์ง ๊ฒฝ๋ก๋ฅผ ์ ํํ๊ฑฐ๋, ์๋ก์ด ๊ตฌ์ฑ์ ๋์ ํ๊ฑฐ๋, ์๋น์ค๋ฅผ ๋ง์ด๊ทธ๋ ์ด์ ํ๋ ๋ฐ ์์ฃผ ์ฌ์ฉ๋ฉ๋๋ค. ํ ๊ธ์ ์ ์ฐ์ฑ์ A/B ํ ์คํธ, ๋ด๋ถ ๋ฏธ๋ฆฌ๋ณด๊ธฐ, ์ด๊ธฐ ์ฌ์ฉ์ ํผ๋๋ฐฑ ๋ฃจํ๋ฅผ ์ง์ํฉ๋๋ค.
ํ ๊ธ์ด ํจ๊ณผ์ ์ด๋ ค๋ฉด ์ฒด๊ณ์ ์ด๊ณ ์ฝ๊ฒ ๊ด๋ฆฌํ ์ ์์ด์ผ ํฉ๋๋ค. ํ์ ํ ๊ธ ์์ ๊ถ์ ์ถ์ ํ๊ณ , ํ ๊ธ ๋ชฉ์ ์ ๋ฌธ์ํํ๊ณ , ๋ง๋ฃ ์ ๋ต์ ๊ตฌํํ์ฌ ์ค๋๋ ๋ก์ง์ ๋ฐฉ์งํด์ผ ํฉ๋๋ค. LaunchDarkly, Unleash ๋๋ ๋ด๋ถ ๊ธฐ๋ฅ ํ๋๊ทธ ์์คํ ๊ณผ ๊ฐ์ ํ ๊ธ ๊ด๋ฆฌ ํ๋ซํผ์ ์ฌ๋ฐฐํฌ ์์ด ์ค์ ์ง์ค์ ์ ์ด, ๊ฐ์ฌ ๋ฐ ์ค์๊ฐ ํ ๊ธ ๋ณ๊ฒฝ์ ์ ๊ณตํ ์ ์์ต๋๋ค.
๊ธฐ๋ฅ ํ ๊ธ์ ์ฌ์ฉํ๋ฉด ๊ฐ๋ฐ์๊ฐ ํ๋ก๋์ ํ๊ฒฝ์์ ์์ ์๊ฒ ์คํํ๊ณ ๋ฆฌํฉํ ๋งํ ์ ์์ผ๋ฉฐ, ๋ณ๊ฒฝ ์ฌํญ์ ์ฆ์ ๋๋ฆฌ๊ฑฐ๋ ์ค์ผ ์ ์์ต๋๋ค.
์ ์ฝ๋์ ์ด์ ์ฝ๋์ ๋ํ ์์ฒญ์ ๋์ ๋ผ์ฐํ
๊ธฐ๋ฅ ํ ๊ธ์ ํตํด ํ์ฑํ๋ ๋์ ๋ผ์ฐํ ์ ํตํด ์์คํ ์ ์ ์ฝ๋ ๊ฒฝ๋ก์ ๊ธฐ์กด ์ฝ๋ ๊ฒฝ๋ก๋ฅผ ๋ชจ๋ ๋ณ๋ ฌ๋ก ์คํํ์ฌ ์ฌ์ฉ์ ํธ๋ํฝ์ ์กฐ๊ฑด๋ถ๋ก ์ ๋ฌํ ์ ์์ต๋๋ค. ์ด๋ ์ฃผ์ ๋ก์ง ๋ณ๊ฒฝ์ด๋ ์๋น์ค ์ฌ์ค๊ณ๊ฐ ์ ์ฉ๋๋ ๋ฆฌํฉํ ๋ง ์์ ์ ํนํ ์ ์ฉํฉ๋๋ค. ๋ชจ๋ ์ฌ์ฉ์์๊ฒ ์ผ๊ด์ ์ธ ๋ณ๊ฒฝ ์ฌํญ์ ์ ์ฉํ๋ ๋์ , ์ฌ์ฉ์ ์ญํ , ์ธ์ ID, ๋ฐฐํฌ ๋น์จ ๋๋ ์ง๋ฆฌ์ ์ง์ญ์ ๋ฐ๋ฅธ ํ ๊ธ ์กฐ๊ฑด์ ํตํด ์์ฒญ์ ์ฒ๋ฆฌํ ๋ฒ์ ์ ๊ฒฐ์ ํ ์ ์์ต๋๋ค.
์ด๋ฌํ ์ ๊ทผ ๋ฐฉ์์ ์ฌ์ฉ์ ์ค๋จ์ ์ต์ํํ๊ณ ์ค์ ํ๊ฒฝ์์ ์ ์ด๋ ํ ์คํธ๋ฅผ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค. ๊ฐ๋ฐ์๋ ์ ์ฒด ์ฌ์ฉ์ ๊ธฐ๋ฐ์ ์ํฅ์ ๋ฏธ์น์ง ์๊ณ ์ ์ฝ๋์ ์ฑ๋ฅ, ์ค๋ฅ์จ ๋ฐ ์ฌ์ฉ์ ๋์์ ๋ชจ๋ํฐ๋งํ ์ ์์ต๋๋ค. ์ด์ ์งํ๊ฐ ๊ฐ์ง๋๋ฉด ๋ผ์ฐํ ์ ์ฆ์ ์กฐ์ ํ์ฌ ํธ๋ํฝ์ ์์ ์ ์ธ ๊ฒฝ๋ก๋ก ๋ค์ ๋ฆฌ๋๋ ์ ํ ์ ์์ต๋๋ค.
์ด๋ฅผ ๊ตฌํํ๋ ค๋ฉด ์ ์คํ ์ถ์ํ ๊ณ์ธต์ด ํ์ํฉ๋๋ค. ํ ๊ธ ์ํ์ ๋ฐ๋ผ ํธ๋ํฝ์ ๊ฐ๋ก์ฑ๊ณ ๋ผ์ฐํ ํ๊ธฐ ์ํด ์๋น์ค ๋ผ์ฐํฐ, ๋ฏธ๋ค์จ์ด ๊ตฌ์ฑ ์์ ๋๋ API ๊ฒ์ดํธ์จ์ด๊ฐ ํ์ํ ์ ์์ต๋๋ค. ํ๊ท๋ฅผ ์กฐ๊ธฐ์ ๊ฐ์งํ๊ธฐ ์ํด ๋ ๋ฒ์ ๋ชจ๋์์ ์งํ๋ฅผ ์์งํด์ผ ํฉ๋๋ค. ์ด๋ฌํ ์ค์ ์ ํตํด ๋ณต์กํ ์ ํ์ ์ ์ง์ ์ผ๋ก ๊ฐ์์ ์ผ๋ก ์งํํ ์ ์์ด ์ด์ ์ํ์ ํฌ๊ฒ ์ค์ผ ์ ์์ต๋๋ค.
์ ์ง์ ๊ธฐ๋ฅ ๊ฒ์ฆ์ ์ํ Canary ๋ฆด๋ฆฌ์ค
์นด๋๋ฆฌ์ ๋ฆด๋ฆฌ์ค๋ ๊ธฐ๋ฅ ํ ๊ธ์ ํ์ฉํ์ฌ ์์์ ์ฌ์ฉ์์๊ฒ ์๋ก์ด ๊ธฐ๋ฅ์ ์ ์ง์ ์ผ๋ก ๊ณต๊ฐํ๋ ๊ฐ๋ ฅํ ํจํด์ ๋๋ค. ๋ฆฌํฉํ ๋ง๋ ์ปดํฌ๋ํธ๋ฅผ ๋ชจ๋ ์ฌ์ฉ์์๊ฒ ํ๊บผ๋ฒ์ ์ถ์ํ๋ ๋์ , ์นด๋๋ฆฌ์ ๋ฐฉ์์ ์ ํ๋ ์ธ๊ทธ๋จผํธ์ ๋จผ์ ๋ณ๊ฒฝ ์ฌํญ์ ๋ฐฐํฌํฉ๋๋ค. ์ด๋ฅผ ํตํด ํ์ ๋ ๊ด๋ฒ์ํ ์ถ์๋ฅผ ์งํํ๊ธฐ ์ ์ ์ค์ ๋์๊ณผ ์์คํ ์ ๋ฏธ์น๋ ์ํฅ์ ๊ด์ฐฐํ ์ ์์ต๋๋ค.
์ด ๋ฐฉ๋ฒ์ ๋ฆฌํฉํ ๋ง์ด ์ฒญ๊ตฌ ์์คํ , ๊ถํ ๋ถ์ฌ ์ํฌํ๋ก, ๋ฐ์ดํฐ ๋๊ธฐํ ๊ตฌ์ฑ ์์์ ๊ฐ์ ๋น์ฆ๋์ค ํต์ฌ ๋ก์ง์ ๋ค๋ฃฐ ๋ ํนํ ํจ๊ณผ์ ์ ๋๋ค. ์ค๋ฅ์จ, ์ง์ฐ ์๊ฐ, ์ ํ์จ ์งํ์ ๊ฐ์ ์นด๋๋ฆฌ์ ๊ฒฐ๊ณผ๋ฅผ ๋ถ์ํจ์ผ๋ก์จ ํ์ ์ค์ ๋ถํ ์ํฉ์์ ์์ ์ฑ, ์ฑ๋ฅ ๋ฐ ๊ธฐ๋ฅ์ ์ ํ์ฑ์ ํ๊ฐํ ์ ์์ต๋๋ค.
์นด๋๋ฆฌ์ ํ ๊ธ์ ๋กค๋ฐฑ์ ์ง์ํด์ผ ํ๋ฉฐ, ์ ์ฝ๋์ ์ค๋ฅ ์งํ๊ฐ ๋ํ๋๋ฉด ๋ ธ์ถ์ ์ฆ์ ๋๋๋ฆด ์ ์์ด์ผ ํฉ๋๋ค. ์ฌ๊ธฐ์๋ ๊ด์ฐฐ ๋๊ตฌ์ ์ํ ์งํ๊ฐ ํ์์ ์ด๋ฉฐ, ์ด๋ฅผ ํตํด ์ด์ ์งํ๋ฅผ ์ฌ์ ์ ๊ฐ์งํ ์ ์์ต๋๋ค. ์๋ฆผ ๋ฐ ์๋ํ๋ ๋ฐฐํฌ ๊ฒ์ดํธ์ ๊ฒฐํฉ๋ ์นด๋๋ฆฌ์ ๋ฆด๋ฆฌ์ค๋ ๋ฆฌํฉํ ๋ง ์์ ์ค์ ๊ฐ๋ ฅํ ํผ๋๋ฐฑ ๋ฃจํ๋ฅผ ์ ๊ณตํฉ๋๋ค.
๋น์ ๋กค๋ฐฑ์ ์ํ ํฌ ์ค์์น
ํฌ ์ค์์น๋ ๊ธฐ๋ฅ ํ ๊ธ ์์คํ ์ ๋ด์ฅ๋ ๋ฐฉ์ด ๋ฉ์ปค๋์ฆ์ผ๋ก, ์ฌ๊ณ ๋ฐ์ ์ ๊ธฐ๋ฅ์ ์ฆ์ ๋นํ์ฑํํฉ๋๋ค. ๋ฆฌํฉํ ๋ง๋ ์ฝ๋๊ฐ ์ด์ ํ๊ฒฝ์์ ์๊ธฐ์น ์๊ฒ ์๋ํ๋ ๊ฒฝ์ฐ, ํฌ ์ค์์น๋ฅผ ํตํด ํ์ ์ฌ๋ฐฐํฌ๋ ํซํฝ์ค๋ฅผ ๊ธฐ๋ค๋ฆฌ์ง ์๊ณ ํด๋น ์ฝ๋ ๊ฒฝ๋ก๋ฅผ ์ฐํํ ์ ์์ต๋๋ค. ์ด ๊ธฐ๋ฅ์ ๋งค ์๊ฐ์ ์ค๋จ์ด ์ค์ํ ์ ๋ก ๋ค์ดํ์ ํ๊ฒฝ์์ ๋งค์ฐ ์ค์ํฉ๋๋ค.
์ ๊ตฌํ๋ ํฌ ์ค์์น๋ ๊ฐ๋ณ๊ณ ๋น ๋ฅด๋ฉฐ ์ธ๋ถ์์ ๊ตฌ์ฑ ๊ฐ๋ฅํด์ผ ํฉ๋๋ค. ๊ตฌ์ฑ ๋ณ๊ฒฝ, ํ ๊ธ ๊ด๋ฆฌ UI ๋๋ API ํธ์ถ์ ํตํด ์ฆ์ ๋นํ์ฑํํ ์ ์์ด์ผ ํฉ๋๋ค. ์ด์์ ์ผ๋ก๋ ํฌ ์ค์์น๊ฐ ๋ชจ๋ํฐ๋ง ๋ฐ ์ฌ๊ณ ๋์ ํ๋ซํผ๊ณผ ํตํฉ๋์ด ์ํ ์ ํ, ์ค๋ฅ ๊ธ์ฆ ๋๋ ์ด์ ๊ฐ์ง์ ๋ฐ๋ผ ์๋ํ๋ ํธ๋ฆฌ๊ฑฐ๋ฅผ ํ์ฑํํ ์ ์์ด์ผ ํฉ๋๋ค.
๋ฆฌํฉํ ๋ง ๋งฅ๋ฝ์์ ํฌ ์ค์์น๋ ์ ๋ขฐ๋๋ฅผ ๋์ฌ์ค๋๋ค. ์์ง๋์ด๋ ๋ฌธ์ ๊ฐ ์๋ ๊ฒฝ๋ก๋ฅผ ์ฆ์ ๊ฒฉ๋ฆฌํ ์ ์๋ค๋ ์ ์ ์ธ์งํ๊ณ ๋๊ท๋ชจ ๊ตฌ์กฐ ๋ณ๊ฒฝ์ ์งํํ ์ ์์ต๋๋ค. ์ด๋ฅผ ํตํด ๋ ธ์ถ์ ์ต์ํํ๊ณ ์ฌ์ฉ์๋ฅผ ๋ณดํธํ๋ฉฐ ๊ทผ๋ณธ ์์ธ ๋ถ์์ ์ํ ๊ท์คํ ์๊ฐ์ ํ๋ณดํ ์ ์์ต๋๋ค. ํ ๊ธ ์ ์ด ๋ฐฉ์์ ๋ชจ๋ ์ค์ํ ๋ณ๊ฒฝ ์ฌํญ์ ํฌ ์ค์์น๋ฅผ ํฌํจํ๋ ๊ฒ์ ๋ณต์๋ ฅ ์๋ ์ํํธ์จ์ด ์ค๊ณ์ ๋ชจ๋ฒ ์ฌ๋ก์ ๋๋ค.
์ ๊ธ ์์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฆฌํฉํ ๋ง
๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ณ๊ฒฝ์ ์ข ์ข ๋ฌด์ค๋จ ๋ฆฌํฉํ ๋ง์์ ๊ฐ์ฅ ์ด๋ ค์ด ๋ถ๋ถ์ ๋๋ค. ์ํ ๋น์ ์ฅ ์๋น์ค๋ ๋ชจ๋ํ ์ ํ๋ฆฌ์ผ์ด์ ๊ตฌ์ฑ ์์์ ๋ฌ๋ฆฌ, ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ์ค์ํ ์ํ๋ฅผ ๊ด๋ฆฌํ๊ณ ๊ณตํต๋ ์ ๋ณด์ ์ง์ ์ญํ ์ ํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ๋ผ์ด๋ธ ํ๊ฒฝ์์ ์คํค๋ง ์์ ์ด๋ ๋ฐ์ดํฐ ๋ณํ์ ๋์ ํ๋ ค๋ฉด ์ ์คํ ์ํ์ฑ, ๊ฐ๋ ฅํ ํธํ์ฑ ๊ด๋ฆฌ, ๊ทธ๋ฆฌ๊ณ ํ ์ด๋ธ ์ ๊ธ, ์ฐ๊ธฐ ๊ฒฝํฉ ๋๋ ์ผ๊ด์ฑ ์๋ ์ฝ๊ธฐ๋ฅผ ๋ฐฉ์งํ๋ ์ ๋ต์ด ํ์ํฉ๋๋ค.
์์ ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฆฌํฉํ ๋ง์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ด์ ๋ฒ์ ๊ณผ ์ ๋ฒ์ ์ด ๋์์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ํธ ์์ฉํ ์ ์๋๋ก ๋ณด์ฅํด์ผ ํฉ๋๋ค. ์ด๋ ํนํ ์ฆ๋ถ ๋ฐฐํฌ๋ ๋ธ๋ฃจ-๊ทธ๋ฆฐ ๋ฐฐํฌ ๋๋ ๊ธฐ๋ฅ ํ ๊ธ๊ณผ ๊ฐ์ ๊ธฐ์ ์ ์ฌ์ฉํ ๋ ๋งค์ฐ ์ค์ํฉ๋๋ค. ์ด๋ฅผ ์ํด์๋ ์คํค๋ง ๋ง์ด๊ทธ๋ ์ด์ ๋๊ตฌ, ๋น๋๊ธฐ ๋ณํ, ๊ทธ๋ฆฌ๊ณ ์ด์ ๋ฒ์ ๊ณผ ํธํ๋๋ ๋ฐ์ดํฐ ์ก์ธ์ค ํจํด์ด ํ์์ ์ ๋๋ค.
์ด ์น์ ์์๋ ๊ฐ๋ฐ์๊ฐ ์์คํ ์ ์คํ๋ผ์ธ์ผ๋ก ์ ํํ์ง ์๊ณ ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ ๋ฐ์ดํธํ๊ณ ์ฌ๊ตฌ์ฑํ ์ ์๋๋ก ํ๋ ๊ธฐ์ ์ ์ดํด๋ด ๋๋ค. ์ฌ๊ธฐ์๋ ํ์ฅ-์ถ์ ํจํด, ์๋ ํ ์ด๋ธ ์ฌ์ฉ, ๋น๋๊ธฐ ๋ฐฑํ๋ง, ๊ทธ๋ฆฌ๊ณ ์ ํ ์ค์ ๊ธฐ์กด ๋ฐ์ดํฐ ๊ตฌ์กฐ์ ์ ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ฅผ ๋๊ธฐํํ๋ ๋ฐฉ๋ฒ ๋ฑ์ด ํฌํจ๋ฉ๋๋ค.
์์ ํ ์คํค๋ง ๋ณ๊ฒฝ์ ์ํ ํ์ฅ-์ถ์ ํจํด
ํ์ฅ-์ถ์ ํจํด์ ๋ผ์ด๋ธ ์์คํ ์ ์ค๋จํ์ง ์๊ณ ์คํค๋ง ๋ง์ด๊ทธ๋ ์ด์ ์ ์ํํ๋ ์์ ์ ์ด๊ณ ์์ ํ ๋ฐฉ๋ฒ์ ๋๋ค. ์ด ์ ๊ทผ ๋ฐฉ์์ ์ ์คํค๋ง ์์์ ์ถ๊ฐ์ ๊ธฐ์กด ์์์ ์ ๊ฑฐ๋ฅผ ๋ถ๋ฆฌํ๋ ๋ฐ ๊ธฐ๋ฐํฉ๋๋ค. ๋จผ์ , ํ์ฅ ๋จ๊ณ์์๋ ์ ํ๋, ์ธ๋ฑ์ค ๋๋ ํ ์ด๋ธ์ด ์ถ๊ฐ๋ฉ๋๋ค. ์ด ๋จ๊ณ์์๋ ๊ธฐ์กด ๊ตฌ์กฐ์ ์ ๊ตฌ์กฐ๊ฐ ๊ณต์กดํ๋ฉฐ, ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ ๊ตฌ์กฐ ๋ชจ๋์ ์ฐ๊ธฐ ์์ ์ ์ํํ๋๋ก ์ ๋ฐ์ดํธ๋ฉ๋๋ค.
์ดํ ์์คํ ์ ๋ ์คํค๋ง ๋ฒ์ ์ด ๋ชจ๋ ์ง์๋๋ ์ ํ๊ธฐ์ ์ง์ ํฉ๋๋ค. ์ ์ฝ๋๋ ๊ธฐ์กด ๊ตฌ์กฐ์์ ํธํ์ฑ์ ์ ์งํ๋ฉด์ ์ ์คํค๋ง ๊ตฌ์ฑ ์์์์ ์ฝ๊ธฐ๋ฅผ ์์ํฉ๋๋ค. ์ด๋ฅผ ํตํด ์์คํ ์์ ์ฑ์ ์ํฅ์ ์ฃผ์ง ์๊ณ ์ค์ ํธ๋ํฝ ํ๊ฒฝ์์ ์ ํจ์ฑ ๊ฒ์ฌ๋ฅผ ์ํํ ์ ์์ต๋๋ค.
๋ง์ง๋ง์ผ๋ก, ๊ณ์ฝ ๋จ๊ณ์์๋ ์๋ก์ด ๋ก์ง์ด ์์ ํ ์ฑํ๋๊ณ ํ ์คํธ๋ ํ ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ์์๋ฅผ ์ ๊ฑฐํฉ๋๋ค. ์ด๋ฌํ ๋จ๊ณ์ ์ ๊ทผ ๋ฐฉ์์ ์ข ์์ฑ ์์์ด๋ ๋ฐ์ดํฐ ์์ค ์ํ์ ์ต์ํํฉ๋๋ค. ์์ ํธํ์ฑ์ ๊ณ ๋ คํ์ฌ ๋ณ๊ฒฝ ์ฌํญ์ ์ค๊ณํ๊ณ ํ๊ดด์ ์ธ ์์ ์ ์ง์ฐ์ํด์ผ๋ก์จ ํ์ ์ฐ์์ฑ์ ์ ์งํ๊ณ ํ ์ด๋ธ ์ ๊ธ์ด๋ ํธ๋ํฝ ์ฐจ๋จ์ ๋ฐฉ์งํฉ๋๋ค.
๋ณ๋ ฌ ๋ฐ์ดํฐ ๊ฒ์ฆ์ ์ํ ์๋ ํ ์ด๋ธ
์๋ ํ ์ด๋ธ์ ๋์ ํ ์ด๋ธ์ ๊ตฌ์กฐ๋ฅผ ๋ฏธ๋ฌ๋งํ๋ ๋ณด์กฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ ์ด๋ธ๋ก, ๊ธฐ์กด ์์คํ ์ ๋ฐฉํดํ์ง ์๊ณ ์๋ก์ด ๋ฐ์ดํฐ ๋ชจ๋ธ์ด๋ ์คํค๋ง ๋ ์ด์์์ ํ๋ก๋์ ํ๊ฒฝ์์ ํ ์คํธํ ์ ์๋๋ก ํฉ๋๋ค. ๋ฆฌํฉํ ๋ง ๊ณผ์ ์์ ๋ฐ์ดํฐ๋ ๊ธฐ๋ณธ ํ ์ด๋ธ๊ณผ ์๋ ํ ์ด๋ธ ๋ชจ๋์ ๊ธฐ๋ก๋์ง๋ง, ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ธฐ๋ณธ ํ ์ด๋ธ์์ ์ฌ์ฉ์์๊ฒ ์๋น์ค๋ฅผ ๊ณ์ ์ ๊ณตํฉ๋๋ค. ์ด๋ฌํ ์ด์ค ์ฐ๊ธฐ ์ ๋ต์ ํตํด ํ์ ์๋ก์ด ๊ตฌ์กฐ๊ฐ ์ค์ ๋ฐ์ดํฐ์ ์ด๋ป๊ฒ ๋์ํ๋์ง ์ค์๊ฐ์ผ๋ก ๊ด์ฐฐํ ์ ์์ต๋๋ค.
์๋ ํ ์ด๋ธ์ ์๋ก์ด ์ธ๋ฑ์ค, ์ ๊ทํ ์ ๋ต ๋๋ ๋ฐ์ดํฐ ๋ถํ ๋ฐฉ์์ ํ ์คํธํ๋ ๋ฐ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ด์ ํธ๋ํฝ์ ์ง์ ์ํฅ์ ์ฃผ์ง ์์ผ๋ฏ๋ก ๋ผ์ด๋ธ ์ฑ๋ฅ์ ์ํฅ์ ์ฃผ์ง ์๊ณ ๋ถ์, ๋ฒค์น๋งํน ๋ฐ ๋ฐฑํ๋ง์ด ๊ฐ๋ฅํฉ๋๋ค. ๋ฐ๋ผ์ ๋ณต์กํ ๋ณ๊ฒฝ ์ฌํญ์ ๊ฒ์ฆํ๊ฑฐ๋ ์ ์ฒด ๋ฐ์ดํฐ ๋ชจ๋ธ ์ ํ์ ์ค๋นํ๋ ๋ฐ ์ด์์ ์ ๋๋ค.
์๋ ํ ์ด๋ธ์ ์ต์ ์ํ๋ก ์ ์งํ๋ ค๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ชจ๋ ์ฝ์ ๋๋ ์ ๋ฐ์ดํธ ์์ ์ค์ ์๋ณธ ๊ตฌ์กฐ์ ์๋ ๊ตฌ์กฐ ๋ชจ๋์ ๋ฐ์ดํฐ๋ฅผ ์จ์ผ ํฉ๋๋ค. ํธ๋ฆฌ๊ฑฐ, ์ด๋ฒคํธ ๊ธฐ๋ฐ ๋ฐ์ดํฐ ํ์ดํ๋ผ์ธ ๋๋ ์๋ ์ด์ค ์ฐ๊ธฐ ๋ก์ง๊ณผ ๊ฐ์ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ ์ด๋ฅผ ๋ฌ์ฑํ ์ ์์ต๋๋ค. ๊ฒ์ฆ์ด ์๋ฃ๋๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ์ ์๋ ํ ์ด๋ธ์์ ๋ฐ์ดํฐ๋ฅผ ์ฝ๋๋ก ๋ง์ด๊ทธ๋ ์ด์ ํ์ฌ ์ ํ์ ์๋ฃํ ์ ์์ต๋๋ค.
๋น๋๊ธฐ์ ์ผ๋ก ๋ฐ์ดํฐ ๋ฐฑํ๋ง
๋น๋๊ธฐ ๋ฐฑํ๋ง์ ๊ธฐ๋ณธ ์ ํ๋ฆฌ์ผ์ด์ ์ํฌ๋ก๋์ ์ํฅ์ ์ฃผ์ง ์๊ณ ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ๋๋ ํ ์ด๋ธ์ ๊ณผ๊ฑฐ ๋ฐ์ดํฐ๋ฅผ ์ฑ์ฐ๋ ํ๋ก์ธ์ค์ ๋๋ค. ์ด ๊ธฐ์ ์ ํ์ฅ-์ถ์ ๋ชจ๋ธ์ ์ฑํํ๊ฑฐ๋ ์๋ ํ ์ด๋ธ์ ์ค๋นํ ๋ ํ์์ ์ ๋๋ค. ๋ฐฑ๊ทธ๋ผ์ด๋์์ ์คํ๋๋ฏ๋ก ์ฐ๊ธฐ ์ ๊ธ์ ๋ฐฉ์งํ๊ณ ์ฌ์ฉ์ ์ฑ๋ฅ์ ์ํฅ์ ๋ฏธ์น์ง ์์ต๋๋ค.
์ด ํ๋ก์ธ์ค๋ ์ผ๋ฐ์ ์ผ๋ก ๊ธฐ์กด ๋ ์ฝ๋๋ฅผ ์ฝ๊ณ ๋ณํ๋ ๋ฒ์ ์ ์ ์คํค๋ง์ ์ฐ๋ ์ ๋ด ์์ ๋๋ ๋ฐฑ๊ทธ๋ผ์ด๋ ์์ ์๋ฅผ ํฌํจํฉ๋๋ค. ๋ฐฑํ๋ง์ ๋ฆฌ์์ค ๊ณ ๊ฐ์ ๋ฐฉ์งํ๊ธฐ ์ํ ์กฐ์ ๋ฉ์ปค๋์ฆ์ ์ฌ์ฉํ์ฌ ์ผ๊ด์ ์ผ๋ก ์ํํ ์ ์์ต๋๋ค. ์ด๋ฅผ ํตํด ํ๋ก์ธ์ค๋ ๋ฐ์ดํฐ์ธํธ ํฌ๊ธฐ์ ๋ฐ๋ผ ํ์ฅ๋๊ณ ์์คํ ๋ถํ์ ๋ฐ๋ผ ์ผ์ ์ค์ง ๋๋ ์ฌ๊ฐ๋ ์ ์์ต๋๋ค.
์ด ๊ธฐ๊ฐ ๋์ ์ด์ค ์ฐ๊ธฐ ๋ก์ง์ ์ ํ๋ฆฌ์ผ์ด์ ์์ ์์ฑ๋ ์ ๋ ์ฝ๋๊ฐ ์ด์ ๊ตฌ์กฐ์ ์ ๊ตฌ์กฐ ๋ชจ๋์ ์ฆ์ ์ ์ฅ๋๋๋ก ๋ณด์ฅํฉ๋๋ค. ๋ฐฑํ๋ง์ด ์๋ฃ๋๊ณ ์ผ๊ด์ฑ ๊ฒ์ฌ๋ฅผ ํตํด ๋ฌด๊ฒฐ์ฑ์ด ํ์ธ๋๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ํ๋ ๋๋ ํ ์ด๋ธ๋ก ์ ํํ ์ ์์ต๋๋ค.
์์ ํ ๋ฐฑํ๋ง์ ์ํด์๋ ์ ์คํ ๊ณํ, ๋ชจ๋ํฐ๋ง ๋ฐ ๋ก๊น ์ด ํ์์ ์ ๋๋ค. ์ค๋ฅ๋ฅผ ํฌ์ฐฉํ๊ณ , ์ฌ์๋๋ฅผ ์ํํ๊ฒ ์ฒ๋ฆฌํ๋ฉฐ, ์ฑ๋ฅ์ ์ถ์ ํด์ผ ํฉ๋๋ค. ๋น๋๊ธฐ ๋ฐฑํ๋ง์ ์ฌ๋ฐ๋ฅด๊ฒ ์คํํ๋ฉด ๋๊ท๋ชจ ๋ฐ์ดํฐ ์ ์ฅ์๋ ๋ค์ดํ์ ์์ด ํ์ฅํ ์ ์์ต๋๋ค.
๋ผ์ด๋ธ ๋ฐ์ดํฐ ๋ณํ
๋ผ์ด๋ธ ๋ฐ์ดํฐ ๋ณํ์ ์ ํ๋ฆฌ์ผ์ด์ ์ด ์คํ ์ค์ธ ๋์ ๋ฐ์ดํฐ์ ๊ตฌ์กฐ, ์๋ฏธ ๋๋ ๊ตฌ์ฑ์ ๋ณ๊ฒฝํ๋ ์์ ์ ๋๋ค. ์ ์ง ๊ด๋ฆฌ ๊ธฐ๊ฐ์ด ํ์ํ ๊ธฐ์กด ์ผ๊ด ๋ง์ด๊ทธ๋ ์ด์ ๊ณผ ๋ฌ๋ฆฌ, ๋ผ์ด๋ธ ๋ณํ ์ ๋ต์ ์ฌ์ฉํ๋ฉด ๋ฐฑ๊ทธ๋ผ์ด๋์์ ๋ฐ์ดํฐ ๋ณ๊ฒฝ ์ฌํญ์ ์ ์ง์ ์ผ๋ก ์ ์ฉํ๋ฉด์๋ ์์คํ ์ด ์์ ํ ์๋ ์ํ๋ฅผ ์ ์งํ ์ ์์ต๋๋ค. ์ด๋ ํนํ ๋ค์ดํ์์ด ํ์ฉ๋์ง ์๋ ๊ณ ๊ฐ์ฉ์ฑ ํ๊ฒฝ์์ ๋งค์ฐ ์ค์ํฉ๋๋ค.
์ด๋ฌํ ๋ณํ์ ์๋ก ์์ฑ๋ ๋ฐ์ดํฐ์ ๊ธฐ์กด ๋ ์ฝ๋๋ฅผ ๋ชจ๋ ๊ณ ๋ คํด์ผ ํฉ๋๋ค. ์ด์ค ์ฐ๊ธฐ ํจํด, ์ค์๊ฐ ๋๊ธฐํ ๋๊ตฌ, ๊ทธ๋ฆฌ๊ณ ๋ฒ์ ๊ด๋ฆฌ API๋ ์ด๋ฌํ ๋ณต์ก์ฑ์ ๊ด๋ฆฌํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ ์ ์ด์ ํ์๊ณผ ์ ํ์ ๋ชจ๋์ ๋ฐ์ดํฐ๋ฅผ ์ดํดํ๊ณ ์ฒ๋ฆฌํ ์ ์์ด์ผ ํ๋ฉฐ, ์ด๋ ์ข ์ข ์์ ๋ณํ ๋ก์ง์ด๋ ์ด๋ํฐ๋ฅผ ํ์๋ก ํฉ๋๋ค. ์ผ๊ด์ฑ๊ณผ ๋ฉฑ๋ฑ์ฑ์ ๋ณ๊ฒฝ์ผ๋ก ์ธํ ์ถฉ๋์ด๋ ๋ฐ์ดํฐ ์์์ ๋ฐฉ์งํ๋ ๋ฐ ์ค์ํ ์ญํ ์ ํฉ๋๋ค.
์ด ์น์ ์์๋ ๋ผ์ด๋ธ ์์คํ ์ด ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ฅผ ์์ ํ๊ฒ ๋ฐ์ ์ํฌ ์ ์๋๋ก ํ๋ ์ฃผ์ ๋ฐฉ๋ฒ์ ์ดํด๋ด ๋๋ค. ์ฌ๊ธฐ์๋ ์ฌ๋ฌ ํํ์ ์ฐ๊ธฐ, ๋ณ๊ฒฝ ๋ฐ์ดํฐ ์บก์ฒ๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ๋ฌ ๋ฒ์ ์์ ๋ฐ์ดํฐ๋ฅผ ๋ฏธ๋ฌ๋ง, ๊ทธ๋ฆฌ๊ณ ๊ธฐ๋ณธ ์ ์ฅ์ ์ฐจ์ด๋ฅผ ์ถ์ํํ๋ ๋ฒ์ ๋ณ API ๋ ธ์ถ ๋ฑ์ด ํฌํจ๋ฉ๋๋ค.
์ด์ ๋ฐ ์ ๋ฐ์ดํฐ ๊ตฌ์กฐ์ ๋ํ ์ด์ค ์ฐ๊ธฐ
์ด์ค ์ฐ๊ธฐ๋ ํ์ฑ ์ ํ๋ฆฌ์ผ์ด์ ๋์์ ๋ฐฉํดํ์ง ์๊ณ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ๋ฐ์ ์ํฌ ๋ ์ฌ์ฉ๋๋ ๊ธฐ๋ณธ ๊ธฐ๋ฒ์ ๋๋ค. ์ด ํจํด์์๋ ๋ฐ์ดํฐ๋ฅผ ์์ ํ๋ ๋ชจ๋ ์์ ์ด ๊ธฐ์กด ์คํค๋ง์ ์ ์คํค๋ง ๋ชจ๋์ ๋์์ ์ ์ฉ๋ฉ๋๋ค. ์ด๋ฅผ ํตํด ๋ ํํ์ด ๋๊ธฐํ ์ํ๋ฅผ ์ ์งํ๊ณ ์ ํ ์ค์ ๋ฐ์ดํฐ๊ฐ ์์ค๋๊ฑฐ๋ ๊ณ ์๊ฐ ๋์ง ์์ต๋๋ค.
์ด์ค ์ฐ๊ธฐ ๋ก์ง์ โโ๊ตฌํํ๋ ค๋ฉด ์ ์คํ ์ค์ผ์คํธ๋ ์ด์ ์ด ํ์ํฉ๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ฅผ ๋ชจ๋ ์ธ์ํ๊ณ ์ผ๊ด์ฑ์ ์ ์งํด์ผ ํฉ๋๋ค. ์ด๋ฅผ ์ํด ์ฐ๊ธฐ ๋ก์ง์ โโ์์คํ ์ ๋๋จธ์ง ๋ถ๋ถ์์ ์ถ์ํํ๋ ๊ณต์ ์ฐ๊ธฐ ๊ณ์ธต์ด๋ ์๋น์ค๋ฅผ ๋์ ํ๋ ๊ฒ์ด ์ข ์ข ํ์ํฉ๋๋ค. ์ฐ๊ธฐ ์์ ์ ๋ฉฑ๋ฑ์ฑ์ ๊ฐ์ ธ์ผ ํฉ๋๋ค. ์ฆ, ์ฅ์ ๋ฐ์ ์ ์๋์น ์์ ๊ฒฐ๊ณผ ์์ด ์์ ํ๊ฒ ์ฌ์๋ํ ์ ์์ด์ผ ํฉ๋๋ค.
๋ชจ๋ํฐ๋ง๊ณผ ๋ก๊น ๋ํ ํ์์ ์ ๋๋ค. ํ๋์ ์ฐ๊ธฐ ์์ ์ด ์คํจํ๊ณ ๋ค๋ฅธ ์ฐ๊ธฐ ์์ ์ด ์ฑ๊ณตํ๋ ๊ฒฝ์ฐ, ๋ถ์ผ์น๋ฅผ ์์ ํ๊ธฐ ์ํด ๊ฒฝ๊ณ ๋ฐ ๋ณด์ ๋ฉ์ปค๋์ฆ์ ํธ๋ฆฌ๊ฑฐํด์ผ ํฉ๋๋ค. ์ด์ค ์ฐ๊ธฐ๊ฐ ์์ ์ ์ผ๋ก ์ํ๋๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ๊ตฌ์กฐ์์ ์ฝ๊ธฐ๋ฅผ ์์ํ ์ ์์ต๋๋ค. ์ด ์์ ์์ ์ด์ ์คํค๋ง๋ ๋ ์ด์ ์ฌ์ฉ๋์ง ์์ผ๋ฉฐ, ํ์ ์ ๋ฆฌ ๋จ๊ณ์์ ์ ๊ฑฐ๋ ์ ์์ต๋๋ค.
์ค์๊ฐ ๋๊ธฐํ๋ฅผ ์ํ ๋ณ๊ฒฝ ๋ฐ์ดํฐ ์บก์ฒ(CDC)
๋ณ๊ฒฝ ๋ฐ์ดํฐ ์บก์ฒ(CDC)๋ ๋ฐ์ดํฐ ์์ค์ ๋ณ๊ฒฝ ์ฌํญ์ ์ค์๊ฐ์ผ๋ก ์บก์ฒํ๊ณ ์คํธ๋ฆฌ๋ฐํ๋ ๋ฐฉ๋ฒ์ ๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ ์ CDC๋ฅผ ํตํด ์ฝ์ , ์ ๋ฐ์ดํธ ๋ฐ ์ญ์ ๊ฐ ๋ฐ์ํ๋ ์ฆ์ ์ด๋ฅผ ๊ด์ฐฐํ๊ณ ์ด๋ฌํ ๋ณ๊ฒฝ ์ฌํญ์ ์ ๋์์ด๋ ๋ณํ๋ ํํ์ ์ ์ฉํ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ CDC๋ ์ฃผ์ ์ ํ๋ฆฌ์ผ์ด์ ์ํฌํ๋ก๋ฅผ ์ค๋จํ์ง ์๊ณ ์ฌ๋ฌ ์์คํ ๋๋ ์คํค๋ง์์ ์ค์๊ฐ ๋ฐ์ดํฐ ๋ณํ์ ๋๊ธฐํํ๋ ๋ฐ ์ด์์ ์ธ ์๋ฃจ์ ์ ๋๋ค.
CDC๋ ์ผ๋ฐ์ ์ผ๋ก ๋ณ๊ฒฝ ์ฌํญ์ ๊ฐ์งํ์ฌ ๋ฉ์์ง ํ ๋๋ ์ฒ๋ฆฌ ํ์ดํ๋ผ์ธ์ ๊ฒ์ํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ก๊ทธ ๋๋ ํธ๋ฆฌ๊ฑฐ๋ฅผ ์ฌ์ฉํ์ฌ ๊ตฌํ๋ฉ๋๋ค. ์ด๋ฌํ ๋ณ๊ฒฝ ์ฌํญ์ ์ด์ ํ์์ ์ ์คํค๋ง์ ๋งคํํ๊ณ ๋์ ๊ตฌ์กฐ์ ๊ธฐ๋กํ๋ ๋ณํ ์๋น์ค์์ ์ฌ์ฉ๋ ์ ์์ต๋๋ค. Debezium, Apache Kafka ๋๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ธฐ๋ฐ ๋ณต์ ๊ธฐ๋ฅ๊ณผ ๊ฐ์ ๊ธฐ์ ์ด ์ด ๋ชจ๋ธ์ ์ง์ํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค.
๋ฆฌํฉํ ๋ง ๋งฅ๋ฝ์์ CDC๋ ๊ฐ๋ฐํ์ด ์๋ก์ด ๋ฐ์ดํฐ ๋ชจ๋ธ์ ์ ์ง์ ์ผ๋ก ๋์ ํ ์ ์๋๋ก ์ง์ํฉ๋๋ค. CDC๋ ๋ณ๋ ฌ ์ฝ๊ธฐ, ์ค์๊ฐ ๊ฒ์ฆ ๋ฐ ๋กค๋ฐฑ ์ ๋ต์ ์ง์ํฉ๋๋ค. ์ฒดํฌ์ฌ ๊ฒ์ฆ ๋ฐ ์คํค๋ง ๋ชจ๋ํฐ๋ง๊ณผ ํจ๊ป ์ฌ์ฉํ๋ฉด ๋ ์์คํ ๋ชจ๋์์ ๋ฐ์ดํฐ ์ผ๊ด์ฑ์ ๊ฐ๋ ฅํ๊ฒ ๋ณด์ฅํฉ๋๋ค.
๋ฐ์ดํฐ ์ก์ธ์ค๋ฅผ ์ํ ๋ฒ์ ์ด ์ง์ ๋ API ์๋ํฌ์ธํธ
๋ฒ์ ์ด ์ง์ ๋ API๋ ์์ ์ ์ธ ์ธํฐํ์ด์ค ๋ค์ ๊ตฌ์กฐ์ ๋ฐ์ดํฐ ๋ณ๊ฒฝ ์ฌํญ์ ์ถ์ํํ๋ ๊น๋ํ ๋ฐฉ๋ฒ์ ์ ๊ณตํฉ๋๋ค. ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ณ๊ฒฝ ์ฌํญ์ ๋ชจ๋ ์ฌ์ฉ์์๊ฒ ์ง์ ๋ ธ์ถํ๋ ๋์ , API๋ ๋ ๋ฆฝ์ ์ผ๋ก ์งํํ ์ ์๋ ๊ฐ์ ์ ์ธ ๊ณ์ธต์ ์ ๊ณตํฉ๋๋ค. ์ฌ๋ฌ API ๋ฒ์ ์ ์ ์งํจ์ผ๋ก์จ ์์คํ ์ ๋์ผํ ๋ฐ์ดํฐ์ ๋ค์ํ ํํ์ ์ฌ๋ฌ ํด๋ผ์ด์ธํธ์๊ฒ ์ ๊ณตํ ์ ์์ผ๋ฉฐ, ์ ํ ๊ณผ์ ์ ๋ฐ์ ๊ฑธ์ณ ํ์ ํธํ์ฑ์ ๋ณด์ฅํฉ๋๋ค.
์๋ฅผ ๋ค์ด ๋ฆฌํฉํฐ๋ง์ผ๋ก ์ธํด ์๋ก์ด ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ ์ถ๋ ฅ ํ์์ด ๋์
๋๋ฉด ์๋ก์ด API ๋ฒ์ (์: /v2/orders) ์ด ๋ณ๊ฒฝ ์ฌํญ์ ๋
ธ์ถํ ์ ์์ต๋๋ค. /v1/orders ์ด์ ๊ณผ ๋์ผํ๊ฒ ์๋ํฉ๋๋ค. ํด๋ผ์ด์ธํธ๋ ํ ๊ธ, ๋ผ์ฐํ
๋ก์ง ๋๋ ์กฐ์ ๋ ๋ฐฐํฌ๋ฅผ ํตํด ์ ์ง์ ์ผ๋ก ์ ๋ฒ์ ์ผ๋ก ๋ง์ด๊ทธ๋ ์ด์
๋ฉ๋๋ค. ์ด ๋ฐฉ๋ฒ์ ๋ด๋ถ ๋ณ๊ฒฝ ์ฌํญ๊ณผ ์ธ๋ถ ์ข
์์ฑ์ ๋ถ๋ฆฌํ๊ณ ๋ฐ์ดํฐ ์งํ์ ํด๋ผ์ด์ธํธ ํตํฉ ๊ฐ์ ๊ธด๋ฐํ ๊ฒฐํฉ์ ๋ฐฉ์งํฉ๋๋ค.
๋ฒ์ ์ด ๊ด๋ฆฌ๋๋ API๋ฅผ ๊ด๋ฆฌํ๋ ค๋ฉด ์๊ฒฉํ ๊ท์จ์ด โโํ์ํฉ๋๋ค. ๊ฐ ๋ฒ์ ์ ๋ ๋ฆฝ์ ์ผ๋ก ์ ์ง ๊ด๋ฆฌ๋๊ณ ํ ์คํธ๋์ด์ผ ํฉ๋๋ค. ์ง์ ์ค๋จ ์ ์ฑ ์ ๋ช ํํ๊ฒ ์ ๋ฌ๋์ด์ผ ํ๋ฉฐ, ๋ชจ๋ํฐ๋ง์ ํตํด ์ด๋ค ํด๋ผ์ด์ธํธ๊ฐ ์ด๋ค ๋ฒ์ ์ ์ฌ์ฉํ๊ณ ์๋์ง ์ถ์ ํด์ผ ํฉ๋๋ค. ๋ฒ์ ์ด ๊ด๋ฆฌ๋๋ API๋ฅผ ์ฌ๋ฐ๋ฅด๊ฒ ์ฌ์ฉํ๋ฉด ์ค๋จ ์๋ ์๋น์ค๋ฅผ ์ ์งํ๋ฉด์ ์ ์ฐํ ๋ฐ์ดํฐ ๋ชจ๋ธ ์งํ๊ฐ ๊ฐ๋ฅํฉ๋๋ค.
์๋น์ค ์งํฅ ๋ฆฌํฉํ ๋ง ์ ๋ต
์์คํ ์ ๋ณต์ก์ฑ์ด ์ฆ๊ฐํจ์ ๋ฐ๋ผ ๋ชจ๋๋ฆฌ์ ์ํคํ ์ฒ์์ ์๋น์ค ์งํฅ ๋๋ ๋ง์ดํฌ๋ก์๋น์ค ๊ธฐ๋ฐ ์ํคํ ์ฒ๋ก์ ์ ํ์ ๋ฆฌํฉํ ๋ง์ ์ ๋ต์ ๋ชฉํ๊ฐ ๋ฉ๋๋ค. ์ด๋ฌํ ์ ํ์ ๋ชจ๋์ฑ, ๋ฐฐํฌ ์ ์ฐ์ฑ, ๊ทธ๋ฆฌ๊ณ ํ์ฅ์ฑ์ ํฅ์์ํต๋๋ค. ํ์ง๋ง ํนํ ์์คํ ์ด์ ์ค์ ๋ณ๊ฒฝ์ด ๋ฐ์ํ ๊ฒฝ์ฐ ์ํ๋ ๋ฐ์ํฉ๋๋ค. ์๋น์ค ์งํฅ ๋ฆฌํฉํ ๋ง์ ํตํด ํ์ ์ด์ ์ค๋จ ์์ด ๊ธฐ๋ฅ์ ๋ถ๋ฆฌํ๊ณ , ์ข ์์ฑ์ ์ค์ด๋ฉฐ, ์์คํ ์ ๋จ๊ณ๋ณ๋ก ๋ฐ์ ์ํฌ ์ ์์ต๋๋ค.
์ฑ๊ณต์ ์ธ ์๋น์ค ์งํฅ ๋ฆฌํฉํ ๋ง์ ๊ธฐ์กด ์ฝ๋ ๊ฒฝ๋ก์ ์ ์ฝ๋ ๊ฒฝ๋ก๋ฅผ ๋ณ๋ ฌ๋ก ์คํํ๊ณ , ๋ชจ๋๋ฆฌ์ค์์ ์ ์๋น์ค๋ก ์ฑ ์์ ์ ์ง์ ์ผ๋ก ์ด์ ํ๋ ๋ฐ ๋ฌ๋ ค ์์ต๋๋ค. ์คํธ๋ญ๊ธ๋ฌ ํผ๊ทธ ํจํด ๋ฐ ํ๋ก์ ๊ธฐ๋ฐ ๋ผ์ฐํ ๊ณผ ๊ฐ์ ํต์ฌ ๊ธฐ์ ์ ๋ง์ด๊ทธ๋ ์ด์ ์ด ์ ์ง์ ์ด๊ณ ๊ฐ์ญ์ ์ผ๋ก ์ํ๋๋๋ก ๋ณด์ฅํฉ๋๋ค. ๋ณ๋ ฌ ์คํ, ๋คํฌ ๋ฐ์นญ, ํต๊ณ์ ๋น๊ต์ ๊ฐ์ ๊ฒ์ฆ ๋ฉ์ปค๋์ฆ์ ์ ํ ๊ณผ์ ์์ ์ ํ์ฑ์ ์ ์งํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
์ด ์น์ ์์๋ ์ํ์ ์ต์ํํ๊ณ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ์ฉ์ฑ์ ์ ์งํ๋ฉด์ ํต์ ๋๊ณ ๊ด์ฐฐ ๊ฐ๋ฅํ ๋ฐฉ์์ผ๋ก ๋ถ์ฐ ์์คํ ์ผ๋ก ์งํํ๋ ๋ฐฉ๋ฒ์ ์ดํด๋ด ๋๋ค.
๋ชจ๋๋ฆฌ์ค์ฉ ์คํธ๋ญ๊ธ๋ฌ ๋ฌดํ๊ณผ ํจํด
์คํธ๋ญ๊ธ๋ฌ ํผ๊ทธ ํจํด์ ๋ชจ๋๋ฆฌ์ ์ ํ๋ฆฌ์ผ์ด์ ๊ตฌ์ฑ ์์๋ฅผ ๋ ๋ฆฝ์ ์ผ๋ก ๋ฐฐํฌ ๊ฐ๋ฅํ ์๋น์ค๋ก ์ ์ง์ ์ผ๋ก ๊ต์ฒดํ ์ ์๋๋ก ํ๋ ์ํคํ ์ฒ ์ ๋ต์ ๋๋ค. ํธ์คํธ ํธ๋ฆฌ ์ฃผ๋ณ์์ ์คํธ๋ญ๊ธ๋ฌ ๋ฉ๊ตด์ด ์๋ผ๋ ๋ชจ์ต์์ ์๊ฐ์ ๋ฐ์ ์ด ์ ๊ทผ ๋ฐฉ์์ ๊ธฐ์กด ์ฝ๋์ ํจ๊ป ์๋ก์ด ๊ธฐ๋ฅ์ ์ ์ง์ ์ผ๋ก ๊ตฌ์ถํ์ฌ ๊ถ๊ทน์ ์ผ๋ก ๊ธฐ์กด ์์คํ ์ ํ๊ธฐํ ์ ์๋๋ก ํฉ๋๋ค.
์คํธ๋ญ๊ธ๋ฌ ํผ๊ทธ ํจํด์ ์ฌ์ฉํ ๋ฆฌํฉํ ๋ง์ ๋ชจ๋๋ฆฌ์ค์์ ๊ฒฉ๋ฆฌ ๊ฐ๋ฅํ ๊ฐ๋ณ ๊ธฐ๋ฅ๋ค์ ์๋ณํ๋ ๊ฒ์ผ๋ก ์์๋ฉ๋๋ค. ์ด๋ฌํ ๊ธฐ๋ฅ๋ค์ ๋ ๋ฆฝํ ์๋น์ค๋ก ์ฌ๊ตฌํ๋๊ณ , ๋ณ๋ ฌ๋ก ๋ฐฐํฌ๋๋ฉฐ, ์ญ๋ฐฉํฅ ํ๋ก์๋ ์ ํ๋ฆฌ์ผ์ด์ ๊ฒ์ดํธ์จ์ด์ ๊ฐ์ ๋ผ์ฐํ ๋ก์ง์ ํตํด ํธ์ถ๋ฉ๋๋ค. ๊ธฐ์กด ์์คํ ์ ๊ณ์ ์ด์๋์ง๋ง, ๋ง์ด๊ทธ๋ ์ด์ ๋ ๊ธฐ๋ฅ์ ๋ํ ์์ ํธ๋ํฝ์ ์๋ก์ด ์๋น์ค๋ก ๋ฆฌ๋๋ ์ ๋ฉ๋๋ค.
์ด ๊ธฐ์ ์ ์ฌ์ฉํ๋ฉด ํ์ ์ค์ ํธ๋ํฝ์ ์ฌ์ฉํ์ฌ ํ๋ก๋์ ํ๊ฒฝ์์ ์๋น์ค๋ฅผ ํ ์คํธํ๋ ๋์์ ํด๋ฐฑ ๊ฒฝ๋ก๋ฅผ ์ ์งํ ์ ์์ต๋๋ค. ๊ฐ ์๋น์ค๋ ๋ ๋ฆฝ์ ์ผ๋ก ๊ฒ์ฆ๋๋ฉฐ, ๋ชจ๋๋ฆฌ์ ์์คํ ์ ๊ทธ๋๋ก ์ ์ง๋๋ฏ๋ก ๋กค๋ฐฑ์ด ๊ฐ๋จํฉ๋๋ค. ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ๋ ๋ง์ ๊ธฐ๋ฅ์ด ์ ๊ฑฐ๋๋ฉด์ ๋ชจ๋๋ฆฌ์ ์์คํ ์ "๊ต์ด"๋์ด ๋์ฑ ๊น๋ํ๊ณ ๋ชจ๋ํ๋ ์ํคํ ์ฒ๋ฅผ ๊ฐ๊ฒ ๋ฉ๋๋ค.
๋ง์ดํฌ๋ก์๋น์ค์ ์ฆ๋ถ ์ถ์ถ
์ฆ๋ถ ์ถ์ถ์ ๋ชจ๋๋ฆฌ์ ์ฝ๋๋ฒ ์ด์ค๋ฅผ ๋ ๋ฆฝ์ ์ผ๋ก ๋ฐฐํฌ ๊ฐ๋ฅํ ์์ ์๋น์ค๋ก ์ ์ง์ ์ผ๋ก ๋ถ๋ฆฌํ์ฌ ๋ฆฌํฉํ ๋งํ๋ ํ๋ก์ธ์ค์ ๋๋ค. ์ ์ฒด ์ฌ์์ฑ๊ณผ ๋ฌ๋ฆฌ, ์ด ๋ฐฉ๋ฒ์ ์ ์ฒด ์ ํ๋ฆฌ์ผ์ด์ ์ ์ค๋จํ์ง ์๊ณ ์์คํ ์ ์ผ๋ถ๋ง ํ๋ํํ ์ ์์ต๋๋ค. ๋ณต์กํ ๋๋ฉ์ธ ๋ก์ง์ด๋ ์๊ฒฉํ ๊ฐ์ฉ์ฑ ์๊ตฌ ์ฌํญ์ ๊ฐ์ง ์กฐ์ง์ ์ด์์ ์ ๋๋ค.
์ฒซ ๋ฒ์งธ ๋จ๊ณ๋ ์ผ๋ฐ์ ์ผ๋ก ๋น์ฆ๋์ค ์ญ๋์ ๋ง์ถฐ ์ ํ๋ ์ปจํ ์คํธ๋ฅผ ์๋ณํ๋ ๊ฒ์ ๋๋ค. ์ด ๋๋ฉ์ธ์ ์ค์ฌ์ผ๋ก ์๋น์ค๊ฐ ์์ฑ๋์ด ๋ ๋ฆฝ์ ์ผ๋ก ๋ฐฐํฌ๋ฉ๋๋ค. ๋ชจ๋๋ฆฌ์ค์ ์ ์๋น์ค ๊ฐ์ ํต์ ์ REST, gRPC ๋๋ ๋น๋๊ธฐ ๋ฉ์์ง์ ์ฌ์ฉํ์ฌ ์ค์ ๋ ์ ์์ต๋๋ค. ์ด๊ธฐ ๋จ๊ณ์์๋ ๋ชจ๋๋ฆฌ์ค๊ฐ ์ ์๋น์ค์ ์คํ์ ์์ํ๋ ๋์์ ์ค์ผ์คํธ๋ ์ด์ ์ ์ฒ๋ฆฌํ ์ ์์ต๋๋ค.
์์ ํ ๋ง์ด๊ทธ๋ ์ด์ ์ ๋ณด์ฅํ๊ธฐ ์ํด ์ด์ค ์ฐ๊ธฐ ๋๋ ๋ฏธ๋ฌ๋ง๋ ์ฝ๊ธฐ๋ฅผ ์ฌ์ฉํ์ฌ ๋ชจ๋๋ฆฌ์ค์ ๋ง์ดํฌ๋ก์๋น์ค์ ์ถ๋ ฅ์ ๋น๊ตํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์๋ก์ด ์๋น์ค๊ฐ ๊ธฐ์กด ์๋น์ค๋ฅผ ์์ ํ ๋์ฒดํ ์ ์์ ๋๊น์ง ์ ์ฐจ์ ์ผ๋ก ๋ ๋ง์ ์ฑ ์์ด ์ด์ ๋ฉ๋๋ค. ์ด๋ฌํ ์ ๊ทผ ๋ฐฉ์์ ์ค๋จ์ ์ต์ํํ๊ณ , ๋ชจ๋์ ์ค๊ณ๋ฅผ ์ฅ๋ คํ๋ฉฐ, ๊ฐ ๋ง์ด๊ทธ๋ ์ด์ ๋จ๊ณ์์ ๊ฐ์์ฑ์ ์ ๊ณตํฉ๋๋ค.
์ํํ ์์ฒญ ๋ผ์ฐํ ์ ์ํ ํ๋ก์ ๊ณ์ธต
ํ๋ก์ ๊ณ์ธต์ ๋์ ํ๋ฉด ์กฐ์ง์ ํด๋ผ์ด์ธํธ ์ธก ์ฝ๋๋ฅผ ๋ณ๊ฒฝํ์ง ์๊ณ ๋ ๊ธฐ์กด ์๋น์ค ๊ตฌํ๊ณผ ์ ๊ท ์๋น์ค ๊ตฌํ ๊ฐ์ ์ ํ๋ฆฌ์ผ์ด์ ์์ฒญ์ ์ฌ๋ผ์ฐํ ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ์ถ์ํ ์์ค์ ์๋น์ค ์งํฅ ๋ฆฌํฉํ ๋ง์์ ์ค์ํ ์ญํ ์ ํฉ๋๋ค. ํธ๋ํฝ์ ๋ถ์ฐํ๊ณ , A/B ํ ์คํธ๋ฅผ ์ํํ๋ฉฐ, ์ฅ์ ๋ฐ์ ์ ์ ์ํ๊ฒ ๋กค๋ฐฑํ ์ ์๋ ์ ์ฐ์ฑ์ ์ ๊ณตํ๋ ๋์์ ์ฌ์ฉ์์ ์์คํ ์ ํตํฉ๋ ์ธํฐํ์ด์ค๋ฅผ ์ ๊ณตํฉ๋๋ค.
ํ๋ก์๋ NGINX, Envoy, HAProxy ๋๋ Istio์ ๊ฐ์ ์๋น์ค ๋ฉ์์ ๊ฐ์ ๊ธฐ์ ์ ์ฌ์ฉํ์ฌ ๊ตฌํํ ์ ์์ต๋๋ค. ์ด๋ฌํ ํ๋ซํผ์ ์์ฒญ ์์ฑ, ์ฌ์ฉ์ ID, ํค๋ ๋๋ ๋ฒ์ ํ๊ทธ ๊ธฐ๋ฐ์ ๊ณ ๊ธ ๋ผ์ฐํ ๊ท์น์ ์ง์ํฉ๋๋ค. ๊ฐ๋ฐ์๋ ์ด ๊ธฐ๋ฅ์ ์ฌ์ฉํ์ฌ ๋ชจ๋๋ฆฌ์ค์์ ๋ง์ดํฌ๋ก์๋น์ค๋ก ํธ๋ํฝ์ ์ ์ง์ ์ผ๋ก ์ ํํ๊ณ , ์ ์ฒด ๋ง์ด๊ทธ๋ ์ด์ ์ ์คํํ๊ธฐ ์ ์ ์๋ต์ ๊ฒ์ฆํ๊ณ ์ฑ๋ฅ์ ์ธก์ ํ ์ ์์ต๋๋ค.
๋ํ, ํ๋ก์ ๊ณ์ธต์ ๊ด์ฐฐ ๊ฐ๋ฅ์ฑ์ ์ ๊ณตํฉ๋๋ค. ์์ฒญ์ ์ค์๊ฐ์ผ๋ก ๊ธฐ๋ก, ์ถ์ ๋ฐ ๋ถ์๋ ์ ์์ต๋๋ค. ์ง์ฐ ์๊ฐ, ์ค๋ฅ์จ ๋ฐ ์๋ต ๋ถ์ผ์น๋ ๊ฒ์ฆ ํ์ดํ๋ผ์ธ์ ์ผ๋ถ๊ฐ ๋ฉ๋๋ค. ๊ฐ๋ ฅํ ํ๋ก์ ์ ๋ต์ ํตํด ์๋น์ค ์ ํ์ ๋๋๋ฆด ์ ์๊ณ , ๊ฐ์ฌ ๊ฐ๋ฅํ๋ฉฐ, ์ํ๋๊ฐ ๋ฎ์์ง๋๋ค.
์๋น์ค ๊ฐ ์ข ์์ฑ ๋ชจ๋ํฐ๋ง
์ ํ๋ฆฌ์ผ์ด์ ์ด ์ฌ๋ฌ ์๋น์ค๋ก ๋ฆฌํฉํ ๋ง๋จ์ ๋ฐ๋ผ, ๊ฐ ์๋น์ค ๊ฐ์ ์ํธ ์์กด์ฑ์ ๋์ฑ ๋ณต์กํ๊ณ ์ทจ์ฝํด์ง๋๋ค. ์ด๋ฌํ ๊ด๊ณ๋ฅผ ๋ชจ๋ํฐ๋งํ๋ ๊ฒ์ ํ ๊ตฌ์ฑ ์์์ ์ฅ์ ๊ฐ ์์คํ ์ ์ฒด์ ์ค๋จ์ผ๋ก ์ด์ด์ง๋ ๊ฒ์ ๋ฐฉ์งํ๋ ๋ฐ ํ์์ ์ ๋๋ค. ์ข ์์ฑ ๋ชจ๋ํฐ๋ง์๋ ์๋น์ค ๊ฐ ํธ์ถ ์ถ์ , ์ฑ๋ฅ ๋ณ๋ชฉ ํ์ ์ธก์ , ๊ทธ๋ฆฌ๊ณ ๋ถ์ฐ ์์คํ ์ ๋ฐ์ ์ฅ์ ์ง์ ์๋ณ์ด ํฌํจ๋ฉ๋๋ค.
Prometheus, Datadog, New Relic๊ณผ ๊ฐ์ ์ต์ ๊ด์ธก ํ๋ซํผ์ ์๋น์ค ์ข ์์ฑ์ ๋งคํํ๊ณ ํธ์ถ ๊ทธ๋ํ๋ฅผ ์๊ฐํํ ์ ์์ต๋๋ค. ์ด๋ฅผ ํตํด ํ์ ๋ฆฌํฉํ ๋ง ์ค ๋ฐ ์ดํ ์๋น์ค์ ์ํธ ์์ฉ ๋ฐฉ์์ ํ์ ํ ์ ์์ต๋๋ค. ์์ฒญ๋ฅ , ์ง์ฐ ์๊ฐ, ์ค๋ฅ์จ๊ณผ ๊ฐ์ ์งํ๋ ์๋ก์ด ๋ฌธ์ ์ ๋ํ ์กฐ๊ธฐ ๊ฒฝ๊ณ ๋ฅผ ์ ๊ณตํฉ๋๋ค.
๋ ๋ค๋ฅธ ์ค์ํ ์ธก๋ฉด์ ์ข ์์ฑ ์ํ ์ ๊ฒ์ ๋๋ค. ์๋น์ค๋ ์ ์คํธ๋ฆผ ๊ตฌ์ฑ ์์๊ฐ ์ ์ ํ๊ฒ ๋์ํ ์ ์๋๋ก ์ค๋น ์ํ, ํ์ฑ ์ํ, ๊ทธ๋ฆฌ๊ณ ์ฑ๋ฅ ์ ํ ์ํ๋ฅผ ๋ณด๊ณ ํด์ผ ํฉ๋๋ค. ์ํท ๋ธ๋ ์ด์ปค, ์ฌ์๋, ๊ทธ๋ฆฌ๊ณ ์๊ฐ ์ด๊ณผ๋ ์ข ์์ฑ ์คํจ ์ํ์ ์ํํ๋ ๋ฉ์ปค๋์ฆ์ ๋๋ค.
์๋น์ค ๊ฐ ๊ด๊ณ๋ฅผ ์ฌ์ ์ ๋ชจ๋ํฐ๋งํจ์ผ๋ก์จ ํ์ ๋ฆฌํฉํ ๋ง์ด ๊ธฐ๋ฅ์ ์ผ๋ก ์์ ์ ์ด๊ณ ๋ณต์๋ ฅ์ด ๋ฐ์ด๋๋ค๋ ํ์ ์ ๊ฐ๊ฒ ๋ฉ๋๋ค. ์ด๋ฌํ ์์ค์ ํต์ฐฐ๋ ฅ์ ์๋น์ค ์งํฅ ์ํคํ ์ฒ(SOA)๋ฅผ ์์ ํ๊ฒ ํ์ฅํ๋ ๋ฐ ํ์์ ์ ๋๋ค.
๋ณ๋ ฌ ์คํ ๊ฒ์ฆ
๋ณ๋ ฌ ์คํ ๊ฒ์ฆ์ ์กฐ์ง์ด ์ค์ ์ด์ ํ๊ฒฝ์์ ์ ๊ท ์์คํ ๊ณผ ๊ธฐ์กด ์์คํ ์ ๋น๊ตํ ์ ์๋๋ก ํ๋ ๊ฐ๋ ฅํ ํ์ง ๋ณด์ฆ ์ ๋ต์ ๋๋ค. ๋ฆฌํฉํ ๋ง ์ค์๋ ๊ตฌ์ฑ ์์ ๋๋ ์๋น์ค์ ์ด์ ๋ฒ์ ๊ณผ ์ ๋ฒ์ ์ด ๋์์ ์คํ๋ฉ๋๋ค. ํ์ง๋ง ์ ๋ขฐํ ์ ์๋ ๋ฒ์ ๋ง ์ค์๊ฐ ์ฌ์ฉ์ ํธ๋ํฝ์ ์ฒ๋ฆฌํ๋ ๋ฐ๋ฉด, ์ ๋ฒ์ ์ ์๋ ๋ชจ๋์์ ์๋ํ์ฌ ๋์ผํ ์ ๋ ฅ์ ์ฒ๋ฆฌํ์ง๋ง ๊ฒฐ๊ณผ์๋ ์ํฅ์ ๋ฏธ์น์ง ์์ต๋๋ค.
์ด ๊ธฐ์ ์ ์ฌ์ฉ์ ๋ ธ์ถ ์์ด ์ค์ ๊ฒ์ฆ์ ์ ๊ณตํฉ๋๋ค. ํนํ ์ฌ๋ฌด ๊ณ์ฐ, ์ธ์ฆ ๋ก์ง ๋๋ ๋ฐ์ดํฐ ๋ณํ ๋ฃจํด๊ณผ ๊ด๋ จ๋ ์ค์ํ ๋ฆฌํฉํ ๋ง์ ํจ๊ณผ์ ์ ๋๋ค. ์๋ก์ด ๊ตฌํ์ด ์ค์ ๋ถํ์์ ์ด๋ป๊ฒ ๋์ํ๋์ง ๊ด์ฐฐํ๊ณ ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ๊ธฐ์กด ๊ธฐ์ค๊ณผ ๋น๊ตํจ์ผ๋ก์จ ํ์ ์ ํ์ฑ์ ๊ฒ์ฆํ๊ณ , ํ๊ท๋ฅผ ๊ฐ์งํ๊ณ , ํต์ ๋ ํ ์คํธ ํ๊ฒฝ์์๋ ๋๋ฌ๋์ง ์์ ์ ์๋ ์์ธ์ ์ธ ์ํฉ์ ๋ฐ๊ฒฌํ ์ ์์ต๋๋ค.
๋ณ๋ ฌ ์คํ์ ์ ์ง์ ์ธ ์ ํ์ ๋ํ ํ์ ์ ๋์ฌ์ค๋๋ค. ๊ฒฐ๊ณผ๊ฐ ์ผ๊ด๋๊ฒ ์ผ์นํ๊ณ ์ฑ๋ฅ์ด ํ์ฉ ๊ฐ๋ฅํ ์์ค์ผ ๋, ํธ๋ํฝ์ ์ ์ง์ ์ผ๋ก ์๋ก์ด ๊ตฌํ์ผ๋ก ์ ๋ํ์ฌ ์์ ํ ํฌ๋ช ์ฑ์ ํ๋ณดํ๋ฉฐ ์ ํ์ ์๋ฃํ ์ ์์ต๋๋ค.
๋คํฌ, ์ ๊ท ์๋น์ค ์ถ์
๋คํฌ ๋ก ์นญ์ ์ฌ์ฉ์์๊ฒ ๋ ธ์ถ๋์ง ์์ ์ฑ ์๋ก์ด ์๋น์ค๋ ๊ธฐ๋ฅ์ ํ๋ก๋์ ํ๊ฒฝ์ ๋ฐฐํฌํ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค. ์ด ๋ฐฉ๋ฒ์ ํตํด ๊ฐ๋ฐํ์ ๊ธฐ๋ฅ์ ์ํ์ ๊ฐ์ํ์ง ์๊ณ ๋ ํ๋ก๋์ ํ๊ฒฝ์์ ์ฑ๋ฅ์ ํ ์คํธํ๊ณ , ์์ ์ฑ์ ํ์ธํ๊ณ , ์ธํ๋ผ๋ฅผ ๊ฒ์ฆํ ์ ์์ต๋๋ค. ์๋น์ค๊ฐ ํ ๊ธ ๋ฒํผ ๋ค์ ์จ๊ฒจ์ ธ ์๊ฑฐ๋ UI์ ํ์๋์ง ์๊ธฐ ๋๋ฌธ์ ์ฌ์ฉ์๋ ํด๋น ์๋น์ค์ ์กด์ฌ๋ฅผ ์ ํ ์ธ์งํ์ง ๋ชปํฉ๋๋ค.
๋คํฌ ๋ฐ์นญ ์ค์๋ ์์ ์์ฒญ์ด ๋ด๋ถ์ ์ผ๋ก ๋ณต์ ๋ฉ๋๋ค. ๊ธฐ์กด ๊ตฌํ์ ์ค์ ์๋ต์ ์ฒ๋ฆฌํ๋ ๋ฐ๋ฉด, ์๋ก์ด ๋ก์ง์ ๋ฐฑ๊ทธ๋ผ์ด๋์์ ๋์ผํ ์ ๋ ฅ์ ์ฒ๋ฆฌํฉ๋๋ค. ์ด๋ฅผ ํตํด ๊ฐ๋ฐ์๋ ์ ์๋น์ค์ ๋ก๊ทธ, ์ค๋ฅ์จ ๋ฐ ์ฒ๋ฆฌ ์๊ฐ์ ๋ณ๋๋ก ํ์ธํ ์ ์์ต๋๋ค.
๋คํฌ ๋ก ์นญ์ ๋ณต์กํ๊ฑฐ๋ ์ํ๋๊ฐ ๋๊ฑฐ๋ ์คํ๋ผ์ธ์์ ์์ ํ ํ ์คํธํ๊ธฐ ์ด๋ ค์ด ๋ก์ง์ ๋ฆฌํฉํ ๋งํ ๋ ํนํ ํจ๊ณผ์ ์ ๋๋ค. ๊ณต๊ฐ ์ถ์ ์ ์ ์ ์ง์ ์ธ ๊ฐ์ ๋ฐ ์ฑ๋ฅ ํ๋์ ์ํ ์์ ํ ํ์ฃผ๋ก๋ฅผ ์ ๊ณตํฉ๋๋ค. ๋ํ, ํ์ฅ ๋์, ํตํฉ ๋ชจ๋ํฐ๋ง, ๊ธด๊ธ ๊ฒฝ๋ณด ๊ฒ์ฆ๊ณผ ๊ฐ์ ์ด์ ์ค๋น ์ํ ์ ๊ฒ์ ์ง์ํฉ๋๋ค.
์ด ์ ๋ต์ ๋ด๋ถ ๊ฒ์ฆ๊ณผ ์ ์ฒด ์์ฐ ๋ ธ์ถ ๊ฐ์ ๊ฒฉ์ฐจ๋ฅผ ๋ฉ์ ์ํ ๊ด๋ฆฌํ ๋ฆฌํฉํ ๋ง์ ์ด์์ ์ ๋๋ค.
์ค์ ํ๋ก๋์ ํธ๋ํฝ์ ํตํ ๋น๊ต ํ ์คํธ
๋น๊ต ํ ์คํธ(์ฐจ๋ฑ ํ ์คํธ๋ผ๊ณ ๋ ํจ)๋ ๊ธฐ์กด ์์คํ ๊ณผ ๋ฆฌํฉํ ๋ง๋ ์์คํ ๋ชจ๋์ ๋์ผํ ์ ๋ ฅ์ ์คํํ ํ ์ถ๋ ฅ์ ๋น๊ตํ๋ ๊ธฐ๋ฒ์ ๋๋ค. ์ด ๋ฐฉ๋ฒ์ ์๋ก์ด ๊ตฌํ์ด ์ด์ ๊ตฌํ๊ณผ ๋์ผํ๊ฒ ๋์ํ๋์ง ๊ฒ์ฆํ๋ ๋ฐ ํ์์ ์ ๋๋ค. ๊ธ์ต ์์คํ , ๋ถ์ ํ์ดํ๋ผ์ธ, ๊ทธ๋ฆฌ๊ณ ๋์์ ๋ฏธ๋ฌํ ๋ณํ์กฐ์ฐจ๋ ์ฌ๊ฐํ ๋ฌธ์ ๋ก ์ด์ด์ง ์ ์๋ ๋ณด์์ ๋ฏผ๊ฐํ ๋ก์ง์์ ์์ฃผ ์ฌ์ฉ๋ฉ๋๋ค.
์ด์ ํ๊ฒฝ์์๋ ๋ฏธ๋ฌ๋ง๋ ํธ๋ํฝ์ ์ฌ์ฉํ์ฌ ๋น๊ต ํ ์คํธ๋ฅผ ์ํํ ์ ์์ต๋๋ค. ๊ฐ ์ฌ์ฉ์ ์์ฒญ์ ๊ธฐ๋ณธ ์์คํ ์ผ๋ก ๋ผ์ฐํ ๋ ๋ฟ๋ง ์๋๋ผ, ์ ๋ก์ง์ ์คํํ๋ ์๋ ์์คํ ์ผ๋ก๋ ๋ณต์ฌ๋์ด ์ ์ก๋ฉ๋๋ค. ๊ธฐ์กด ์์คํ ์ ์๋ต์ ์ฌ์ฉ์์๊ฒ ๋ฐํ๋๊ณ , ์ ์์คํ ์ ์ถ๋ ฅ์ ๋ถ์์ ์ํด ๋ก๊น ๋ฉ๋๋ค.
์ด๋ฅผ ์ํด ๊ฒฐ๊ณผ ๊ฐ์ ์๋ ๋น๊ต๋ฅผ ์ํํ๋ ๋๊ตฌ์ ํ ์คํธ ํ๋ค์ค๊ฐ ๊ตฌ์ถ๋์์ต๋๋ค. ๋ถ์ผ์นํ๋ ๋ถ๋ถ์ ๊ฒํ ๋ฅผ ์ํด ํ๋๊ทธ๋ก ํ์๋ฉ๋๋ค. ๊ฐ๋ฐ์๋ ์ฒ๋ฆฌ ์๊ฐ ๋ฐ ๋ฆฌ์์ค ์ฌ์ฉ๋๊ณผ ๊ฐ์ ๋ฉํ๋ฐ์ดํฐ๋ฅผ ์์งํ์ฌ ์ฑ๋ฅ ํน์ฑ์ ๋น๊ตํ ์๋ ์์ต๋๋ค.
ํ์ฑํ ์ ์ ์ถ๋ ฅ ํจ๋ฆฌํฐ๋ฅผ ๋ณด์ฅํจ์ผ๋ก์จ ๋น๊ต ํ ์คํธ๋ฅผ ํตํด ์ถ์ธก์์ ์ ์ ๊ฑฐํ๊ณ ์ถ์ ํ ํ๊ท ๊ฐ๋ฅ์ฑ์ ํฌ๊ฒ ์ค์ผ ์ ์์ต๋๋ค.
ํต๊ณ์ ๋ถ์ผ์น ๊ฐ์ง
๊ฒฐ์ ๋ก ์ ์์คํ ์์๋ ์ง์ ์ ์ธ ์ถ๋ ฅ ๋น๊ต๊ฐ ํจ๊ณผ์ ์ด์ง๋ง, ์ผ๋ถ ๋ฆฌํฉํ ๋ง๋ ๊ตฌ์ฑ ์์๋ ๋น๊ฒฐ์ ๋ก ์ ๋๋ ํ๋ฅ ๋ก ์ ์ถ๋ ฅ์ ์์ฑํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๊ฒฝ์ฐ, ํต๊ณ์ ๋ถ์ผ์น ํ์ง๋ฅผ ์ฌ์ฉํ์ฌ ๊ธฐ์กด ์์คํ ๊ณผ ์ ์์คํ ๊ฐ์ ๊ด์ฐฐ๋ ์ฐจ์ด๊ฐ ํ์ฉ ๊ฐ๋ฅํ ์๊ณ๊ฐ ๋ด์ ์๋์ง ํ๊ฐํฉ๋๋ค.
์ด ๊ธฐ๋ฒ์ ์๊ฐ ๊ฒฝ๊ณผ์ ๋ฐ๋ฅธ ์ถ๋ ฅ ๋ถํฌ๋ฅผ ์์งํ๊ณ ํ๊ท , ์ค์๊ฐ, ํ์ค ํธ์ฐจ, ๋ฐฑ๋ถ์์์ ๊ฐ์ ์ฃผ์ ์งํ๋ฅผ ๋น๊ตํ๋ ๊ฒ์ ํฌํจํฉ๋๋ค. ํต๊ณ ๋ชจ๋ธ์ด๋ ์ด์ ํ์ง ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ์ฌ ์ ์์ ์ธ ์ด์ ๋ถ์ฐ์ ์ด๊ณผํ๋ ํธ์ฐจ๋ฅผ ํ์ ํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ์ถ์ฒ ์์ง์ด๋ ์ค์ฝ์ด๋ง ์๊ณ ๋ฆฌ์ฆ์ ๋ฆฌํฉํ ๋งํ๋ ๊ฒฝ์ฐ, ์ ํํ ์ผ์น๋ณด๋ค๋ ํต๊ณ์ ์ ์ฌ์ฑ์ ๊ฒ์ฆํ๋ ๊ฒ์ด ๋ ํ์ค์ ์ธ ๊ฒ์ฆ ๋ฐฉ๋ฒ์ผ ์ ์์ต๋๋ค.
ํ์ ์ด ๋ฐฉ๋ฒ์ ์ฑ๋ฅ ๋ฐ์ดํฐ์ ์ ์ฉํ ์๋ ์์ต๋๋ค. ๋์ผํ ์ ๋ ฅ ์ธํธ์ ๋ํ ์ง์ฐ ์๊ฐ ํ๋กํ, ์ฒ๋ฆฌ๋, ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋์ ๋น๊ตํ๋ฉด ์๋ก์ด ๊ตฌํ์ด ํ์ํ ๋งํผ ํจ์จ์ ์ด๊ณ ํ์ฅ ๊ฐ๋ฅํ์ง ์ฌ๋ถ๋ฅผ ํ์ ํ ์ ์์ต๋๋ค.
ํต๊ณ์ ๋ถ์ผ์น ๊ฐ์ง ๊ธฐ๋ฅ์ ๋ฆฌํฉํฐ๋ง ๋กค์์ ์ค์ ๋ฐ์ดํฐ ๊ธฐ๋ฐ ์์ฌ ๊ฒฐ์ ์ ์ง์ํ๋ ์ถ๊ฐ์ ์ธ ๊ฒ์ฆ ๊ณ์ธต์ ์ ๊ณตํ๋ฉฐ, ํนํ ๋ณต์กํ ๋์์ด ์๋ ์์คํ ์์ ์ ์ฉํฉ๋๋ค.
์ํ ์ ์ฅ ์์คํ ๋ฆฌํฉํ ๋ง
์ํ ์ ์ฅ ์์คํ ์ ๋ฆฌํฉํ ๋งํ๋ฉด ๊ธฐ์กด์ ์ํ ๋น์ ์ฅ ๋ง์ดํฌ๋ก์๋น์ค๋ฅผ ๋์ด์๋ ๋ณต์ก์ฑ์ด ๋ฐ์ํฉ๋๋ค. ์ธ์ ์ ์ ์งํ๊ณ , ํธ๋์ญ์ ์ํ๋ฅผ ์ถ์ ํ๊ณ , ์ํฌํ๋ก ์งํ ์ํฉ์ ๋ชจ๋ธ๋งํ๋ ์์คํ ์ ๋ด๋ถ ๊ตฌ์กฐ๊ฐ ๋ณํํ๋๋ผ๋ ์ฐ์์ฑ์ ์ ์งํด์ผ ํฉ๋๋ค. ์ด๋ฌํ ์์คํ ์ ์ฌ์ฉ์ ๋ฐ ๋ค๋ฅธ ์๋น์ค์ ๊ธด๋ฐํ๊ฒ ์ํธ ์์ฉํ๋ฉฐ, ์ํ ์ฒ๋ฆฌ์ ์ฐจ์ง์ด ์๊ธฐ๋ฉด ์ผ๊ด๋์ง ์์ ๋์, ๋ฐ์ดํฐ ์์ค ๋๋ ์ฌ์ฉ์ ๊ฒฝํ ์ ํ๋ก ์ด์ด์ง ์ ์์ต๋๋ค.
์ํ ์ ์ฅ ์์คํ ์ ์ํ ์ ๋ก ๋ค์ดํ์ ๋ฆฌํฉํ ๋ง์๋ ๋ฐ์ดํฐ๋ฟ๋ง ์๋๋ผ ์คํ ์ค์ธ ์ด์ ์ํ๊น์ง ๊ด๋ฆฌํ๋ ์ ๋ต์ด ํ์ํฉ๋๋ค. ์ธ์ , ์บ์, ์ฌ์ฉ์๋ณ ์ปจํ ์คํธ ๋ฐ ๋ด๋ถ ์ํ ๋จธ์ ์ ์ํํ๊ฒ ์ ์ง๋๊ณ ์ ํ๋์ด์ผ ํฉ๋๋ค. ํ์ ๋กค์์ ๋๋ ๋กค๋ฐฑ ์ค์ ์์คํ ์ด ์ ํจํ์ง ์์ ์ํ๋ก ์ ํ๋๊ฑฐ๋ ํธ๋์ญ์ ์์์ด ๋ฐ์ํ์ง ์๋๋ก ํด์ผ ํฉ๋๋ค.
์ด ์น์ ์์๋ ๋ฆฌํฉํ ๋ง ์ค ์ํ๋ฅผ ๊ด๋ฆฌํ๋ ์ค์ฉ์ ์ธ ์ ๊ทผ ๋ฐฉ์์ ์ค๋ช ํฉ๋๋ค. ์ธ์ ๋ง์ด๊ทธ๋ ์ด์ , ๋ถ์ฐ ์ํ ์ฒ๋ฆฌ, ํด๋ผ์ด์ธํธ ์กฐ์ , ๋ฒ์ ๊ด๋ฆฌ ์ํ ๋จธ์ ๋ฑ์ ์ฃผ์ ๋ฅผ ๋ค๋ฃน๋๋ค. ๊ฐ ๊ธฐ๋ฒ์ ์ ํ๋ฆฌ์ผ์ด์ ๋ฒ์ ์ ๋ฐ์ ๊ฑธ์ณ ๋ฐ์ดํฐ ์ถฉ์ค๋์ ๊ธฐ๋ฅ ์ ํ์ฑ์ ์ ์งํ๋ฉด์ ์ค๋จ์ ์ต์ํํ๋๋ก ์ค๊ณ๋์์ต๋๋ค.
์คํฐํค ์ธ์ vs. ์ํ ๋น์ ์ฅ ์ฌ์ค๊ณ
์คํฐํค ์ธ์ (Sticky Session)์ ์ธ์ ์ดํผ๋ํฐ(Session Affinity)๋ผ๊ณ ๋ ํ๋ฉฐ, ์ธ์ ๊ธฐ๊ฐ ๋์ ์ฌ์ฉ์ ์์ฒญ์ ํน์ ์ ํ๋ฆฌ์ผ์ด์ ์ธ์คํด์ค์ ์ฐ๊ฒฐํฉ๋๋ค. ์ด ๋ชจ๋ธ์ ์ธ์ ๋ฐ์ดํฐ๊ฐ ํ ๋น๋ ์๋ฒ์ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅ๋๋ฏ๋ก ์ํ ์ฒ๋ฆฌ๋ฅผ ๊ฐ์ํํฉ๋๋ค. ํ์ง๋ง ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฆฌํฉํ ๋งํ๊ฑฐ๋ ํ์ฅํ ๋, ํนํ ํ๋ ฅ์ฑ๊ณผ ๋ถํ ๋ถ์ฐ์ด ํ์์ ์ธ ํด๋ผ์ฐ๋ ๋ค์ดํฐ๋ธ ํ๊ฒฝ์์๋ ์๋นํ ์ด๋ ค์์ ์ผ๊ธฐํฉ๋๋ค.
์คํฐํค ์ธ์ ์ํคํ ์ฒ๋ฅผ ๋ฆฌํฉํ ๋งํ๋ ๊ฒ์ ์ข ์ข ์ํ ๋น์ ์ฅ(Stateless) ์ค๊ณ๋ก์ ์ ํ์ ์๋ฐํฉ๋๋ค. ์ํ ๋น์ ์ฅ ๋ชจ๋ธ์์ ์ธ์ ๋ฐ์ดํฐ๋ Redis, Memcached ๋๋ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ฐ์ ์ค์ ์ ์ฅ์์ ์ ์ฅ๋ฉ๋๋ค. ์ด๋ฅผ ํตํด ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ชจ๋ ์ธ์คํด์ค๊ฐ ํน์ ์๋ฒ์ ์์กดํ์ง ์๊ณ ๋ชจ๋ ์์ฒญ์ ์ฒ๋ฆฌํ ์ ์์ผ๋ฏ๋ก ์ง์ ํ ์ํ์ ํ์ฅ๊ณผ ์ํํ ์ฅ์ ์กฐ์น๊ฐ ๊ฐ๋ฅํฉ๋๋ค.
๋ฆฌํฉํ ๋ง ์ค์ ๋ ๋ชจ๋ธ์ด ์ผ์์ ์ผ๋ก ๊ณต์กดํด์ผ ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ํ์ด๋ธ๋ฆฌ๋ ๋ฐฉ์์ ํตํด ๊ธฐ์กด ์ฌ์ฉ์๋ ์ ์ธ์ ์ด ์ค์ ์์คํ ์ ์ ์ฅ๋๋ ๋์ ์คํฐํค ์ธ์ ์ ๊ณ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๊ธฐ๋ฅ ํ ๊ธ ๋๋ ๋ผ์ฐํ ๊ท์น์ ํตํด ์ด๋ฌํ ๋์์ ์ ์ดํ ์ ์์ต๋๋ค. ์ธ์ ๋ฒ์๋ฅผ ์ ์คํ๊ฒ ๊ด๋ฆฌํ๊ณ ๋ฐ์ดํฐ ์ผ๊ด์ฑ์ ๋ณด์ฅํจ์ผ๋ก์จ ํ์ ์ฌ์ฉ์ ์ฐ์์ฑ์ ์ํฅ์ ๋ฏธ์น์ง ์๊ณ ์ธ์ ์ฒ๋ฆฌ๋ฅผ ๋ฆฌํฉํ ๋งํ ์ ์์ต๋๋ค.
๋ถ์ฐ ์ธ์ ์คํ ๋ฆฌ์ง ๋ง์ด๊ทธ๋ ์ด์
๋ก์ปฌ ๋๋ ๋ ๊ฑฐ์ ์๋ฃจ์ ์์ ๋ถ์ฐ ์์คํ ์ผ๋ก ์ธ์ ์ ์ฅ์๋ฅผ ๋ง์ด๊ทธ๋ ์ด์ ํ๋ ๊ฒ์ ์ํ ์ ์ฅ ์ ํ๋ฆฌ์ผ์ด์ ์ ํ๋ํํ๋ ๋ฐ ์ค์ํ ๋จ๊ณ์ ๋๋ค. ์ด๋ฌํ ์ ํ์ ํตํด ๋ฐฐํฌ ํ๊ฒฝ ์ ๋ฐ์ ๊ฑธ์ณ ํ์ฅ์ฑ, ๋ณต์๋ ฅ ๋ฐ ์ ์ฐ์ฑ์ ํ๋ณดํ ์ ์์ต๋๋ค. ํ์ง๋ง ์ธ์ ์์ค, ์ค๋๋ ๋ฐ์ดํฐ ๋๋ ์ธ์ฆ ํ๋ฆ ์ค๋จ์ ๋ฐฉ์งํ๊ธฐ ์ํด ์ ์คํ๊ฒ ์คํํด์ผ ํฉ๋๋ค.
๋ง์ด๊ทธ๋ ์ด์ ์ Redis, Cassandra ๋๋ Amazon ElastiCache์ ๊ฐ์ ํด๋ผ์ฐ๋ ๋ค์ดํฐ๋ธ ์๋น์ค์ ๊ฐ์ ๋ถ์ฐ ์ธ์ ์ ์ฅ์๋ฅผ ๋์ ํ๋ ๊ฒ์ผ๋ก ์์๋ฉ๋๋ค. ์ดํ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฉ๋ชจ๋ฆฌ ๋ด ์ธ์ ๋ณ์๋ ๋์คํฌ ๊ธฐ๋ฐ ์ง์์ฑ์ ์์กดํ๋ ๋์ , ์ด ์ ์ฅ์์์ ์ฝ๊ณ ์ฐ๋๋ก ์์ ๋ฉ๋๋ค.
์ ์ง์ ์ธ ๋กค์์์ ์ง์ํ๊ธฐ ์ํด ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ธฐ์กด ์ธ์ ์ ์ฅ์์ ์ ์ธ์ ์ ์ฅ์๋ฅผ ๋ชจ๋ ์ผ์์ ์ผ๋ก ์ง์ํ ์ ์์ต๋๋ค. ์ด ์ด์ค ์ฝ๊ธฐ ์ ๋ต์ ๋ ์์ค๋ฅผ ๋ชจ๋ ํ์ธํ๊ณ ์ ์์คํ ์๋ง ์ ๋ฐ์ดํธ๋ฅผ ๊ธฐ๋กํฉ๋๋ค. ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ํ์ฑ ์ธ์ ์ ๋ถ์ฐ ์ ์ฅ์๋ก ์์ฐ์ค๋ฝ๊ฒ ์ ํ๋ฉ๋๋ค. ์ ํจ์ฑ ๊ฒ์ฌ๊ฐ ์๋ฃ๋๋ฉด ๊ธฐ์กด ๊ฒฝ๋ก๋ ๋นํ์ฑํ๋ฉ๋๋ค.
์ด ๊ณผ์ ์์ ๋ณด์ ๊ณ ๋ ค ์ฌํญ์ด ๊ฐ์ฅ ์ค์ํฉ๋๋ค. ์ธ์ ๋ง๋ฃ, ์ํธํ ๋ฐ ์ ๊ทผ ์ ์ด๋ ์ง์์ ์ผ๋ก ์ ์ง๋์ด์ผ ํฉ๋๋ค. ๋ชจ๋ํฐ๋ง์ ํตํด ์ธ์ ๋ง์ด๊ทธ๋ ์ด์ ์งํ ์ํฉ, ์ค๋ฅ์จ ๋ฐ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋์ ์ถ์ ํ์ฌ ์๋ก์ด ์์คํ ์ด ์ด์ ๋ถํ ์ํฉ์์ ์์๋๋ก ์๋ํ๋์ง ํ์ธํด์ผ ํฉ๋๋ค.
ํด๋ผ์ด์ธํธ ์ธก ์ํ ์กฐ์
ํด๋ผ์ด์ธํธ ์ธก ์ํ ์กฐ์ ์ ์ ํ๋ฆฌ์ผ์ด์ ์ด ํด๋ผ์ด์ธํธ์ ์์กดํ์ฌ ์์ฒญ ๋ฐ ๋ฐฐํฌ ์ ๋ฐ์ ๊ฑธ์ณ ํน์ ์ํ ์์๋ฅผ ๋ณด์กดํ๊ณ ๊ด๋ฆฌํ๋ ๊ธฐ์ ์ ๋๋ค. ์ด๋ ์ผ๋ฐ์ ์ผ๋ก ํ ํฐ, ์ํธํ๋ ์ฟ ํค ๋๋ ์ธ์ฆ ์๊ฒฉ ์ฆ๋ช , ๊ธฐ๋ณธ ์ค์ ๋๋ ํธ๋์ญ์ ์ฒดํฌํฌ์ธํธ์ ๊ฐ์ ์ปจํ ์คํธ ์ ๋ณด๋ฅผ ์ ๋ฌํ๋ ๋ธ๋ผ์ฐ์ ๊ธฐ๋ฐ ์ ์ฅ ๋ฉ์ปค๋์ฆ์ ์ฌ์ฉํ์ฌ ๊ตฌํ๋ฉ๋๋ค.
์ํ ์ ์ฅ ์๋น์ค๋ฅผ ๋ฆฌํฉํ ๋งํ ๋ ํด๋ผ์ด์ธํธ ์ธก ์ ์ฅ์๋ ๋์ฒด ๋ฒํผ ์ญํ ์ ํฉ๋๋ค. ํด๋ผ์ด์ธํธ๊ฐ ์ ๊ณตํ ๋ฐ์ดํฐ๋ฅผ ํ์ฑํ์ฌ ์์คํ ์ด ์ธ์ ์ปจํ ์คํธ๋ฅผ ์ฌ๊ตฌ์ถํ๊ฑฐ๋ ์ฌ๊ฐํ ์ ์๋๋ก ํฉ๋๋ค. ์ด๋ ๋ฐฑ์๋ ์์คํ ์ ๊ต์ฒดํ๊ฑฐ๋ ์๋น์ค๋ฅผ ์ฌ๋ฌ ๋ ธ๋์ ์ฌ๋ฐฐํฌํ๋ ์ ํ ๊ณผ์ ์์ ํนํ ์ ์ฉํฉ๋๋ค.
ํ์ง๋ง ์ด ๊ธฐ์ ์ ์ ์คํ ์ค๊ณ๋ฅผ ํ์๋ก ํฉ๋๋ค. ํด๋ผ์ด์ธํธ์ ์ ์ฅ๋ ์ํ๋ ์์ ํ๊ณ , ๋ณ์กฐ ๋ฐฉ์ง๊ฐ ๊ฐ๋ฅํ๋ฉฐ, ๋ฒ์ ๊ด๋ฆฌ๊ฐ ๊ฐ๋ฅํด์ผ ํฉ๋๋ค. ํด๋ผ์ด์ธํธ ์ธก ๋ฐ์ดํฐ์ ํ์๊ณผ ํด์์ด ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ๋ณ๊ฒฝ๋ ์ ์์ผ๋ฏ๋ก ์คํค๋ง ๋ณ๊ฒฝ์ ์ด๋ ค์ด ๊ณผ์ ๊ฐ ๋ฉ๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ ์ ํ์ ํธํ์ฑ์ ์ ์งํด์ผ ํ๋ฉฐ, ์ค๋๋ ํ์ด๋ก๋๋ฅผ ์ต์ ํ์์ผ๋ก ๋ณํํ ์ ์์ด์ผ ํฉ๋๋ค.
ํด๋ผ์ด์ธํธ ์ธก ์กฐ์ ์ ๋ฌด๊ฒฐ์ฑ์ ๋ณด์ฅํ๊ณ ๋ฌด๋จ ์กฐ์์ ๋ฐฉ์งํ๊ธฐ ์ํด ์๋ฒ ์ธก ๊ฒ์ฆ๊ณผ ํจ๊ป ์ด๋ฃจ์ด์ ธ์ผ ํฉ๋๋ค. ์ฌ๋ฐ๋ฅด๊ฒ ๊ตฌํํ๋ฉด ๋ฐฑ์๋ ๋ฆฌํฉํ ๋ง ์ค์๋ ์ฌ์ฉ์ ์ธ์ ์ ์ํํ ์ ํ๊ณผ ์ฐ์์ฑ์ ํ๋ณดํ ์ ์์ต๋๋ค.
์ํ ๋จธ์ ๋ฆฌํฉํ ๋ง
๋ง์ ์ํฐํ๋ผ์ด์ฆ ์์คํ ์ ์คํ ํ๋ฆ์ ์ ์ดํ๊ณ , ํธ๋์ญ์ ์๋ช ์ฃผ๊ธฐ๋ฅผ ๊ด๋ฆฌํ๊ณ , ๋น์ฆ๋์ค ๊ท์น์ ์ ์ฉํ๊ธฐ ์ํด ๋ด๋ถ ์ํ ๋จธ์ ์ ์ฌ์ฉํฉ๋๋ค. ์ด๋ฌํ ์ํ ๋จธ์ ์ ์ฝ๋์ ๋ช ์์ ์ผ๋ก ์กด์ฌํ๊ฑฐ๋ ์๋น์ค ์ํธ์์ฉ ๋ฐฉ์์ ์๋ฌต์ ์ผ๋ก ์กด์ฌํ ์ ์์ต๋๋ค. ๋ผ์ด๋ธ ์ฌ์ฉ์ ํ๋์ ์ ์งํ๋ฉด์ ์ด๋ฌํ ์์คํ ์ ๋ฆฌํฉํ ๋งํ๋ ๊ฒ์ ์ฌ๊ฐํ ๊ณผ์ ์ ๋๋ค. ์์คํ ์ ํ์ฑ์ด ์ํ ์ ํ๊ณผ ๋ฐ์ ํ๊ฒ ์ฐ๊ด๋์ด ์๊ธฐ ๋๋ฌธ์ ๋๋ค. ๋ณ๊ฒฝ ์ค์ ์ด๋ฌํ ์ ํ์ด ์ค๋จ๋๊ฑฐ๋ ์ ๋ ฌ์ด ์๋ชป๋๋ฉด ํธ๋์ญ์ ์์ค, ์๋ชป๋ ์ํฌํ๋ก ๋๋ ๋ฐ์ดํฐ ์์์ด ๋ฐ์ํ ์ ์์ต๋๋ค.
์ํ ๋จธ์ ์ ๋ฌด์ค๋จ ๋ฆฌํฉํ ๋ง์ ์ํด์๋ ์ํ ์ ํ์ ์ ์ฒด ์๋ช ์ฃผ๊ธฐ๋ฅผ ๋ณด์กดํ๋ ์ฒด๊ณ์ ์ธ ์ ๋ต์ด ํ์ํฉ๋๋ค. ์ด๋ฌํ ์ ๋ต์๋ ์ด์ค ์ํ ๋ก์ง ์ ์ง, ์ํ ์คํค๋ง ๋ฒ์ ๊ด๋ฆฌ, ๊ทธ๋ฆฌ๊ณ ์ํ๊ฐ ๋ถ์ฐ ์์คํ ์ ๊ฑธ์ณ ์๋ ํฉ์ ๋ฉ์ปค๋์ฆ ๋์ ๋ฑ์ด ํฌํจ๋ฉ๋๋ค. ๋ชฉํ๋ ์ ํ์ด ์๋ฃ๋๊ณ ๊ฒ์ฆ๋ ๋๊น์ง ๊ธฐ์กด ์ํ ํธ๋ค๋ฌ์ ๋ฆฌํฉํ ๋ง๋ ์ํ ํธ๋ค๋ฌ๊ฐ ํจ๊ป ์๋ํ ์ ์๋๋ก ํ๋ ๊ฒ์ ๋๋ค.
์ด ์น์ ์์๋ ๋ถ์ผ์น๋ฅผ ์ผ์ผํค๊ฑฐ๋ ์ค์ํ ์์ ์ ์ค๋จ์ํค์ง ์๊ณ ์ํ ๋จธ์ ๊ธฐ๋ฐ ์์คํ ์ ์์ , ์ ๊ทธ๋ ์ด๋ ๋ฐ ๋ฐ์ ์ํค๋ ๋ฐฉ๋ฒ์ ๋ํด ์ค์ ์ ์ผ๋ก ์ค๋ช ํฉ๋๋ค.
๋ฒ์ ๊ด๋ฆฌ๋ ์ํ ์ ํ
์ํ ์ ํ ๋ฒ์ ๊ด๋ฆฌ๋ ์ํ ์ ์ฅ ์์คํ ๋ด์์ ์๋ก ๋ค๋ฅธ ๋ ผ๋ฆฌ ๊ฒฝ๋ก ๋๋ ๋ฐ์ดํฐ ๋ชจ๋ธ์ด ๊ณต์กดํ ์ ์๋๋ก ํ๋ ๊ธฐ์ ์ ๋๋ค. ๋ชจ๋ ์์ ์ด ๋จ์ผ ์ํ ๋ค์ด์ด๊ทธ๋จ์ ๋ฐ๋ฅด๋๋ก ๊ฐ์ ํ๋ ๋์ , ๊ฐ๋ฐ์๋ ์ ํ์ ๋ฒ์ ์ ํ ๋นํฉ๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด ์ด์ ์ํ ๋ ผ๋ฆฌ์์ ์์๋ ํ๋ก์ธ์ค ๋๋ ์ฌ์ฉ์ ํ๋ฆ์ ์ธ์คํด์ค๊ฐ ์ค๋จ ์์ด ๊ณ์ ์คํ๋๋ ๋์์, ์๋ก์ด ์ธ์คํด์ค๋ ์ ๊ทธ๋ ์ด๋๋ ์ ํ ๊ท์น์ ๋ฐ๋ฆ ๋๋ค.
์ด๋ ๊ฐ ์ํ ๋๋ ์ํฌํ๋ก ์ธ์คํด์ค์ ๋ฒ์ ์๋ณ์๋ฅผ ํ๊ทธํ์ฌ ๊ตฌํ๋๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์ ํ์ ์ฒ๋ฆฌํ ๋ ์์คํ ์ ๋ฒ์ ํ๊ทธ๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ฉํ ๊ท์น์ ๊ฒฐ์ ํฉ๋๋ค. ์ด๋ฅผ ํตํด ์ด๋ฏธ ์งํ ์ค์ธ ํ๋ฆ์ ์ํฅ์ ์ฃผ์ง ์๊ณ ์๋ก์ด ๋ก์ง์ ํ๋ก๋์ ์ ๋ฐฐํฌํ ์ ์์ต๋๋ค. ์ด์ ์ธ์คํด์ค๊ฐ ์๋ฃ๋๋ฉด ๋ ๊ฑฐ์ ๋ฒ์ ์ ๋ ์ด์ ์ฌ์ฉํ ์ ์๊ฒ ๋๋ฉฐ ๊ฒฐ๊ตญ์๋ ๋ ์ด์ ์ฌ์ฉ๋์ง ์์ ์ ์์ต๋๋ค.
๋ฒ์ ๊ด๋ฆฌํ ์ ํ์ ์ธ์ ์ด ์ค๋ ์ง์๋๊ฑฐ๋ ๋ณต์กํ ๋ค๋จ๊ณ ํ๋ก์ธ์ค๊ฐ ์๋ ์์คํ ์์ ํนํ ์ ์ฉํฉ๋๋ค. ์ด๋ฅผ ํตํด ์ํ ๋ก์ง์ ์์ ํ ๋จ๊ณ์ ์ถ์ ๋ฐ ๋กค๋ฐฑ์ด ๊ฐ๋ฅํฉ๋๋ค. ์ ์ ํ ์๊ฒฉ ์ธก์ ์ ํตํด ์ ๋ฒ์ ์ ๋์ ๋ฅ ์ ์ถ์ ํ๊ณ ๋ฒ์ ๊ฐ ์ ํ ๊ฒฐ๊ณผ์ ๋ถ์ผ์น๋ฅผ ๋ชจ๋ํฐ๋งํด์ผ ํฉ๋๋ค.
์ ํ ์ค ์ด์ค ์ํ ์ฒ๋ฆฌ
์ด์ค ์ํ ์ฒ๋ฆฌ๋ ๋ฆฌํฉํ ๋ง ๋จ๊ณ์์ ๋์ผํ ์ ํ๋ฆฌ์ผ์ด์ ๋ด์ ์ด์ ์ํ ๋จธ์ ๊ณผ ์ ์ํ ๋จธ์ ์ด ์ผ์์ ์ผ๋ก ๊ณต์กดํ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค. ๋ค์ด์ค๋ ๊ฐ ์์ฒญ์ด๋ ์์ ์ ๋ ์ํ ๋จธ์ ์์ ๋ณ๋ ฌ๋ก ํ๊ฐ๋ฉ๋๋ค. ๊ธฐ์กด ๋ฒ์ ์ ์ง์์ ์ธ ์ ํ์ฑ๊ณผ ์ฌ์ฉ์ ์ฐ์์ฑ์ ๋ณด์ฅํ๋ ๋ฐ๋ฉด, ์ ๋ฒ์ ์ ๊ฒฐ๊ณผ์ ์ํฅ์ ๋ฏธ์น์ง ์์ง๋ง ๊ฒ์ฆ์ ์ํด ๊ธฐ๋ก๋๋ ์๋ ์ ํ์ ์คํํฉ๋๋ค.
์ด๋ฌํ ์ ๊ทผ ๋ฐฉ์์ ํตํด ๊ฐ๋ฐํ์ ์ค์ ํ๊ฒฝ์์ ์๋ก์ด ์ํ ๋ก์ง์ ๋์๊ณผ ๊ฒฐ๊ณผ๋ฅผ ํ ์คํธํ ์ ์์ต๋๋ค. ๋ํ ์ํ ๋ณ๊ฒฝ, ์ ํ ์์ , ์ค๋ฅ ์ฒ๋ฆฌ๋ฅผ ๋๋ํ ๋น๊ตํ์ฌ ์ฌ์ธต์ ์ธ ๊ฒ์ฆ์ ์ํํ ์ ์์ต๋๋ค. ๊ธฐ์กด ๋จธ์ ๊ณผ ๋ฆฌํฉํ ๋ง๋ ๋จธ์ ๊ฐ์ ๋ถ์ผ์น๋ฅผ ๊ฒํ ๋์์ผ๋ก ํ์ํ์ฌ ๋ก์ง์ ๊ฒฐํจ์ด๋ ์์ธ ์ํฉ์ ํ์ ํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
์ด์ค ์ํ ์ฒ๋ฆฌ๋ ๋ถ์์ฉ์ ๋ฐฉ์งํ๊ธฐ ์ํด ๊ฒฉ๋ฆฌ๋์ด์ผ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด, ์๋ก์ด ๋ก์ง์ ํ์ฑํ๋ ๋๊น์ง ์ธ๋ถ ์์คํ ์ด๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์์ ํด์๋ ์ ๋ฉ๋๋ค. ์๋ก์ด ๋ก์ง์ด ์์ ์ ์์ด ์ ์ฆ๋๋ฉด ๊ธฐ์กด ๊ฒฝ๋ก๋ฅผ ํ๊ธฐํ๊ณ ๋ค์ดํ์์ด๋ ๋ฌด๊ฒฐ์ฑ ์์ค ์์ด ์ ํ์ ์๋ฃํ ์ ์์ต๋๋ค.
์ํ ๊ฒ์ฆ์ ์ํ ํฉ์ ํ๋กํ ์ฝ
๋ถ์ฐ ์์คํ ์ ์ฌ๋ฌ ์๋น์ค๋ ๋ ธ๋์ ๊ฑธ์ณ ์ํ ๋ณ๊ฒฝ์ ์กฐ์ ํด์ผ ํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์ด๋ฌํ ์์คํ , ํนํ ๋ณต์ ๋ ์ํ๋ ๊ณต์ ํธ๋์ญ์ ์ ์ฌ์ฉํ๋ ์์คํ ์ ๋ฆฌํฉํ ๋งํ ๋ ์ ํ์ฑ์ ๋ณด์ฅํ๊ธฐ ์ํด์๋ ํฉ์๊ฐ ํ์ํฉ๋๋ค. Paxos, Raft ๋๋ 2๋จ๊ณ ์ปค๋ฐ๊ณผ ๊ฐ์ ํฉ์ ํ๋กํ ์ฝ์ ์ํ ๋ณ๊ฒฝ์ด ์ ์ฉ๋๊ธฐ ์ ์ ๋ชจ๋ ๊ด๋ จ ๋ ธ๋๊ฐ ๋์ํ๋๋ก ๋ณด์ฅํฉ๋๋ค. ์ด๋ฌํ ํ๋กํ ์ฝ์ ์๋ก์ด ์ํ ๋ชจ๋ธ์ ๋์ ํ๊ฑฐ๋ ์ ํ ์กฐ์ ๋ ผ๋ฆฌ๋ฅผ ์์ ํ ๋ ํนํ ์ค์ํฉ๋๋ค.
๋ฆฌํฉํ ๋ง ๊ณผ์ ์์ ํฉ์ ํ๋กํ ์ฝ์ ์ ์์คํ ์์ ์ ์ฉ๋ ์ ํ์ด ๊ธฐ์กด ์์คํ ์ด๋ ํ๋ ฅ ํผ์ด์ ๊ธฐ๋์น์ ์ผ์นํ๋์ง ๊ฒ์ฆํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ์ ๋ฒ์ ์ ํธ๋์ญ์ ์๋น์ค๋ ์ปค๋ฐ๋๊ธฐ ์ ์ ๋ค๋ฅธ ๋ณต์ ๋ณธ์์ ์น์ธํด์ผ ํ๋ ์ํ ์ ๋ฐ์ดํธ๋ฅผ ์ ์ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๊ฒ์ฆ์ ๋ก์ง ๋ณ๊ฒฝ์ผ๋ก ์ธํด ๋ถ์ผ์น๋ ๋ฐ์ดํฐ ์์์ด ๋ฐ์ํ์ง ์๋๋ก ๋ณด์ฅํฉ๋๋ค.
ํฉ์ ๊ธฐ๋ฐ ๊ฒ์ฆ์ ๋กค๋ฐฑ๋ ์ง์ํฉ๋๋ค. ์ ๋ฒ์ ์ด ํฉ์์ ๋๋ฌํ์ง ๋ชปํ๊ฑฐ๋ ์ด์ ์งํ๊ฐ ๋ํ๋๋ฉด ๊ณต์ ์ํ์ ์ํฅ์ ์ฃผ์ง ์๊ณ ์์ ์ ์ญ์ ํ ์ ์์ต๋๋ค. ํฉ์ ๋ฉ์ปค๋์ฆ์ ์ํ ์ ์ฅ ์ํฌํ๋ก์ ํตํฉํ๋ฉด ์ค์๊ฐ ์ ํ์ ๊ฒฌ๊ณ ์ฑ์ ๋์ด๊ณ ๋ฆฌํฉํ ๋ง๋ ์์คํ ์ ๋ํ ์ ๋ขฐ๋ฅผ ๊ฐํํ ์ ์์ต๋๋ค.
์ข ์์ฑ ๋ฐ ์ธํฐํ์ด์ค ๊ด๋ฆฌ
๋๊ท๋ชจ ์ ํ๋ฆฌ์ผ์ด์ ์์ ์ธํฐํ์ด์ค์ ์ธ๋ถ ์ข ์์ฑ์ ์์คํ ์ ์ํธ ์ด์ฉ์ฑ ๋ฐ ์งํ ๋ฅ๋ ฅ์ ์ ์ํฉ๋๋ค. ์์คํ ์ด ์ฑ์ฅํจ์ ๋ฐ๋ผ ์ข ์์ฑ ๊ด๋ฆฌ๋ ์์ ์ฑ ์ ์ง ๋ฐ ๋ณ๊ฒฝ ์ง์์ ์ค์ํ ์์๊ฐ ๋ฉ๋๋ค. ์์คํ ์ ์จ๋ผ์ธ ์ํ๋ก ์ ์งํ๋ฉด์ ์ฝ๋๋ ์๋น์ค๋ฅผ ๋ฆฌํฉํ ๋งํ ๋, ์ธํฐํ์ด์ค ๊ณ์ฝ์ ์์ ์ ์ด๊ณ ์ด์ ๋ฒ์ ๊ณผ์ ํธํ์ฑ์ ์ ์งํด์ผ ํ๋ฉฐ, ์ข ์์ฑ์ ์ฐ์์ ์ธ ์ค๋ฅ๋ฅผ ๋ฐฉ์งํ๊ธฐ ์ํด ๊ฒฉ๋ฆฌ๋๊ณ ๋ถ๋ฆฌ๋์ด์ผ ํฉ๋๋ค.
๋ค์ดํ์ ์๋ ๋ฆฌํฉํ ๋ง์๋ API ๋ฒ์ ๊ด๋ฆฌ, ๋จ๊ณ์ ์ง์ ์ค๋จ, ๊ทธ๋ฆฌ๊ณ ์๊ฒฉํ ํธํ์ฑ ๊ท์น ์ ์ฉ์ด ํฌํจ๋๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ๋ด๋ถ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ๊ณต์ ํ๋ ์์ํฌ์ ๊ฒฝ์ฐ, ํนํ ๋ ๊ฑฐ์ ํ๊ฒฝ์์ ์ข ์ ๊ตฌ์ฑ ์์๋ฅผ ์์์ํค์ง ์๊ณ ์ ๊ทธ๋ ์ด๋ํ๋ ๊ฒ์ด ๊ณผ์ ์ ๋๋ค. ์ธํฐํ์ด์ค ๋ฒ์ ๊ด๋ฆฌ, ์๋ฏธ์ ๋ณ๊ฒฝ ์ถ์ , ์ด์ค ๋ก๋ฉ ์ ๋ต๊ณผ ๊ฐ์ ๊ธฐ๋ฒ์ ๋ผ์ด๋ธ ์ ํ ์ ์ํ์ ์ํํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
์ด ์น์ ์์๋ ๋ผ์ด๋ธ ๋ฐฐํฌ ์ค์ API์ ํ๋ ์์ํฌ๋ฅผ ์์ ํ๊ฒ ๋ฐ์ ์ํค๋ ๋ฐฉ๋ฒ์ ๋ค๋ฃน๋๋ค. ๊ฒฐํฉ๋๋ฅผ ๋ฎ์ถ๊ณ , ์ด์ ๋ฌด๊ฒฐ์ฑ์ ์ ์งํ๋ฉฐ, ๋ฆฌํฉํ ๋ง๋ ๊ตฌ์ฑ ์์์ ๋ ๊ฑฐ์ ๊ตฌ์ฑ ์์ ์ ๋ฐ์ ๊ฑธ์ณ ํ ์คํธ ๋ฐ ๊ฒ์ฆ์ ์ํ ๋ช ํํ ๊ฒฝ๊ณ๋ฅผ ์ ๊ณตํ๋ ๊ฒ์ด ๋ชฉํ์ ๋๋ค.
๋ฒ์ ์ด ์ง์ ๋ API ๊ณ์ฝ
๋ฒ์ ๊ด๋ฆฌ API ๊ณ์ฝ์ ๋ค์ดํ์ ์๋ ํ๊ฒฝ์์ ์๋น์ค ์ธํฐํ์ด์ค๋ฅผ ๊ฐ๋ฐํ ๋ ํ์์ ์ ๋๋ค. ๋ฒ์ ์ ๋ช ํํ๊ฒ ๊ตฌ๋ถํจ์ผ๋ก์จ ๊ฐ๋ฐํ์ ๊ธฐ์กด ์ฌ์ฉ์์๊ฒ ์ง์ฅ์ ์ฃผ์ง ์๊ณ ์๋ก์ด ๊ธฐ๋ฅ์ ๋์ ํ๊ณ , ๊ตฌ์กฐ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ณ , ์๋ฏธ ์ฒด๊ณ๋ฅผ ๊ฐ์ ํ ์ ์์ต๋๋ค. ๋ฒ์ ๊ด๋ฆฌ ์ ๋ต์ ๊ธฐ์กด ์ธํฐํ์ด์ค๋ฅผ ์์ ํ ํ๊ธฐํ๊ธฐ ์ ์ ์ ์ง์ ์ธ ๋ง์ด๊ทธ๋ ์ด์ , ํธํ์ฑ ํ ์คํธ ๋ฐ ํผ๋๋ฐฑ ์์ง์ ์ํ ์์ถฉ ์ฅ์น ์ญํ ๋ ํฉ๋๋ค.
์ผ๋ฐ์ ์ธ ๋ฒ์ ๊ด๋ฆฌ ๋ชจ๋ธ์๋ URI ๊ธฐ๋ฐ ๋ฒ์ ๊ด๋ฆฌ์ ํค๋ ๊ธฐ๋ฐ ๋ฒ์ ๊ด๋ฆฌ์ ๋ ๊ฐ์ง๊ฐ ์์ต๋๋ค. URI ๊ธฐ๋ฐ ๋ฒ์ ๊ด๋ฆฌ๋ ๋ค์๊ณผ ๊ฐ์ ๋ฒ์ ์๋ณ์๋ฅผ ์ฌ์ฉํ์ฌ API ๊ฒฝ๋ก๋ฅผ ๋
ธ์ถํฉ๋๋ค. /v1/invoice /v2/invoice. ์ด๋ ๊ฒ ํ๋ฉด ๋ผ์ฐํ
์ด ๋ช
ํํด์ง๊ณ ๊ฐ ๋ฒ์ ์ ๋
๋ฆฝ์ ์ธ ๊ฐ๋ฐ์ด ๊ฐ๋ฅํด์ง๋๋ค. ๋ฐ๋ฉด, ํค๋ ๊ธฐ๋ฐ ๋ฒ์ ๊ด๋ฆฌ๋ ์๋ํฌ์ธํธ๋ฅผ ์ ์ ์ผ๋ก ์ ์งํ๋ฉด์ ์ฌ์ฉ์ ์ง์ ํค๋๋ฅผ ์ฌ์ฉํ์ฌ ๋ฒ์ ์ ๊ฒฐ์ ํ๋ฏ๋ก ์ผ๋ถ ํ๊ฒฝ์์ ๋ ํฐ ์ ์ฐ์ฑ์ ์ ๊ณตํฉ๋๋ค.
API ๊ณ์ฝ์ ์ ์ ๋ช ์ธ๋ก ์ทจ๊ธํด์ผ ํฉ๋๋ค. OpenAPI(Swagger) ๋๋ gRPC protobuf ์ ์์ ๊ฐ์ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ ์ด๋ฌํ ๊ณ์ฝ์ ์์ฑํ๊ณ ๊ฒ์ฆํ ์ ์์ต๋๋ค. Pact ๋๋ Postman๊ณผ ๊ฐ์ ๊ณ์ฝ ํ ์คํธ ๋๊ตฌ๋ ๋์ ๋ณ๊ฒฝ์ด ์๋์น ์๊ฒ ๋ฐ์ํ๋์ง ํ์ธํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
๋ฒ์ ์ ๋ช ์์ ์ผ๋ก ๊ด๋ฆฌํ๋ฉด ๋ฆฌํฉํ ๋ง๋ API๋ฅผ ๊ธฐ์กด API์ ๋ณํํ์ฌ ๋์ ํ ์ ์์ด ์ํํ ๋ง์ด๊ทธ๋ ์ด์ ๊ฒฝ๋ก๋ฅผ ์ ๊ณตํ๊ณ ์์คํ ์์ ์ฑ์ ์ ์งํ ์ ์์ต๋๋ค.
์ด์ ๋ฒ์ ๊ณผ์ ํธํ์ฑ์ ์ํ ์๋ฏธ์ ๋ฒ์ ๊ด๋ฆฌ
์๋ฏธ๋ก ์ ๋ฒ์ ๊ด๋ฆฌ๋ ๋ณ๊ฒฝ ์ฌํญ์ ํน์ฑ์ ๋ฒ์ ๋ฒํธ์ ์ง์ ์ธ์ฝ๋ฉํ์ฌ ์ฝ๋ ๋ฐ API ์งํ๋ฅผ ๊ด๋ฆฌํ๋ ์ฒด๊ณ์ ์ธ ์ ๊ทผ ๋ฐฉ์์ ์ ๊ณตํฉ๋๋ค. ๋ฌด์ค๋จ ๋ฆฌํฉํ ๋ง ํ๊ฒฝ์์ ์๋ฏธ๋ก ์ ๋ฒ์ ๊ด๋ฆฌ๋ ํนํ ์ฌ๋ฌ ๊ตฌ์ฑ ์์๊ฐ ๊ณต์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋๋ ์๋น์ค ๊ณ์ฝ์ ์์กดํ๋ ๊ฒฝ์ฐ ํ์ด ๋์ฑ ํจ๊ณผ์ ์ผ๋ก ์ํตํ๊ณ ์ ๋ฐ์ดํธ๋ฅผ ์กฐ์ ํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
๋ฒ์ ํ์์ ์ผ๋ฐ์ ์ผ๋ก ๋ค์ ํจํด์ ๋ฐ๋ฆ
๋๋ค. MAJOR.MINOR.PATCH์ฃผ์ ๋ฒ์ ๋ณ๊ฒฝ์ ์๋น์์ ์กฐ์น๊ฐ ํ์ํ ์ฃผ์ ๋ณ๊ฒฝ ์ฌํญ์ ๋ํ๋
๋๋ค. ๋ถ ๋ฒ์ ์ ์ด์ ๋ฒ์ ๊ณผ ํธํ๋๋ ์๋ก์ด ๊ธฐ๋ฅ์ ๋์
ํ๋ ๋ฐ๋ฉด, ํจ์น ๋ฒ์ ์ ๊ธฐ์กด ๋์์ ์ํฅ์ ๋ฏธ์น์ง ์๋ ๋ฒ๊ทธ ์์ ๋ฐ ๊ฐ์ ์ฌํญ์ ํฌํจํฉ๋๋ค. ์ด๋ฌํ ๊ท์น์ ๋ฐ๋ฅด๋ฉด ํ์ ์ฌ์ฉ์๋ ์
๊ทธ๋ ์ด๋ ์ฌ๋ถ์ ์๊ธฐ๋ฅผ ๊ฒฐ์ ํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
์๋น์ค๋ API๋ฅผ ๋ฆฌํฉํ ๋งํ ๋๋ ๋ฐํ์ ์ค๋ฅ๋ฅผ ๋ฐฉ์งํ๊ธฐ ์ํด ์ด์ ๋ฒ์ ๊ณผ์ ํธํ์ฑ์ ์ฐ์ ์ํด์ผ ํฉ๋๋ค. ์ฌ๊ธฐ์๋ ํ๋ ์ด๋ฆ, ์๋ต ๊ตฌ์กฐ, ์ ํ์ ๋งค๊ฐ๋ณ์ ์ ์ง ๊ด๋ฆฌ๊ฐ ํฌํจ๋ฉ๋๋ค. ํธํ์ฑ ํ ์คํธ๋ ์ต์ ๋ฒ์ ์ด ๊ธฐ์กด ๊ณ์ฝ์ ์๋ฐํ์ง ์๋์ง ํ์ธํ๊ธฐ ์ํด ์๋ํ๋์ด์ผ ํฉ๋๋ค.
์ข ์์ฑ ๊ด๋ฆฌ ๋๊ตฌ์ ํ ์คํธ ์๋ํ์ ๊ฒฐํฉ๋ ์๋ฏธ์ ๋ฒ์ ๊ด๋ฆฌ ๊ธฐ๋ฅ์ ์ค๋จ ์์ด ์์คํ ์ธํฐํ์ด์ค๋ฅผ ๋ฐ์ ์ํค๋ ์ฒด๊ณ์ ์ด๊ณ ํฌ๋ช ํ ํ๋ก์ธ์ค๋ฅผ ์ ๊ณตํฉ๋๋ค.
์ง์ ์ค๋จ ์ผ์ ๋ฐ ์๋น์ ์๋ฆผ
์์คํ ๋ฐ์ ๊ณผ์ ์์ ์ง์ ์ค๋จ์ ๋ถ๊ฐํผํ ๋ถ๋ถ์ด์ง๋ง, ์๋น์ค ์ฐ์์ฑ์ ์ ์งํ๋ ค๋ฉด ์ ์คํ๊ฒ ๊ด๋ฆฌํ๋ ๊ฒ์ด ๋งค์ฐ ์ค์ํฉ๋๋ค. ์ปดํฌ๋ํธ๋ API๋ฅผ ๋ฆฌํฉํ ๋งํ ๋, ํ์ ๋ช ํํ ์ง์ ์ค๋จ ์ผ์ ๊ณผ ์ํต ๊ณํ์ ์๋ฆฝํ์ฌ ์ฌ์ฉ์์๊ฒ ์์ ๋ ๋ณ๊ฒฝ ์ฌํญ์ ์๋ ค์ผ ํฉ๋๋ค. ์ด๋ฌํ ํฌ๋ช ์ฑ์ ํตํด ์ธ๋ถ ๋ฐ ๋ด๋ถ ์ดํด๊ด๊ณ์๋ ์ฌ์ ์ ์ ๊ทธ๋ ์ด๋๋ฅผ ๊ณํํ๊ณ ํตํฉ์ด ์ค๋จ๋ ์ํ์ ์ค์ผ ์ ์์ต๋๋ค.
์ฒด๊ณ์ ์ธ ์ง์ ์ค๋จ ํ๋ก์ธ์ค๋ ์ผ๋ฐ์ ์ผ๋ก ์ด์ ๊ตฌ์ฑ ์์ ๋๋ ์๋ํฌ์ธํธ๋ฅผ ๋ฌธ์ ๋ฐ ๋๊ตฌ์์ ์ง์ ์ค๋จ๋จ์ผ๋ก ํ์ํ๋ ๊ฒ์ผ๋ก ์์๋ฉ๋๋ค. ์ดํ, ์์ ํ ์ ๊ฑฐ๋๊ธฐ๊น์ง 90์ผ ๋๋ 180์ผ ๋ฑ ์ ํด์ง ์ง์ ๊ธฐ๊ฐ์ด ์ ๊ณต๋ฉ๋๋ค. ์ด ๊ธฐ๊ฐ ๋์ ์ด์ ๋ฒ์ ๊ณผ ์ ๋ฒ์ ์ด ๋์์ ์ง์๋ฉ๋๋ค.
์๋น์ ์๋ฆผ์ ์ ๊ทน์ ์ด๊ณ ์ง์์ ์ผ๋ก ์ ๊ณต๋์ด์ผ ํฉ๋๋ค. ์ฌ๊ธฐ์๋ ๋ฌธ์ ์ ๋ฐ์ดํธ, ๊ฐ๋ฐ์ ํฌํธ ์๋ฆผ, ์ด๋ฉ์ผ ์๋ฆผ, ๊ทธ๋ฆฌ๊ณ ์๋ต ํค๋์ ๋ฐํ์ ๊ฒฝ๊ณ ๊น์ง ํฌํจ๋ฉ๋๋ค. ๋ด๋ถ ์์คํ ์ ๊ฒฝ์ฐ, ๋ณ๊ฒฝ ์๋ฌธ ์์ํ๋ ์์ง๋์ด๋ง ๋ด์ค๋ ํฐ๋ฅผ ํตํด ์ธ์ง๋๋ฅผ ๋์ผ ์ ์์ต๋๋ค.
์ง์ ์ค๋จ ์ํ์ ์ฌ์ฉ๋ ๋ชจ๋ํฐ๋ง์ ํตํด ์ง์๋์ด์ผ ํฉ๋๋ค. ์ด๋ค ์๋น์๊ฐ ์ง์ ์ค๋จ๋ ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ ํ ์ฌ์ฉํ๋์ง ์ถ์ ํ๋ฉด ๋ค์ฒ์ง ์๋น์๋ฅผ ํ์ ํ๊ณ ์ง์ ๋ฒ์๋ฅผ ์ฐ์ ์ ์ผ๋ก ์ ํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. ์์ธก ๊ฐ๋ฅํ ์ผ์ ์ ์ค์ํ๊ณ ๋ง์ด๊ทธ๋ ์ด์ ๊ณผ์ ์ ๋ฐ์ ๊ฑธ์ณ ์๋น์๋ฅผ ์ง์ํจ์ผ๋ก์จ ํ์ ๋ฆฌํฉํ ๋ง ์์ ์ผ๋ก ์ธํด ์์์น ๋ชปํ ์๋น์ค ์ค๋จ์ด ๋ฐ์ํ์ง ์๋๋ก ํ ์ ์์ต๋๋ค.
์๋ํ๋ ๊ณ์ฝ ํ ์คํธ
์๋ํ๋ ๊ณ์ฝ ํ ์คํธ๋ ๋ฆฌํฉํ ๋ง ๊ณผ์ ์์ ๋ถ์ฐ ์์คํ ์ ์ฌ๋ฌ ๊ตฌ์ฑ ์์๊ฐ ํฉ์๋ ์ธํฐํ์ด์ค๋ฅผ ์ค์ํ๋์ง ํ์ธํ๋ ๊ฐ๋ ฅํ ๊ฒ์ฆ ๋ฐฉ๋ฒ์ ๋๋ค. ์ด๋ฌํ ํ ์คํธ๋ ๋ฏธ๋ฆฌ ์ ์๋ ๊ณ์ฝ์ ์ฌ์ฉํ์ฌ ์๋น์์ ๊ณต๊ธ์ ๊ฐ์ ์ํธ ์์ฉ์ ์๋ฎฌ๋ ์ด์ ํ์ฌ ํ ๊ตฌ์ฑ ์์์ ๋ณ๊ฒฝ์ผ๋ก ์ธํด ๋ค๋ฅธ ๊ตฌ์ฑ ์์์ ๋นํธํ์ฑ์ด๋ ํ๊ท๊ฐ ๋ฐ์ํ์ง ์๋์ง ํ์ธํฉ๋๋ค.
์ค์ ๋ก Pact, Spring Cloud Contract, Postman๊ณผ ๊ฐ์ ๊ณ์ฝ ํ ์คํธ ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ๋ฉด ๊ฐ๋ฐ์๊ฐ ์์๋๋ ์์ฒญ ๋ฐ ์๋ต ๋์์ ์ ์ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๊ณ์ฝ์ ์ง์์ ํตํฉ ๊ณผ์ ์์ ๊ฒ์ฆ๋์ด ํ๋ก๋์์ ์ปจ์๋จธ ๊ตฌํ์ด ๋๊ธฐํ๋์ด ์๋์ง ํ์ธํฉ๋๋ค. ์ด๋ ์์ ์ ์ธ API๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์๋น์ค๋ฅผ ๋ฆฌํฉํ ๋งํ๊ฑฐ๋ ๊ณต์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๊ฐ๋ฐํ ๋ ํนํ ์ ์ฉํฉ๋๋ค.
๋ผ์ด๋ธ ์์คํ ๋ฆฌํฉํ ๋ง ์ค์ ๊ณ์ฝ ํ ์คํธ๋ ์์ ๋ง ์ญํ ์ ํฉ๋๋ค. ๋ฆฌํฉํ ๋ง๋ ์ฝ๋๊ฐ ์ธํฐํ์ด์ค ์๊ตฌ ์ฌํญ์ ์ค์ํ๊ณ ๊ธฐ์กด ๊ตฌํ๊ณผ ํจ๊ป ๊ณ์ ์๋ํ ์ ์๋์ง ๊ฒ์ฆํฉ๋๋ค. ์ด๋ฅผ ํตํด ์ด์ ์ค๋ฅ ์ํ์ ์ต์ํํ๊ณ ํ์ด ๋ณ๊ฒฝ ์ฌํญ์ ๋ ๋น ๋ฅด๊ณ ํ์คํ๊ฒ ์ ๊ณตํ ์ ์์ต๋๋ค.
๊ณ์ฝ ํ ์คํธ๋ ๋ณ๋ ฌ ๊ฐ๋ฐ๋ ์ง์ํฉ๋๋ค. ํ์ด ์ํธ ์์กด์ ์ธ ๊ตฌ์ฑ ์์๋ฅผ ์์ ํ ๋, ๊ณต์ ๋ ๊ณ์ฝ์ ํ ๊ฐ์ ์ผ๊ด์ฑ์ ์ ์งํ๊ณ ์์ฌ์ํต ์ค๋ฅ๋ฅผ ์ค์ ๋๋ค. ์ด๋ฌํ ๋ฐฉ์์ผ๋ก ์๋ํ๋ ๋ณต์กํ ์ ํ ๊ณผ์ ์์ ํ์ ์ ๊ฐํํ๊ณ ์ ๋ขฐ์ฑ์ ๋ณด์ฅํฉ๋๋ค.
์ข ์์ฑ ๋ฐ ์ธํฐํ์ด์ค ๊ด๋ฆฌ
๋๊ท๋ชจ ์ ํ๋ฆฌ์ผ์ด์ ์์ ์ธํฐํ์ด์ค์ ์ธ๋ถ ์ข ์์ฑ์ ์์คํ ์ ์ํธ ์ด์ฉ์ฑ ๋ฐ ์งํ ๋ฅ๋ ฅ์ ์ ์ํฉ๋๋ค. ์์คํ ์ด ์ฑ์ฅํจ์ ๋ฐ๋ผ ์ข ์์ฑ ๊ด๋ฆฌ๋ ์์ ์ฑ ์ ์ง ๋ฐ ๋ณ๊ฒฝ ์ง์์ ์ค์ํ ์์๊ฐ ๋ฉ๋๋ค. ์์คํ ์ ์จ๋ผ์ธ ์ํ๋ก ์ ์งํ๋ฉด์ ์ฝ๋๋ ์๋น์ค๋ฅผ ๋ฆฌํฉํ ๋งํ ๋, ์ธํฐํ์ด์ค ๊ณ์ฝ์ ์์ ์ ์ด๊ณ ์ด์ ๋ฒ์ ๊ณผ์ ํธํ์ฑ์ ์ ์งํด์ผ ํ๋ฉฐ, ์ข ์์ฑ์ ์ฐ์์ ์ธ ์ค๋ฅ๋ฅผ ๋ฐฉ์งํ๊ธฐ ์ํด ๊ฒฉ๋ฆฌ๋๊ณ ๋ถ๋ฆฌ๋์ด์ผ ํฉ๋๋ค.
๋ค์ดํ์ ์๋ ๋ฆฌํฉํ ๋ง์๋ API ๋ฒ์ ๊ด๋ฆฌ, ๋จ๊ณ์ ์ง์ ์ค๋จ, ๊ทธ๋ฆฌ๊ณ ์๊ฒฉํ ํธํ์ฑ ๊ท์น ์ ์ฉ์ด ํฌํจ๋๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ๋ด๋ถ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ๊ณต์ ํ๋ ์์ํฌ์ ๊ฒฝ์ฐ, ํนํ ๋ ๊ฑฐ์ ํ๊ฒฝ์์ ์ข ์ ๊ตฌ์ฑ ์์๋ฅผ ์์์ํค์ง ์๊ณ ์ ๊ทธ๋ ์ด๋ํ๋ ๊ฒ์ด ๊ณผ์ ์ ๋๋ค. ์ธํฐํ์ด์ค ๋ฒ์ ๊ด๋ฆฌ, ์๋ฏธ์ ๋ณ๊ฒฝ ์ถ์ , ์ด์ค ๋ก๋ฉ ์ ๋ต๊ณผ ๊ฐ์ ๊ธฐ๋ฒ์ ๋ผ์ด๋ธ ์ ํ ์ ์ํ์ ์ํํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
์ด ์น์ ์์๋ ๋ผ์ด๋ธ ๋ฐฐํฌ ์ค์ API์ ํ๋ ์์ํฌ๋ฅผ ์์ ํ๊ฒ ๋ฐ์ ์ํค๋ ๋ฐฉ๋ฒ์ ๋ค๋ฃน๋๋ค. ๊ฒฐํฉ๋๋ฅผ ๋ฎ์ถ๊ณ , ์ด์ ๋ฌด๊ฒฐ์ฑ์ ์ ์งํ๋ฉฐ, ๋ฆฌํฉํ ๋ง๋ ๊ตฌ์ฑ ์์์ ๋ ๊ฑฐ์ ๊ตฌ์ฑ ์์ ์ ๋ฐ์ ๊ฑธ์ณ ํ ์คํธ ๋ฐ ๊ฒ์ฆ์ ์ํ ๋ช ํํ ๊ฒฝ๊ณ๋ฅผ ์ ๊ณตํ๋ ๊ฒ์ด ๋ชฉํ์ ๋๋ค.
๋ฒ์ ์ด ์ง์ ๋ API ๊ณ์ฝ
๋ฒ์ ๊ด๋ฆฌ API ๊ณ์ฝ์ ๋ค์ดํ์ ์๋ ํ๊ฒฝ์์ ์๋น์ค ์ธํฐํ์ด์ค๋ฅผ ๊ฐ๋ฐํ ๋ ํ์์ ์ ๋๋ค. ๋ฒ์ ์ ๋ช ํํ๊ฒ ๊ตฌ๋ถํจ์ผ๋ก์จ ๊ฐ๋ฐํ์ ๊ธฐ์กด ์ฌ์ฉ์์๊ฒ ์ง์ฅ์ ์ฃผ์ง ์๊ณ ์๋ก์ด ๊ธฐ๋ฅ์ ๋์ ํ๊ณ , ๊ตฌ์กฐ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ณ , ์๋ฏธ ์ฒด๊ณ๋ฅผ ๊ฐ์ ํ ์ ์์ต๋๋ค. ๋ฒ์ ๊ด๋ฆฌ ์ ๋ต์ ๊ธฐ์กด ์ธํฐํ์ด์ค๋ฅผ ์์ ํ ํ๊ธฐํ๊ธฐ ์ ์ ์ ์ง์ ์ธ ๋ง์ด๊ทธ๋ ์ด์ , ํธํ์ฑ ํ ์คํธ ๋ฐ ํผ๋๋ฐฑ ์์ง์ ์ํ ์์ถฉ ์ฅ์น ์ญํ ๋ ํฉ๋๋ค.
์ผ๋ฐ์ ์ธ ๋ฒ์ ๊ด๋ฆฌ ๋ชจ๋ธ์๋ URI ๊ธฐ๋ฐ ๋ฒ์ ๊ด๋ฆฌ์ ํค๋ ๊ธฐ๋ฐ ๋ฒ์ ๊ด๋ฆฌ์ ๋ ๊ฐ์ง๊ฐ ์์ต๋๋ค. URI ๊ธฐ๋ฐ ๋ฒ์ ๊ด๋ฆฌ๋ ๋ค์๊ณผ ๊ฐ์ ๋ฒ์ ์๋ณ์๋ฅผ ์ฌ์ฉํ์ฌ API ๊ฒฝ๋ก๋ฅผ ๋
ธ์ถํฉ๋๋ค. /v1/invoice /v2/invoice. ์ด๋ ๊ฒ ํ๋ฉด ๋ผ์ฐํ
์ด ๋ช
ํํด์ง๊ณ ๊ฐ ๋ฒ์ ์ ๋
๋ฆฝ์ ์ธ ๊ฐ๋ฐ์ด ๊ฐ๋ฅํด์ง๋๋ค. ๋ฐ๋ฉด, ํค๋ ๊ธฐ๋ฐ ๋ฒ์ ๊ด๋ฆฌ๋ ์๋ํฌ์ธํธ๋ฅผ ์ ์ ์ผ๋ก ์ ์งํ๋ฉด์ ์ฌ์ฉ์ ์ง์ ํค๋๋ฅผ ์ฌ์ฉํ์ฌ ๋ฒ์ ์ ๊ฒฐ์ ํ๋ฏ๋ก ์ผ๋ถ ํ๊ฒฝ์์ ๋ ํฐ ์ ์ฐ์ฑ์ ์ ๊ณตํฉ๋๋ค.
API ๊ณ์ฝ์ ์ ์ ๋ช ์ธ๋ก ์ทจ๊ธํด์ผ ํฉ๋๋ค. OpenAPI(Swagger) ๋๋ gRPC protobuf ์ ์์ ๊ฐ์ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ ์ด๋ฌํ ๊ณ์ฝ์ ์์ฑํ๊ณ ๊ฒ์ฆํ ์ ์์ต๋๋ค. Pact ๋๋ Postman๊ณผ ๊ฐ์ ๊ณ์ฝ ํ ์คํธ ๋๊ตฌ๋ ๋์ ๋ณ๊ฒฝ์ด ์๋์น ์๊ฒ ๋ฐ์ํ๋์ง ํ์ธํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
๋ฒ์ ์ ๋ช ์์ ์ผ๋ก ๊ด๋ฆฌํ๋ฉด ๋ฆฌํฉํ ๋ง๋ API๋ฅผ ๊ธฐ์กด API์ ๋ณํํ์ฌ ๋์ ํ ์ ์์ด ์ํํ ๋ง์ด๊ทธ๋ ์ด์ ๊ฒฝ๋ก๋ฅผ ์ ๊ณตํ๊ณ ์์คํ ์์ ์ฑ์ ์ ์งํ ์ ์์ต๋๋ค.
์ด์ ๋ฒ์ ๊ณผ์ ํธํ์ฑ์ ์ํ ์๋ฏธ์ ๋ฒ์ ๊ด๋ฆฌ
์๋ฏธ๋ก ์ ๋ฒ์ ๊ด๋ฆฌ๋ ๋ณ๊ฒฝ ์ฌํญ์ ํน์ฑ์ ๋ฒ์ ๋ฒํธ์ ์ง์ ์ธ์ฝ๋ฉํ์ฌ ์ฝ๋ ๋ฐ API ์งํ๋ฅผ ๊ด๋ฆฌํ๋ ์ฒด๊ณ์ ์ธ ์ ๊ทผ ๋ฐฉ์์ ์ ๊ณตํฉ๋๋ค. ๋ฌด์ค๋จ ๋ฆฌํฉํ ๋ง ํ๊ฒฝ์์ ์๋ฏธ๋ก ์ ๋ฒ์ ๊ด๋ฆฌ๋ ํนํ ์ฌ๋ฌ ๊ตฌ์ฑ ์์๊ฐ ๊ณต์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋๋ ์๋น์ค ๊ณ์ฝ์ ์์กดํ๋ ๊ฒฝ์ฐ ํ์ด ๋์ฑ ํจ๊ณผ์ ์ผ๋ก ์ํตํ๊ณ ์ ๋ฐ์ดํธ๋ฅผ ์กฐ์ ํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
๋ฒ์ ํ์์ ์ผ๋ฐ์ ์ผ๋ก ๋ค์ ํจํด์ ๋ฐ๋ฆ
๋๋ค. MAJOR.MINOR.PATCH์ฃผ์ ๋ฒ์ ๋ณ๊ฒฝ์ ์๋น์์ ์กฐ์น๊ฐ ํ์ํ ์ฃผ์ ๋ณ๊ฒฝ ์ฌํญ์ ๋ํ๋
๋๋ค. ๋ถ ๋ฒ์ ์ ์ด์ ๋ฒ์ ๊ณผ ํธํ๋๋ ์๋ก์ด ๊ธฐ๋ฅ์ ๋์
ํ๋ ๋ฐ๋ฉด, ํจ์น ๋ฒ์ ์ ๊ธฐ์กด ๋์์ ์ํฅ์ ๋ฏธ์น์ง ์๋ ๋ฒ๊ทธ ์์ ๋ฐ ๊ฐ์ ์ฌํญ์ ํฌํจํฉ๋๋ค. ์ด๋ฌํ ๊ท์น์ ๋ฐ๋ฅด๋ฉด ํ์ ์ฌ์ฉ์๋ ์
๊ทธ๋ ์ด๋ ์ฌ๋ถ์ ์๊ธฐ๋ฅผ ๊ฒฐ์ ํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
์๋น์ค๋ API๋ฅผ ๋ฆฌํฉํ ๋งํ ๋๋ ๋ฐํ์ ์ค๋ฅ๋ฅผ ๋ฐฉ์งํ๊ธฐ ์ํด ์ด์ ๋ฒ์ ๊ณผ์ ํธํ์ฑ์ ์ฐ์ ์ํด์ผ ํฉ๋๋ค. ์ฌ๊ธฐ์๋ ํ๋ ์ด๋ฆ, ์๋ต ๊ตฌ์กฐ, ์ ํ์ ๋งค๊ฐ๋ณ์ ์ ์ง ๊ด๋ฆฌ๊ฐ ํฌํจ๋ฉ๋๋ค. ํธํ์ฑ ํ ์คํธ๋ ์ต์ ๋ฒ์ ์ด ๊ธฐ์กด ๊ณ์ฝ์ ์๋ฐํ์ง ์๋์ง ํ์ธํ๊ธฐ ์ํด ์๋ํ๋์ด์ผ ํฉ๋๋ค.
์ข ์์ฑ ๊ด๋ฆฌ ๋๊ตฌ์ ํ ์คํธ ์๋ํ์ ๊ฒฐํฉ๋ ์๋ฏธ์ ๋ฒ์ ๊ด๋ฆฌ ๊ธฐ๋ฅ์ ์ค๋จ ์์ด ์์คํ ์ธํฐํ์ด์ค๋ฅผ ๋ฐ์ ์ํค๋ ์ฒด๊ณ์ ์ด๊ณ ํฌ๋ช ํ ํ๋ก์ธ์ค๋ฅผ ์ ๊ณตํฉ๋๋ค.
์ง์ ์ค๋จ ์ผ์ ๋ฐ ์๋น์ ์๋ฆผ
์์คํ ๋ฐ์ ๊ณผ์ ์์ ์ง์ ์ค๋จ์ ๋ถ๊ฐํผํ ๋ถ๋ถ์ด์ง๋ง, ์๋น์ค ์ฐ์์ฑ์ ์ ์งํ๋ ค๋ฉด ์ ์คํ๊ฒ ๊ด๋ฆฌํ๋ ๊ฒ์ด ๋งค์ฐ ์ค์ํฉ๋๋ค. ์ปดํฌ๋ํธ๋ API๋ฅผ ๋ฆฌํฉํ ๋งํ ๋, ํ์ ๋ช ํํ ์ง์ ์ค๋จ ์ผ์ ๊ณผ ์ํต ๊ณํ์ ์๋ฆฝํ์ฌ ์ฌ์ฉ์์๊ฒ ์์ ๋ ๋ณ๊ฒฝ ์ฌํญ์ ์๋ ค์ผ ํฉ๋๋ค. ์ด๋ฌํ ํฌ๋ช ์ฑ์ ํตํด ์ธ๋ถ ๋ฐ ๋ด๋ถ ์ดํด๊ด๊ณ์๋ ์ฌ์ ์ ์ ๊ทธ๋ ์ด๋๋ฅผ ๊ณํํ๊ณ ํตํฉ์ด ์ค๋จ๋ ์ํ์ ์ค์ผ ์ ์์ต๋๋ค.
์ฒด๊ณ์ ์ธ ์ง์ ์ค๋จ ํ๋ก์ธ์ค๋ ์ผ๋ฐ์ ์ผ๋ก ์ด์ ๊ตฌ์ฑ ์์ ๋๋ ์๋ํฌ์ธํธ๋ฅผ ๋ฌธ์ ๋ฐ ๋๊ตฌ์์ ์ง์ ์ค๋จ๋จ์ผ๋ก ํ์ํ๋ ๊ฒ์ผ๋ก ์์๋ฉ๋๋ค. ์ดํ, ์์ ํ ์ ๊ฑฐ๋๊ธฐ๊น์ง 90์ผ ๋๋ 180์ผ ๋ฑ ์ ํด์ง ์ง์ ๊ธฐ๊ฐ์ด ์ ๊ณต๋ฉ๋๋ค. ์ด ๊ธฐ๊ฐ ๋์ ์ด์ ๋ฒ์ ๊ณผ ์ ๋ฒ์ ์ด ๋์์ ์ง์๋ฉ๋๋ค.
์๋น์ ์๋ฆผ์ ์ ๊ทน์ ์ด๊ณ ์ง์์ ์ผ๋ก ์ ๊ณต๋์ด์ผ ํฉ๋๋ค. ์ฌ๊ธฐ์๋ ๋ฌธ์ ์ ๋ฐ์ดํธ, ๊ฐ๋ฐ์ ํฌํธ ์๋ฆผ, ์ด๋ฉ์ผ ์๋ฆผ, ๊ทธ๋ฆฌ๊ณ ์๋ต ํค๋์ ๋ฐํ์ ๊ฒฝ๊ณ ๊น์ง ํฌํจ๋ฉ๋๋ค. ๋ด๋ถ ์์คํ ์ ๊ฒฝ์ฐ, ๋ณ๊ฒฝ ์๋ฌธ ์์ํ๋ ์์ง๋์ด๋ง ๋ด์ค๋ ํฐ๋ฅผ ํตํด ์ธ์ง๋๋ฅผ ๋์ผ ์ ์์ต๋๋ค.
์ง์ ์ค๋จ ์ํ์ ์ฌ์ฉ๋ ๋ชจ๋ํฐ๋ง์ ํตํด ์ง์๋์ด์ผ ํฉ๋๋ค. ์ด๋ค ์๋น์๊ฐ ์ง์ ์ค๋จ๋ ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ ํ ์ฌ์ฉํ๋์ง ์ถ์ ํ๋ฉด ๋ค์ฒ์ง ์๋น์๋ฅผ ํ์ ํ๊ณ ์ง์ ๋ฒ์๋ฅผ ์ฐ์ ์ ์ผ๋ก ์ ํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. ์์ธก ๊ฐ๋ฅํ ์ผ์ ์ ์ค์ํ๊ณ ๋ง์ด๊ทธ๋ ์ด์ ๊ณผ์ ์ ๋ฐ์ ๊ฑธ์ณ ์๋น์๋ฅผ ์ง์ํจ์ผ๋ก์จ ํ์ ๋ฆฌํฉํ ๋ง ์์ ์ผ๋ก ์ธํด ์์์น ๋ชปํ ์๋น์ค ์ค๋จ์ด ๋ฐ์ํ์ง ์๋๋ก ํ ์ ์์ต๋๋ค.
์๋ํ๋ ๊ณ์ฝ ํ ์คํธ
์๋ํ๋ ๊ณ์ฝ ํ ์คํธ๋ ๋ฆฌํฉํ ๋ง ๊ณผ์ ์์ ๋ถ์ฐ ์์คํ ์ ์ฌ๋ฌ ๊ตฌ์ฑ ์์๊ฐ ํฉ์๋ ์ธํฐํ์ด์ค๋ฅผ ์ค์ํ๋์ง ํ์ธํ๋ ๊ฐ๋ ฅํ ๊ฒ์ฆ ๋ฐฉ๋ฒ์ ๋๋ค. ์ด๋ฌํ ํ ์คํธ๋ ๋ฏธ๋ฆฌ ์ ์๋ ๊ณ์ฝ์ ์ฌ์ฉํ์ฌ ์๋น์์ ๊ณต๊ธ์ ๊ฐ์ ์ํธ ์์ฉ์ ์๋ฎฌ๋ ์ด์ ํ์ฌ ํ ๊ตฌ์ฑ ์์์ ๋ณ๊ฒฝ์ผ๋ก ์ธํด ๋ค๋ฅธ ๊ตฌ์ฑ ์์์ ๋นํธํ์ฑ์ด๋ ํ๊ท๊ฐ ๋ฐ์ํ์ง ์๋์ง ํ์ธํฉ๋๋ค.
์ค์ ๋ก Pact, Spring Cloud Contract, Postman๊ณผ ๊ฐ์ ๊ณ์ฝ ํ ์คํธ ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ๋ฉด ๊ฐ๋ฐ์๊ฐ ์์๋๋ ์์ฒญ ๋ฐ ์๋ต ๋์์ ์ ์ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๊ณ์ฝ์ ์ง์์ ํตํฉ ๊ณผ์ ์์ ๊ฒ์ฆ๋์ด ํ๋ก๋์์ ์ปจ์๋จธ ๊ตฌํ์ด ๋๊ธฐํ๋์ด ์๋์ง ํ์ธํฉ๋๋ค. ์ด๋ ์์ ์ ์ธ API๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์๋น์ค๋ฅผ ๋ฆฌํฉํ ๋งํ๊ฑฐ๋ ๊ณต์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๊ฐ๋ฐํ ๋ ํนํ ์ ์ฉํฉ๋๋ค.
๋ผ์ด๋ธ ์์คํ ๋ฆฌํฉํ ๋ง ์ค์ ๊ณ์ฝ ํ ์คํธ๋ ์์ ๋ง ์ญํ ์ ํฉ๋๋ค. ๋ฆฌํฉํ ๋ง๋ ์ฝ๋๊ฐ ์ธํฐํ์ด์ค ์๊ตฌ ์ฌํญ์ ์ค์ํ๊ณ ๊ธฐ์กด ๊ตฌํ๊ณผ ํจ๊ป ๊ณ์ ์๋ํ ์ ์๋์ง ๊ฒ์ฆํฉ๋๋ค. ์ด๋ฅผ ํตํด ์ด์ ์ค๋ฅ ์ํ์ ์ต์ํํ๊ณ ํ์ด ๋ณ๊ฒฝ ์ฌํญ์ ๋ ๋น ๋ฅด๊ณ ํ์คํ๊ฒ ์ ๊ณตํ ์ ์์ต๋๋ค.
๊ณ์ฝ ํ ์คํธ๋ ๋ณ๋ ฌ ๊ฐ๋ฐ๋ ์ง์ํฉ๋๋ค. ํ์ด ์ํธ ์์กด์ ์ธ ๊ตฌ์ฑ ์์๋ฅผ ์์ ํ ๋, ๊ณต์ ๋ ๊ณ์ฝ์ ํ ๊ฐ์ ์ผ๊ด์ฑ์ ์ ์งํ๊ณ ์์ฌ์ํต ์ค๋ฅ๋ฅผ ์ค์ ๋๋ค. ์ด๋ฌํ ๋ฐฉ์์ผ๋ก ์๋ํ๋ ๋ณต์กํ ์ ํ ๊ณผ์ ์์ ํ์ ์ ๊ฐํํ๊ณ ์ ๋ขฐ์ฑ์ ๋ณด์ฅํฉ๋๋ค.
๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฐ ํ๋ ์์ํฌ ์ ๊ทธ๋ ์ด๋
๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ํ๋ ์์ํฌ ์ ๊ทธ๋ ์ด๋๋ ์ฅ๊ธฐ์ ์ธ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ง ๊ด๋ฆฌ ๋ฐ ๋ฆฌํฉํ ๋ง์ ํ์์ ์ธ ๋ถ๋ถ์ ๋๋ค. ์ด๋ฌํ ์ ๋ฐ์ดํธ๋ ์ฑ๋ฅ ํฅ์, ๋ณด์ ํจ์น, ๊ทธ๋ฆฌ๊ณ ์ฝ๋๋ฒ ์ด์ค๋ฅผ ๊ฐ์ํํ๊ณ ๊ฐ๋ฐ์ ๊ฒฝํ์ ํฅ์์ํค๋ ์ต์ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ํ์ง๋ง ์ง์์ ์ธ ํธ๋ํฝ์ด ๋ฐ์ํ๋ ์ด์ ์์คํ ์์๋ ์๋น์ค ์ค๋จ์ด๋ ๋ฐํ์ ์ค๋ฅ๋ฅผ ์ ๋ฐํ์ง ์๊ณ ๊ณต์ ๊ตฌ์ฑ ์์๋ฅผ ์ ๊ทธ๋ ์ด๋ํ๋ ๊ฒ์ด ๋งค์ฐ ๊น๋ค๋กญ์ต๋๋ค.
๋ค์ดํ์ ์๋ ์ ๊ทธ๋ ์ด๋๋ฅผ ์ํด์๋ ๋ณ๊ฒฝ ์ฌํญ์ ๋ถ๋ฆฌํ๊ณ , ์ฌ๋ฌ ๋ฒ์ ์ ๊ณต์กด์ ์ง์ํ๋ฉฐ, ๋ช ํํ ๋กค๋ฐฑ ๊ฒฝ๋ก๋ฅผ ์ ๊ณตํ๋ ์ ๋ต์ด ํ์ํฉ๋๋ค. ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋๋ ๋ฐํ์ ๋ณ๊ฒฝ ์ฌํญ์ด ์ฌ๋ฌ ๋ชจ๋์ ์ํฅ์ ๋ฏธ์น๋ ๊ฒฝ์ฐ, ๋จ๊ณ์ ์ผ๋ก ๋กค์์ํ๊ณ ๊ฐ ๋จ๊ณ๋ง๋ค ํธํ์ฑ์ ๊ฒ์ฆํ๋ ๊ฒ์ด ๋งค์ฐ ์ค์ํฉ๋๋ค. ์์ ํ ๋ฐฉ๋ฒ์ผ๋ก๋ ์ข ์์ฑ ์ฃผ์ ๋ํผ, ๋ฒ์ ๋ณ ํด๋์ค ๋ก๋ฉ, ์ปจํ ์ด๋ํ๋ ๋ฐฐํฌ ๋ฑ์ด ์์ต๋๋ค.
์ด ์น์ ์์๋ Java ๊ฐ์ ๋จธ์ , ๋ค์ดํฐ๋ธ ๋ฐ์ด๋๋ฆฌ ๋ก๋, ๊ทธ๋ฆฌ๊ณ ํด๋ฆฌ๊ธ๋กฏ ์ง์์ฑ์ ์์กดํ๋ ์์คํ ์ ํฌํจํ ๋ค์ํ ์คํ ํ๊ฒฝ์ด ๋ผ์ด๋ธ ์ ๊ทธ๋ ์ด๋๋ฅผ ์ด๋ป๊ฒ ์ง์ํ๋์ง ์ดํด๋ด ๋๋ค. ๊ฐ ์ ๊ทผ ๋ฐฉ์์ ํตํด ํ์ ๊ฐ๋ ์๊ฐ๊ณผ ๊ธฐ๋ฅ์ ์ผ๊ด์ฑ์ ์ ์งํ๋ฉด์ ์ํํธ์จ์ด ์คํ์ ์ ์ง์ ์ผ๋ก ๊ฐ์ ํ ์ ์์ต๋๋ค.
ํด๋์ค ๋ก๋ ๊ฒฉ๋ฆฌ ๊ธฐ์ (JVM)
Java ๊ธฐ๋ฐ ํ๊ฒฝ์์ ํด๋์ค๋ก๋ ์ํคํ ์ฒ๋ ์ฌ๋ฌ ๋ฒ์ ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ๋ฉ๋ชจ๋ฆฌ์ ๊ณต์กดํ ์ ์๋๋ก ํฉ๋๋ค. ๋ฐ๋ผ์ Java ๊ฐ์ ๋จธ์ ์ ํนํ ์๋น์ค๋ฅผ ๋ ๋ฆฝ์ ์ผ๋ก ๋ฐฐํฌํ๊ฑฐ๋ ์ฌ์์ํ ์ ์๋ ๋ชจ๋์ ์ ํ๋ฆฌ์ผ์ด์ ์์ ๋ค์ดํ์ ์๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ ๊ทธ๋ ์ด๋์ ์ ํฉํฉ๋๋ค.
๊ฒฉ๋ฆฌ๋ ํด๋์ค๋ก๋๋ฅผ ์ฌ์ฉํ๋ฉด ๊ฐ ์ ํ๋ฆฌ์ผ์ด์ ๋ชจ๋์ ๋ค๋ฅธ ๋ชจ๋์ ์ํฅ์ ์ฃผ์ง ์๊ณ ์์ฒด ๋ฒ์ ์ ์ข ์์ฑ์ ๋ก๋ํ ์ ์์ต๋๋ค. ์ด๋ OSGi์ ๊ฐ์ ํ๋ ์์ํฌ๋ ๊ฐ๋ณ ๋ชจ๋์ ์๋๋ฐ์คํ๋ ์ฌ์ฉ์ ์ง์ ๋ฐํ์ ์ปจํ ์ด๋๋ฅผ ํตํด ๊ตฌํ๋๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์ ๋ฒ์ ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ๋์ ๋๋ฉด ๋ณ๋์ ํด๋์ค๋ก๋ ์ปจํ ์คํธ์ ๋ก๋ํ ์ ์์ผ๋ฏ๋ก ๊ธฐ์กด ์ธ์คํด์ค๋ฅผ ๊ฑด๋๋ฆฌ์ง ์๊ณ ๋ ์ค์ ์ ํจ์ฑ ๊ฒ์ฌ๋ฅผ ์ํํ ์ ์์ต๋๋ค.
์๋ธ๋ฆฟ ์ปจํ ์ด๋๋ ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ๋ฅผ ์ฌ์ฉํ๋ ์ ํ๋ฆฌ์ผ์ด์ ๋ ํซ ๋ฐฐํฌ ๋ฉ์ปค๋์ฆ์ ํ์ฉํ ์ ์์ต๋๋ค. ๋ชจ๋์ฑ์ ๊ณ ๋ คํ์ฌ ์ค๊ณํ๋ฉด, ์ ๋ฐ์ดํธ๋ ์ข ์์ฑ์ ํฌํจํ๋ ์ WAR ๋๋ JAR ํ์ผ์ ๋ฐฐํฌํ๊ณ , ์ ์ฒด ์๋ฒ๊ฐ ์๋ ์ํฅ์ ๋ฐ๋ ๋ชจ๋๋ง ๋ค์ ๋ก๋ํ๋ ๋ฐฉ์์ผ๋ก ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ๋ฐ์ดํธํ ์ ์์ต๋๋ค.
ํด๋์ค ์ถฉ๋, ๋ฉ๋ชจ๋ฆฌ ๋์ ๋๋ ์ค๋๋ ์ฐธ์กฐ์ ๊ด๋ จ๋ ๋ฌธ์ ๋ฅผ ํ์ ํ๋ ค๋ฉด ๋ชจ๋ํฐ๋ง๊ณผ ๋ก๊น ์ด ํ์์ ์ ๋๋ค. ์ ๋ฒ์ ์ ์ ํจ์ฑ์ด ๊ฒ์ฌ๋๋ฉด ์ด์ ํด๋์ค๋ก๋ ์ธ์คํด์ค๋ฅผ ์์ ํ๊ฒ ์ธ๋ก๋ํ์ฌ ๋ผ์ด๋ธ ํธ๋ํฝ์ ์ ํ ์ํฅ์ ์ฃผ์ง ์๊ณ ์ ๊ทธ๋ ์ด๋๋ฅผ ์๋ฃํ ์ ์์ต๋๋ค.
๋ณ๋ ฌ DLL ๋ก๋ฉ(๋ค์ดํฐ๋ธ ์ฝ๋)
Windows๋ Linux์ C ๋๋ C++ ์ ํ๋ฆฌ์ผ์ด์ ์ฒ๋ผ ๋ค์ดํฐ๋ธ ์ฝ๋์ ์์กดํ๋ ํ๊ฒฝ์์๋ ๊ณต์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๋ฆฌํฉํ ๋งํ๊ฑฐ๋ ์ ๊ทธ๋ ์ด๋ํ๋ ๋ฐ ๋ค๋ฅธ ์ ๋ต์ด ํ์ํฉ๋๋ค. ํจ๊ณผ์ ์ธ ๋ฐฉ๋ฒ ์ค ํ๋๋ ๋ณ๋ ฌ DLL ๋๋ ๊ณต์ ๊ฐ์ฒด ๋ก๋ฉ์ผ๋ก, ๋ค์ดํฐ๋ธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์ฌ๋ฌ ๋ฒ์ ์ ๋์์ ๋ฉ๋ชจ๋ฆฌ์ ๋ก๋ํ์ง๋ง ์๋ก ๋ค๋ฅธ ์ ํ๋ฆฌ์ผ์ด์ ๊ตฌ์ฑ ์์์ ์ฐ๊ฒฐํ๋ ๋ฐฉ์์ ๋๋ค.
์ด๋ Windows์ ๊ฐ์ ์ด์ ์ฒด์ ๊ฐ ๋ณ๋ ฌ ์ด์ ๋ธ๋ฆฌ๋ฅผ ์ง์ํ์ฌ ์ ํ๋ฆฌ์ผ์ด์ ์ด ๋ฐํ์์ ํน์ ๋ฒ์ ์ DLL์ ์ฐธ์กฐํ ์ ์๊ธฐ ๋๋ฌธ์ ๊ฐ๋ฅํฉ๋๋ค. Linux ์์คํ ์ ๋์ ๋ง์ปค ๊ตฌ์ฑ ๋ฐ rpath ์ค์ ์ ์ฌ์ฉํ์ฌ ์ ์ฌํ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ์ ์คํ๊ฒ ์ฐ๊ฒฐํ๋ฉด ๊ธฐ์กด ๊ตฌ์ฑ ์์๋ ์๋ ๋ฐ์ด๋๋ฆฌ๋ฅผ ๊ณ์ ์ฌ์ฉํ๋ ๋ฐ๋ฉด, ๋ฆฌํฉํ ๋ง๋ ๋ชจ๋์ ์ ๋ฒ์ ์ ํธ์ถํฉ๋๋ค.
์ ํ ์ค์ ์๋น์ค ํธ์ถ์ ์ฌ์ฉํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฒ์ ์ ์ ํํ๋ ์ถ์ํ ๊ณ์ธต ๋๋ ์ด๋ํฐ๋ฅผ ํตํด ๋ผ์ฐํ ๋ ์ ์์ต๋๋ค. ์ด๋ฌํ ์ค์ ์ ํตํด ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์์ ํ ์ ์ฉํ๊ธฐ ์ ์ ์ค์ ์ฑ๋ฅ ๋ฐ ํธํ์ฑ ํ ์คํธ๋ฅผ ์ํํ ์ ์์ต๋๋ค. ๋ ๋ฒ์ ์ด ๋ชจ๋ ์กด์ฌํ๊ณ ๋ผ์ฐํ ๋ก์ง๋ง ์กฐ์ ํ๋ฉด ๋๋ฏ๋ก ๋กค๋ฐฑ๋ ๊ฐ์ํ๋ฉ๋๋ค.
์ด ๋ฐฉ๋ฒ์ ์ ์ฒด ํ๋ก์ธ์ค ์ฌ์์์ด ๋ถ๊ฐ๋ฅํ ์์ ์ด ์ค์ํ๊ฑฐ๋ ์ค์๊ฐ ์์คํ ์์ ํนํ ์ ์ฉํฉ๋๋ค. ๋ ๊ฑฐ์ ์ธํ๋ผ์ ์ต์ ์ฝ๋ ๊ฐ์ ์ฌํญ ๊ฐ์ ์์ ํ ์ฐ๊ฒฐ ๊ณ ๋ฆฌ๋ฅผ ์ ๊ณตํฉ๋๋ค.
ํผํฉ ๋ฒ์ ์ ๋ํ ๋ค๊ตญ์ด ์ง์์ฑ
ํด๋ฆฌ๊ธ๋กฏ ์ง์์ฑ์ ๋จ์ผ ์ ํ๋ฆฌ์ผ์ด์ ์ํคํ ์ฒ ๋ด์์ ์ฌ๋ฌ ๋ฐ์ดํฐ ์ ์ฅ ๊ธฐ์ ๋๋ ๋ชจ๋ธ์ ์ฌ์ฉํ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค. ์ ๋ก ๋ค์ดํ์ ๋ฆฌํฉํ ๋ง์ ๋งฅ๋ฝ์์, ๋จ๊ณ์ ๋ง์ด๊ทธ๋ ์ด์ ์ ์ผ๋ถ๋ก ์๋ก ๋ค๋ฅธ ์คํค๋ง ๋ฒ์ ๋๋ ์ ์ฅ ์์ง์ด ์ผ์์ ์ผ๋ก ๊ณต์กดํ๋ ๊ฒ์ ์๋ฏธํ๊ธฐ๋ ํฉ๋๋ค.
ORM, ์ฟผ๋ฆฌ ๋น๋, ์ง๋ ฌํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฑ ์ ์ฅ์์ ์ํธ ์์ฉํ๋ ํ๋ ์์ํฌ๋ฅผ ์ ๊ทธ๋ ์ด๋ํ ๋, ํด๋ฆฌ๊ธ๋กฏ ์ง์์ฑ์ ํตํด ์ํํ ์ ํ์ด ๊ฐ๋ฅํฉ๋๋ค. ์๋ฅผ ๋ค์ด, ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ธฐ์กด ORM์ ์ฌ์ฉํ์ฌ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฐ์ดํฐ๋ฅผ ๊ณ์ ์ฐ๋ ๋์์ ์ ๋ชจ๋์ ์ ํจ์ฑ ๊ฒ์ฌ๋ฅผ ์ํด ๋์ผํ ๋ฐ์ดํฐ๋ฅผ ๋ฌธ์ ์ ์ฅ์์ ์ธ ์ ์์ต๋๋ค. ๋๋ ๋ ๋ฒ์ ๋ชจ๋ ๋์ผํ ๋ฐฑ์๋๋ฅผ ์ฌ์ฉํ์ง๋ง ์คํค๋ง๋ ๊ฐ์ฒด ๋งคํ์ด ์๋ก ๋ค๋ฅผ ์ ์์ต๋๋ค.
์ด ์ ๊ทผ ๋ฐฉ์์ ์ ๋ฒ์ ์ ๊ธฐ์กด ๋ฒ์ ๊ณผ ํจ๊ป ํ ์คํธํ ์ ์๋๋ก ํ์ฌ ์ํ์ ์ค์ ๋๋ค. ๋ํ ๋จ์ผ ๋ฐ์ดํฐ ๋ชจ๋ธ์์ ๊ตฌ์ฑ ์์๋ฅผ ๋ถ๋ฆฌํ์ฌ ๋์ฑ ์ ์ฐํ ์ํคํ ์ฒ๋ฅผ ๊ตฌ์ถํ ์ ์๋๋ก ํฉ๋๋ค. ํด๋ฆฌ๊ธ๋กฏ ์ง์์ฑ์ ๊ตฌํํ๋ ค๋ฉด ๋ฐ์ดํฐ ์ผ๊ด์ฑ์ ๋ณด์ฅํ๊ธฐ ์ํ ์ ์คํ ๋๊ธฐํ ๋ฐ ๋ชจ๋ํฐ๋ง์ด ํ์ํฉ๋๋ค.
์๋ก์ด ์คํ ๋ฆฌ์ง ๋ชจ๋ธ์ด๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์์ ์ ์์ด ์ ์ฆ๋๋ฉด ์์คํ ์ ์ฝ๊ธฐ ๋ฐ ์ฐ๊ธฐ ์์ ์ ์์ ํ ๋ฆฌํฉํ ๋ง๋ ๊ฒฝ๋ก๋ก ์ ํํ ์ ์์ต๋๋ค. ์ดํ ๋ ๊ฑฐ์ ์ง์์ ๋จ๊ณ์ ์ผ๋ก ์ค๋จ๋์ด ๋ค์ดํ์ ์์ด ๋ง์ด๊ทธ๋ ์ด์ ์ด ์๋ฃ๋ฉ๋๋ค.
๊ฒ์ฆ ๋ฐ ๋กค๋ฐฑ ์ ๋ต
์์คํ ์ ์๋ฌด๋ฆฌ ์ ์คํ๊ฒ ๋ฆฌํฉํ ๋งํ๋๋ผ๋ ์์์น ๋ชปํ ๋์์ ์ํ์ ํญ์ ์กด์ฌํฉ๋๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ๊ฐ๋ ฅํ ๊ฒ์ฆ ๋ฐ ๋กค๋ฐฑ ๋ฉ์ปค๋์ฆ์ ๋ชจ๋ ๋ฌด์ค๋จ ์ ๋ต์ ํ์์ ์ธ ์์์ ๋๋ค. ์ด๋ฌํ ๋ฉ์ปค๋์ฆ์ ๋ณ๊ฒฝ ์ฌํญ์ ์ ํ์ฑ์ ๋ํ ํ์ ์ ์ ๊ณตํ๊ณ ๋ฐฐํฌ ํ ๋ฌธ์ ๋ฐ์ ์ ์ ์ํ ๋ณต๊ตฌ๋ฅผ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค.
๊ฒ์ฆ์ ๊ธฐ๋ฅ์ ๋์์ ์ ํ์ฑ๊ณผ ์ง์ฐ ์๊ฐ, ์ค๋ฅ์จ, ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋๊ณผ ๊ฐ์ ๋น๊ธฐ๋ฅ์ ์งํ์ ์์ ์ฑ์ ๋ชจ๋ ํ์ธํ๋ ๊ฒ์ ํฌํจํฉ๋๋ค. ๋ฐ๋ฉด, ๋กค๋ฐฑ ์ ๋ต์ ๋ฌธ์ ๋ฐ์ ์ ๋ฐฐํฌ ๋๋ ๋ฐ์ดํฐ ๋ณ๊ฒฝ์ ์์ ํ๊ฒ ๋๋๋ฆฌ๋ ๋ฐ ์ค์ ์ ๋ก๋๋ค. ์ด๋ฌํ ์ ๋ต์ ๋ผ์ด๋ธ ๋ฆฌํฉํ ๋ง ์์ ์ด ์์คํ ์์ ์ฑ์ ์ ํดํ์ง ์๋๋ก ๋ณด์ฅํฉ๋๋ค.
์ด ์น์ ์์๋ ์ฝ๋ ๋ฐฐํฌ, ์๋น์ค ๊ต์ฒด ๋ฐ ์คํค๋ง ๋ณ๊ฒฝ ์ ๋ฐ์ ์ ์ฉ๋๋ ์๋ํ๋ ํ ์คํธ, ๊ด์ฐฐ ๊ฐ๋ฅ์ฑ ๊ดํ ๋ฐ ๋กค๋ฐฑ ๋ฐฉ๋ฒ์ ์๊ฐํฉ๋๋ค. ์ด๋ฌํ ์ ๋ต์ ์ง์์ ๋ฐฐํฌ ํ์ดํ๋ผ์ธ ๋ฐ ๋ฐํ์ ๋ชจ๋ํฐ๋ง๊ณผ ํตํฉํ๋ฉด ๋ฆฌํฉํ ๋ง์ ๋ฐ๋ณต ๊ฐ๋ฅํ๊ณ ์ํ๋๊ฐ ๋ฎ์ ํ๋์ผ๋ก ์ ํํ ์ ์์ต๋๋ค.
์๋ํ๋ ์นด๋๋ฆฌ์ ๋ถ์
์นด๋๋ฆฌ์ ๋ถ์์ ํธ๋ํฝ์ ์ผ๋ถ๋ง ์ ๋ฒ์ ์ ์ ํ๋ฆฌ์ผ์ด์ ์ผ๋ก ๋ผ์ฐํ ํ๊ณ ๋๋จธ์ง๋ ์์ ์ ์ธ ๋ฒ์ ์ ๊ณ์ ์ฌ์ฉํ๋ ๋ฐฐํฌ ๊ฒ์ฆ ์ ๋ต์ ๋๋ค. ์๋ํ๋ ์นด๋๋ฆฌ์ ๋ถ์์ ์ค์๊ฐ ์๊ฒฉ ๋ถ์๊ณผ ์ฌ์ ์ ์๋ ์ฑ๊ณต ๊ธฐ์ค์ ์ฌ์ฉํ์ฌ ์นด๋๋ฆฌ์ ์ธ์คํด์ค์ ์ฑ๋ฅ๊ณผ ์ ํ์ฑ์ ์ง์์ ์ผ๋ก ํ๊ฐํจ์ผ๋ก์จ ์ด ๊ฐ๋ ์ ๋์ฑ ๋ฐ์ ์ํต๋๋ค.
์ด ๋ฐฉ๋ฒ์ ์ผ๋ฐ์ ์ผ๋ก ์นด๋๋ฆฌ์ ๋ฒ์ ๊ณผ ๊ธฐ์ค ๋ฒ์ ๊ฐ์ ์๋ต ์๊ฐ, ์ค๋ฅ์จ, ๋น์ฆ๋์ค KPI๋ฅผ ๋น๊ตํฉ๋๋ค. Kayenta, Flagger, Argo Rollouts์ ๊ฐ์ ๋๊ตฌ๋ CI/CD ํ์ดํ๋ผ์ธ๊ณผ ํตํฉ๋์ด ์ค์๊ฐ ์งํ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ฆด๋ฆฌ์ค๋ฅผ ์น๊ฒฉ, ์ผ์ ์ค์ง ๋๋ ๋กค๋ฐฑํ ์ง ์ฌ๋ถ๋ฅผ ์๋์ผ๋ก ๊ฒฐ์ ํฉ๋๋ค.
์๋ํ๋ ์นด๋๋ฆฌ์ ๋ถ์์ ์ด๊ธฐ ๋จ๊ณ์ ๋กค์์ ๊ณผ์ ์์ ์๋ ์์ฌ ๊ฒฐ์ ์ ํ์์ฑ์ ์์ ์ค๋๋ค. ๋ณ๊ฒฝ ์ฌํญ์ด ์ค์ ์ฌ์ฉ์ ํธ๋ํฝ์ ๋ฏธ์น๋ ์ํฅ์ ๋ฐ์ํ๋ ์ธก์ ๊ฐ๋ฅํ๊ณ ๊ฐ๊ด์ ์ธ ์ ํธ๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ด๋ ๊ท๋ชจ๋ ๋ณต์ก์ฑ์ผ๋ก ์ธํด ์ฌ์ ํ๋ก๋์ ๋จ๊ณ์์ ์์ ํ ํ ์คํธํ ์ ์๋ ๊ตฌ์ฑ ์์๋ฅผ ๋ฆฌํฉํ ๋งํ ๋ ํนํ ์ ์ฉํฉ๋๋ค.
์ง์์ ์ผ๋ก ์ํฅ์ ํ๊ฐํ๋ ๋์์ ๋ ธ์ถ์ ์ ํํจ์ผ๋ก์จ, ์นด๋๋ฆฌ์ ๋ถ์์ ์๋ชป๋ ๋ฐฐํฌ๋ก ์ธํ ํญ๋ฐ ๋ฐ๊ฒฝ์ ํฌ๊ฒ ์ค์ด๊ณ ์ค์๊ฐ ์ ๋ฐ์ดํธ์ ๋ํ ์ ๋ขฐ๋ฅผ ๊ตฌ์ถํฉ๋๋ค.
ํฉ์ฑ ๊ฑฐ๋ ๋ชจ๋ํฐ๋ง
ํฉ์ฑ ํธ๋์ญ์ ๋ชจ๋ํฐ๋ง์ ์ค์ ๊ธฐ๋ฅ์ด ์ ์์ ์ผ๋ก ์๋ํ๋์ง ํ์ธํ๊ธฐ ์ํด ์ผ์ ์ ๋ฐ๋ผ ์ฌ์ฉ์์ ์์คํ ์ ์ํธ์์ฉ์ ์๋ฎฌ๋ ์ด์ ํ๋ ๊ฒ์ ํฌํจํฉ๋๋ค. ์ด๋ฌํ ์๋ฎฌ๋ ์ด์ ๋ ํธ๋์ญ์ ์ ๋ก๊ทธ์ธ ํ๋ฆ, ์์ ์ ์ถ, ๋ฐ์ดํฐ ๊ฒ์ ๋ฐ ๊ธฐํ ์ค์ ๋์์ ์๋ฎฌ๋ ์ด์ ํ์ฌ ํ๋ก๋์ ํ๊ฒฝ์์ ์์ ์๋ํ๋ QA ๊ณ์ธต ์ญํ ์ ํฉ๋๋ค.
๋ฆฌํฉํ ๋ง ํ๋ก์ ํธ ์ค์ ์ข ํฉ ๋ชจ๋ํฐ๋ง์ ํตํด ์๋ชป๋ ๋ก์ง, ๋ถ์์ ํ ์ ํ ๋๋ ์๋ชป ๊ตฌ์ฑ๋ ํ๊ฒฝ์ ์กฐ๊ธฐ์ ๊ฐ์งํ ์ ์์ต๋๋ค. ๋ฆฌํฉํ ๋ง๋ ๊ตฌ์ฑ ์์๊ฐ ์์๋๋ก ์๋ตํ๊ณ ๋ค์ด์คํธ๋ฆผ ์์คํ ๊ณผ ์ฌ๋ฐ๋ฅด๊ฒ ์ํธ ์์ฉํ๋์ง ๊ฒ์ฆํฉ๋๋ค. ํธ๋์ญ์ ์ด ์คํฌ๋ฆฝํธํ๋๊ณ ์์ธก ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ ์๊ฐ ๊ฒฝ๊ณผ์ ๋ฐ๋ผ ๊ฒฐ๊ณผ๋ฅผ ์ผ๊ด๋๊ฒ ๋น๊ตํ์ฌ ํ๊ท๋ฅผ ์๋ณํ ์ ์์ต๋๋ค.
Pingdom, Dynatrace, New Relic Synthetics์ ๊ฐ์ ์ข ํฉ ๋ชจ๋ํฐ๋ง ๋๊ตฌ๋ ๋์๋ณด๋ ๋ฐ ์๋ฆผ ์์คํ ๊ณผ ํตํฉ๋ฉ๋๋ค. ์ด๋ฌํ ๋๊ตฌ๋ ๋ฆฌํฉํฐ๋ง ์ ํ ๋จ๊ณ์์ ์ ์ฉํ ์์ธ ๋ก๊ทธ ๋ฐ ์ฑ๋ฅ ์ถ์ ์ ๋ณด๋ฅผ ์ ๊ณตํฉ๋๋ค.
์ด ๊ธฐ์ ์ ํนํ ์ค๋จ ์ ์ฌ์ฉ์์๊ฒ ์ง์ ์ ์ธ ์ํฅ์ ๋ฏธ์น๋ ๋น์ฆ๋์ค ํฌ๋ฆฌํฐ์ปฌ ์ํฌํ๋ก์ฐ๋ฅผ ๊ฒ์ฆํ๋ ๋ฐ ์ ์ฉํฉ๋๋ค. ์ค์๊ฐ ์๊ฒฉ ๋ถ์ ๋ฐ ์ฌ๊ณ ๋์ ์๋ํ์ ๊ฒฐํฉํ๋ฉด ์ข ํฉ์ ๋ชจ๋ํฐ๋ง์ ๋ฌด์ค๋จ ์ ๋ต์ ์ ๋ขฐ์ฑ์ ๊ฐํํฉ๋๋ค.
์ด์ ๊ฐ์ง ์๊ณ๊ฐ
์ด์ ํ์ง๋ ํต๊ณ ๋ชจ๋ธ, ๋จธ์ ๋ฌ๋ ์๊ณ ๋ฆฌ์ฆ ๋๋ ๊ท์น ๊ธฐ๋ฐ ์๋ฆผ์ ์ฌ์ฉํ์ฌ ์์ ์์คํ ๋์์์ ๋ฒ์ด๋ ๋์์ ์๋ณํ๋ ๊ฒ์ ๋งํฉ๋๋ค. ๋ฆฌํฉํ ๋ง ๊ณผ์ ์์ ์ด์ ํ์ง ์์คํ ์ ์ค๋ฅ์จ ์ฆ๊ฐ, ๋น์ ์์ ์ธ ํธ๋ํฝ ํจํด, ์ฑ๋ฅ ์ ํ ๋ฑ ๊ธฐ๋ณธ์ ์ธ ์ ๊ฒ์ผ๋ก๋ ํฌ์ฐฉํ๊ธฐ ์ด๋ ค์ด ์๋์น ์์ ๊ฒฐ๊ณผ๋ฅผ ํ์ ํ ์ ์์ต๋๋ค.
์๊ณ๊ฐ์ ์ผ๋ฐ์ ์ผ๋ก ๊ณผ๊ฑฐ ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ค์ ๋ฉ๋๋ค. ํ๊ท ์ง์ฐ ์๊ฐ, CPU ์ฌ์ฉ๋ฅ ๋๋ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋๊ณผ ๊ฐ์ ์งํ๊ฐ ๊ณ์ฐ๋ ์ ๋ขฐ ๊ตฌ๊ฐ์ ์ด๊ณผํ๋ฉด ์์คํ ์ ํด๋น ์ด๋ฒคํธ๋ฅผ ์ ์ฌ์ ์ด์ ์งํ๋ก ํ์ํฉ๋๋ค. Datadog, AlertManager๊ฐ ํฌํจ๋ Prometheus, Elastic APM๊ณผ ๊ฐ์ ๋จธ์ ๋ฌ๋ ๊ธฐ๋ฐ ํ๋ซํผ์ ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ์ ์ํ์ฌ ์๋ฆผ์ ์ ํ๋๋ฅผ ํฅ์์ํฌ ์ ์์ต๋๋ค.
๋ค์ดํ์์ด ์๋ ์๋๋ฆฌ์ค์์๋ ์ด๋ฌํ ์๊ณ๊ฐ์ด ๊ฐ๋๋ ์ผ ์ญํ ์ ํฉ๋๋ค. ๋ฆฌํฉํ ๋ง๋ ์๋น์ค๋ก ์ธํด ๋ฏธ๋ฌํ ํ๊ท๋ผ๋ ๋ฐ์ํ๋ ๊ฒฝ์ฐ, ์์คํ ์ ํธ๋ํฝ ๋กค์์์ ์ค๋จํ๊ฑฐ๋ ์๋ ๋กค๋ฐฑ์ ํธ๋ฆฌ๊ฑฐํ ์ ์์ต๋๋ค. ๊ฐ๋ฐ์๋ ์ถ๊ฐ ์์ ์ ์งํํ๊ธฐ ์ ์ ์ ์ฒด ์ปจํ ์คํธ ๋ฐ ์๊ฒฉ ๋ถ์์ ํตํด ์กฐ์ฌํ ์ ์์ต๋๋ค.
์ด์ ํ์ง๋ ํ์ค ํ ์คํธ์์ ์ฝ๊ฒ ์ ์ํ๊ธฐ ์ด๋ ค์ด ๊ฒฝ๊ณ ์กฐ๊ฑด๊ณผ ๋ณต์กํ ํจํด์ ์๋ณํ์ฌ ๋ค๋ฅธ ๊ฒ์ฆ ๋ฐฉ๋ฒ์ ๋ณด์ํฉ๋๋ค. ๋ํ, ์ด์ ํ๊ฒฝ์์ ๋ฐ์ํ๋ ์กฐ์ฉํ ์ค๋ฅ์ ๋ํ ๋ฐฉ์ด๋ ฅ์ ํ์ธต ๊ฐํํฉ๋๋ค.
์ฆ๊ฐ์ ์ธ ๋กค๋ฐฑ ๋ฉ์ปค๋์ฆ
์ฆ๊ฐ์ ์ธ ๋กค๋ฐฑ ๊ธฐ๋ฅ์ ๋ฌด์ค๋จ ์ด์์ ํ์์ ์ ๋๋ค. ๋ช ์ด ์์ ์ ํ๋ฆฌ์ผ์ด์ ๋๋ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ์๋ ค์ง ์ ์ ๋ฒ์ ์ผ๋ก ๋๋๋ฆด ์ ์๋ ๊ธฐ๋ฅ์ ์ ๊ณตํ์ฌ ๋ฆฌํฉํ ๋ง ์ค๋ฅ๋ ํ๊ท์ ์ํฅ์ ์ค์ฌ์ค๋๋ค. ์ด๋ฌํ ๋ฉ์ปค๋์ฆ์ ์ต์ํ์ ์๋ ๊ฐ์ ์ผ๋ก ์์ ํ ์๋ํ๋์ด์ผ ํ๋ฉฐ, ์งํ ์ค์ธ ์ธ์ ์ด๋ ํธ๋์ญ์ ์ ์ค๋จ์ํค์ง ์์์ผ ํฉ๋๋ค.
์ฝ๋ ๋ฐฐํฌ์ ๊ฒฝ์ฐ, ๋ณ๊ฒฝ ๋ถ๊ฐ๋ฅํ ์ํฐํฉํธ์ ๋ธ๋ฃจ-๊ทธ๋ฆฐ ๋ฐฐํฌ ๋ชจ๋ธ์ ๊ฑฐ์ ์ฆ๊ฐ์ ์ธ ๋กค๋ฐฑ์ ์ง์ํฉ๋๋ค. ์ด ์ค์ ์์ ์ด์ ๋ฒ์ ์ ์ญ์ ๋์ง ์๊ณ ๋ณ๋ ฌ ํ๊ฒฝ์ ๊ทธ๋๋ก ์ ์ง๋ฉ๋๋ค. ๋ก๋ ๋ฐธ๋ฐ์ ์ฌ๊ตฌ์ฑ์ด๋ DNS ์ ๋ฐ์ดํธ๋ฅผ ํตํด ํธ๋ํฝ์ ์ฆ์ ๋๋๋ฆด ์ ์์ต๋๋ค. ์ปจํ ์ด๋ํ๋ ํ๊ฒฝ์์๋ ์ฟ ๋ฒ๋คํฐ์ค์ ๊ฐ์ ์ค์ผ์คํธ๋ ์ดํฐ๊ฐ ๋จ์ผ ๋ช ๋ น์ผ๋ก ์ด์ ํ๋ ์ ์ ๋ฐ ๊ตฌ์ฑ์ผ๋ก ๋กค๋ฐฑํ ์ ์์ต๋๋ค.
๋ฐ์ดํฐ ์คํค๋ง ๋ณ๊ฒฝ์ ๊ฒฝ์ฐ, ๋กค๋ฐฑ์ ์ด์ ๋ฒ์ ๊ณผ์ ํธํ์ฑ์ ์ ์งํ๋ ๊ตฌ์กฐ์ ๋ฒ์ ๊ด๋ฆฌ๋ ์ก์ธ์ค ๊ณ์ธต์ ์ ์งํ๋ ๊ฒ์ ํฌํจํฉ๋๋ค. ํ๊ดด์ ์ธ ์์ ์ด ์ ์ฉ๋์ง ์์ ๊ฒฝ์ฐ, ์์คํ ์ ์ ์์๋ฅผ ๋ฌด์ํ๊ณ ์ก์ธ์ค ํจํด์ ๋๋๋ฆด ์ ์์ต๋๋ค.
์ฆ๊ฐ์ ์ธ ๋กค๋ฐฑ์ ์ด์์์ ์ํ์ ์ค์ด๊ณ ๋ฆฌํฉํฐ๋ง ๋ฐฐํฌ์ ๋ํ ์ ๋ขฐ๋๋ฅผ ๋์ฌ์ค๋๋ค. ๋ํ ๋ณต๊ตฌ ์์ ์ ์์ ํ๊ณ ์์ธก ๊ฐ๋ฅํ๊ฒ ๋ง๋ค์ด ์คํ๊ณผ ํ์ ์ ์ง์ํฉ๋๋ค.
์กฐ์ง ํ์ฑํ ์์
๊ธฐ์ ์ ์ฐ์์ฑ๋ง์ผ๋ก๋ ์ฑ๊ณต์ ์ธ ๋ฌด์ค๋จ ๋ฆฌํฉํ ๋ง์ ๋ฌ์ฑํ๊ธฐ์ ์ถฉ๋ถํ์ง ์์ต๋๋ค. ์กฐ์ง์ ์ค๋น์ฑ์ ํ์ด ํ๋ก๋์ ํ๊ฒฝ์ ๋น๋ฒํ๊ณ ์์ ํ๊ฒ ๋ณ๊ฒฝ ์ฌํญ์ ์ ์ฉํ ์ ์๋๋ก ํ๋ ๋ฐ ๊ฒฐ์ ์ ์ธ ์ญํ ์ ํฉ๋๋ค. ํจ๊ณผ์ ์ธ ๋ฆฌํฉํ ๋ง ์ด๋์ ํฐ๋ธ๋ ๊ฐ์ํ๋ ํ๋ก์ธ์ค, ๋ช ํํ๊ฒ ์ ์๋ ์ญํ , ํ์ ์ํฌํ๋ก, ๊ทธ๋ฆฌ๊ณ ์์คํ ์์ ์ฑ์ ๋ํ ๊ณต๋์ ์ฑ ์์ ๋ฌ๋ ค ์์ต๋๋ค.
์ง์์ ์ธ ํตํฉ ๋ฐ ๋ฐฐํฌ(CI/CD), ๊ณต์ ๋๊ตฌ, ๊ทธ๋ฆฌ๊ณ ๊ด์ฐฐ ํ๋ซํผ์ ์๋ํ๋๊ณ ์ผ๊ด๋ ๋ฐฐํฌ์ ๊ธฐ๋ฐ์ ๊ตฌ์ถํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. ๊ทธ๋ฌ๋ ํ ๊ตฌ์กฐ์ ๋ฌธํ์ ๊ท๋ฒ์ ์ด๋ฌํ ๋๊ตฌ์ ํจ๊ณผ์ ์ธ ํ์ฉ์ ๊ฒฐ์ ํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์์ง๋์ด๋ง ์กฐ์ง์ ํ์ด ์๋น์ค๋ฅผ ์๋ ํฌ ์๋๋ก ๊ด๋ฆฌํ๊ณ , ๋๋ฉ์ธ ๊ฒฝ๊ณ๋ฅผ ๋์ด ํ๋ ฅํ๋ฉฐ, ๋ณํ๊ฐ ํ์ํ ๋ ์ ์ํ๊ฒ ๋์ํ ์ ์๋๋ก ์ง์ํด์ผ ํฉ๋๋ค.
์ด ์น์ ์์๋ ๋ผ์ด๋ธ ์์คํ ์งํ๋ฅผ ์ง์ํ๋ ๊ตฌ์กฐ์ ๋ฐ ์ ์ฐจ์ ์์๋ค์ ์ดํด๋ด ๋๋ค. ์ฌ๊ธฐ์๋ ๋ฐฐํฌ ์๋ํ, ํ์ดํ๋ผ์ธ ๊ฑฐ๋ฒ๋์ค, ๋ฆฌํฉํ ๋ง ํ๋ ์ด๋ถ, ๊ทธ๋ฆฌ๊ณ ๋ถ์ ๊ฐ ์์ ๊ถ ๋ชจ๋ธ์ด ํฌํจ๋ฉ๋๋ค. ์ด๋ฌํ ์กฐ์ง์ ๊ตฌ์ฑ ์์๊ฐ ๊ฐ์ถฐ์ง๋ฉด ๋ฆฌํฉํ ๋ง์ ๊ณ ์ํ ์์ธ๊ฐ ์๋ ๊ฐ๋ฐ ๊ณผ์ ์ ์ผ์์ ์ธ ๋ถ๋ถ์ด ๋ฉ๋๋ค.
CI/CD ํ์ดํ๋ผ์ธ ์๊ตฌ ์ฌํญ
๊ฐ๋ ฅํ CI/CD ํ์ดํ๋ผ์ธ์ ๋ชจ๋ ๋ฌด์ค๋จ ๋ฆฌํฉํ ๋ง ์์ ์ ํต์ฌ์ ๋๋ค. ๋น๋, ํ ์คํธ ๋ฐ ๋ฐฐํฌ ํ๋ก์ธ์ค๋ฅผ ์๋ํํ์ฌ ๋ณ๊ฒฝ ์ฌํญ์ด ์ผ๊ด๋๊ณ ์ง์ฐ์ ์ต์ํํ๋ฉฐ ์ ๊ณต๋๋๋ก ๋ณด์ฅํฉ๋๋ค. ๋ฌด์ค๋จ ๋ฆฌํฉํ ๋ง์ ์ํด์๋ ํ์ดํ๋ผ์ธ์ด ๋จ๊ณ์ ๋กค์์, ๋ณ๋ ฌ ์คํ ๋ฐ ๊ฒ์ฆ ์ฒดํฌํฌ์ธํธ๋ฅผ ์ง์ํด์ผ ํฉ๋๋ค.
์ฃผ์ ๊ธฐ๋ฅ์ผ๋ก๋ ๋น๋ ์ํฐํฉํธ ๋ถ๋ณ์ฑ, ํ๊ฒฝ ํจ๋ฆฌํฐ, ๊ทธ๋ฆฌ๊ณ ArgoCD, Spinnaker, GitHub Actions์ ๊ฐ์ ๋ฐฐํฌ ์ค์ผ์คํธ๋ ์ด์ ๋๊ตฌ์์ ํตํฉ์ด ์์ต๋๋ค. ํ์ดํ๋ผ์ธ์ ๋ธ๋ฃจ-๊ทธ๋ฆฐ, ์นด๋๋ฆฌ์, A/B ๋ฐฐํฌ๋ฅผ ์ง์ํ์ฌ ํ์ด ํธ๋ํฝ์ ์ ์ง์ ์ผ๋ก ์ด๋ํ๋ฉด์ ์ํฅ์ ๋ชจ๋ํฐ๋งํ ์ ์๋๋ก ํฉ๋๋ค.
๊ฐ ํ์ดํ๋ผ์ธ ๋จ๊ณ๋ ๋ฐฐํฌ ์ฑ๊ณต๋ฅ , ๋กค๋ฐฑ ๋น๋, ๋ฐฐํฌ ํ ์ฑ๋ฅ์ ํ์ ํ๊ธฐ ์ํด ์๊ฒฉ ์ธก์ ๊ธฐ๋ฅ์ ํ์ฌํด์ผ ํฉ๋๋ค. ๊ฒ์ดํธ ์ฒดํฌ๋ ๋จ์ ํ ์คํธ, ํตํฉ ํ ์คํธ, ๊ณ์ฝ ๊ฒ์ฆ์ด ๋ค์ ๋จ๊ณ๋ก ์งํ๋๊ธฐ ์ ์ ํต๊ณผํ๋์ง ํ์ธํ์ฌ ํ์ง์ ๊ฐํํ ์ ์์ต๋๋ค.
CI/CD ํ์ดํ๋ผ์ธ์ ๋ฐฐํฌ ํ๋ก์ธ์ค๋ฅผ ์ฒ์๋ถํฐ ๋๊น์ง ์๋ํํ์ฌ ์ธ์ ์ค๋ฅ๋ฅผ ์ต์ํํ๊ณ ํ์ ์ธ์ง ๋ถ๋ด์ ์ค์ฌ์ค๋๋ค. ๋ํ, ํ๋ก๋์ ํ๊ฒฝ์์ ์์ ํ๊ฒ ๋ฆฌํฉํ ๋งํ๋ ๋ฐ ํ์ํ ์ ๋ขฐ๋์ ์๋๋ฅผ ์ ๊ณตํฉ๋๋ค.
๋ค์ดํ์ ์๋ ๋ฐฐํฌ ๊ฒ์ฆ ํ ์คํธ
๋ฌด์ค๋จ ๋ฐฐํฌ๋ฅผ ์ํด ํน๋ณํ ์ค๊ณ๋ ๊ฒ์ฆ ํ ์คํธ๋ ๋ผ์ด๋ธ ์ ๋ฐ์ดํธ ์ค ๋ฐ ์ดํ์ ์์คํ ์ด ์ ์์ ์ผ๋ก ์๋ํ๋์ง ํ์ธํ๋ ๋ฐ ํ์์ ์ ๋๋ค. ์ด๋ฌํ ํ ์คํธ๋ ์ฌ์ฉ์ ์ธ์ ์ ์ง, ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ, ์ด์ ๋ฒ์ ๊ณผ์ ํธํ์ฑ, ๊ทธ๋ฆฌ๊ณ ๋ณ๊ฒฝ๋๋ ๊ตฌ์ฑ ์์ ์ ๋ฐ์ ์ค์๊ฐ ๋์์ ์ค์ ์ ๋ก๋๋ค.
ํ ์คํธ ๋ชจ์์๋ ์ฌ์ฉ์๊ฐ ์ด์ ๊ตฌ์ฑ ์์์ ์ ๊ตฌ์ฑ ์์๋ฅผ ๋์์ ์ฌ์ฉํ๋ ์๋๋ฆฌ์ค๊ฐ ํฌํจ๋์ด์ผ ํฉ๋๋ค. ์ฌ๊ธฐ์๋ ์ด์ ๋ฒ์ ์์ ์ธ์ ์ ์์ํ๊ณ ์ ๋ฒ์ ์์ ์ธ์ ์ ์๋ฃํ๋ ๊ณผ์ ์ด ํฌํจ๋ ์ ์์ผ๋ฉฐ, ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฐ ์บ์์ ๊ฐ์ ๊ณต์ ๋ฆฌ์์ค๊ฐ ์ ํ ๊ณผ์ ๋ด๋ด ์ผ๊ด๋๊ณ ์๋ต์ฑ์ด ์ ์ง๋๋์ง ํ์ธํด์ผ ํฉ๋๋ค.
๋ถํ ๋ฐ ๋์์ฑ ํ ์คํธ ๋ํ ์ค์ํฉ๋๋ค. ์ฝ๋ ๊ต์ฒด ์ค์ ์์คํ ์ด ํ์ฉ ๊ฐ๋ฅํ ์ฑ๋ฅ์ ์ ์งํ๋์ง ํ์ธํ๊ธฐ ์ํด ์ด์ ํ๊ฒฝ๊ณผ ์ ์ฌํ ํ๊ฒฝ์ ์๋ฎฌ๋ ์ด์ ํ๊ธฐ ๋๋ฌธ์ ๋๋ค. ํ๊ท ํ ์คํธ๋ ๋ชจ๋ ์ค์ํ ๋น์ฆ๋์ค ํ๋ฆ, ํนํ ๋ฆฌํฉํ ๋ง์ ์ํฅ์ ๋ฐ๋ ํ๋ฆ์ ํฌ๊ดํด์ผ ํฉ๋๋ค.
๊ฒ์ฆ ํ ์คํธ๋ CI/CD ํ์ดํ๋ผ์ธ์ ํตํฉํ์ฌ ํ๋ก๋์ ์ธํ๋ผ๋ฅผ ๋ฐ์ํ๋ ์คํ ์ด์ง ๋๋ ์ฌ์ ํ๋ก๋์ ํ๊ฒฝ์์ ์คํํ๋ ๊ฒ์ด ๊ฐ์ฅ ์ข์ต๋๋ค. ๋์ ํ ์คํธ ์ปค๋ฒ๋ฆฌ์ง์ ์ค์ ํธ๋ํฝ ์๋ฎฌ๋ ์ด์ ์ ํตํด ์ด๋ฌํ ํ ์คํธ๋ ์์ ํ๊ณ ์ค๋จ ์๋ ๋ฐฐํฌ๋ฅผ ์ํ ์๋ํ๋ ๊ด๋ฌธ ์ญํ ์ ํฉ๋๋ค.
๋ผ์ด๋ธ ๋ฆฌํฉํ ๋ง์ ์ํ ํ์ดํ๋ผ์ธ ๋จ๊ณ ๊ฒ์ดํธ
์คํ ์ด์ง ๊ฒ์ดํธ๋ CI/CD ํ์ดํ๋ผ์ธ ๋ด์์ ๋ณ๊ฒฝ ์ฌํญ์ ๋ค์ ๋จ๊ณ๋ก ์งํํ๊ธฐ ์ ์ ์กฐ๊ฑด์ ์ ์ฉํ๋ ์ ์ด ์ง์ ์ ๋๋ค. ๋ผ์ด๋ธ ๋ฆฌํฉํ ๋ง ์๋๋ฆฌ์ค์์ ์คํ ์ด์ง ๊ฒ์ดํธ๋ ์์ ํ๊ณ ํ ์คํธ๋ ๋ณ๊ฒฝ ์ฌํญ๋ง ํ๋ก๋์ ํ๊ฒฝ์ ๋ฐฐํฌ๋๋๋ก ๊ตฌ์กฐํ๋ ๊ฒ์ฆ์ ์ ๊ณตํฉ๋๋ค.
์คํ ์ด์ง ๊ฒ์ดํธ์ ์๋ก๋ ์๋ํ๋ ํ ์คํธ ์ค์ํธ ํต๊ณผ, ์ฑ๊ณต์ ์ธ ์นด๋๋ฆฌ์ ๋ฐฐํฌ ๋ถ์, ๋ณ๊ฒฝ ๊ฒํ ํ๋ก์ธ์ค ์น์ธ, ์ด์ ์งํ ์๋ ์๊ฒฉ ์ธก์ ํ์ธ ๋ฑ์ด ์์ต๋๋ค. ์ด๋ฌํ ๊ฒ์ดํธ๋ Jenkins, GitLab CI ๋๋ ์ ์ฉ ํ๋ก๊ทธ๋ ์๋ธ ๋ฐฐํฌ ํ๋ซํผ๊ณผ ๊ฐ์ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ ๊ตฌํํ ์ ์์ต๋๋ค.
ํจ๊ณผ์ ์ธ ์ ๋ต ์ค ํ๋๋ ํฉ์ฑ ํธ๋์ญ์ ๊ณผ ํฉ์ฑ ์ฌ์ฉ์๋ฅผ ์คํ ์ด์ง ๊ฒ์ดํธ ๊ธฐ์ค์ ํฌํจํ๋ ๊ฒ์ ๋๋ค. ์ด๋ฌํ ํ์ธ์ ์ค์ ์ํธ์์ฉ์ ์๋ฎฌ๋ ์ด์ ํ๊ณ ์๋ก์ด ๊ธฐ๋ฅ์ด๋ ๋ฆฌํฉํ ๋ง๋ ๊ตฌ์ฑ ์์์ ์์ ์ฑ์ ๋ํ ์ด๊ธฐ ์ ํธ๋ฅผ ์ ๊ณตํฉ๋๋ค.
์คํ ์ด์ง ๊ฒ์ดํธ๋ ๋กค๋ฐฑ ๊ฒฐ์ ๋ ์ง์ํฉ๋๋ค. ๋ฉํธ๋ฆญ ์๊ณ๊ฐ์ด ์ด๊ณผ๋๊ฑฐ๋ ๊ฒ์ดํธ๊ฐ ์คํจํ๋ฉด ํ์ดํ๋ผ์ธ์ ์๋ ๋กค๋ฐฑ์ ์คํํ๊ณ ์ถ๊ฐ ์น๊ฒฉ์ ์ค๋จํ ์ ์์ต๋๋ค. ์ด๋ฌํ ์์ ์ฅ์น๋ ํ๊ท๋ฅผ ๋ฐฉ์งํ๊ณ ๊ณ ํ์ง ๋ณ๊ฒฝ ์ฌํญ๋ง ์ฌ์ฉ์์๊ฒ ์ ๋ฌ๋๋๋ก ๋ณด์ฅํฉ๋๋ค.
ํ์ดํ๋ผ์ธ ๋จ๊ณ ๊ฒ์ดํธ๋ ๋ฐฐํฌ ์ํฌํ๋ก์ ๊ฒ์ฆ ๊ธฐ๋ฅ์ ๋ด์ฅํจ์ผ๋ก์จ ์๋ ๊ฐ๋ ์ ์ค์ด๊ณ ๋ฆฌํฉํ ๋ง์ด ์์ ํ๊ฒ ๋ฐฐํฌ๋๊ณ ์๋ค๋ ์ธก์ ๊ฐ๋ฅํ ํ์ ์ ์ ๊ณตํฉ๋๋ค.
ํ ์กฐ์ ํ๋กํ ์ฝ
๋๊ท๋ชจ ์์คํ ์ ๋ฐ์ ๋ฆฌํฉํ ๋ง์ ์ํธ ์์กด์ ์ธ ์๋น์ค๋ฅผ ๋ด๋นํ๋ ์ฌ๋ฌ ํ์ ํ์ ์ ํ์๋ก ํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ๋ช ํํ ์กฐ์ ํ๋กํ ์ฝ์ด ์์ผ๋ฉด ์ด๋ฌํ ๋ ธ๋ ฅ์ ๊ฐ๋ฑ, ์ค๋ณต ์์ ๋๋ ์ด์ ๋ถ์์ ์ฑ์ ์ํ์ด ์์ต๋๋ค. ์ ์ ์๋ ํ ์ปค๋ฎค๋์ผ์ด์ ๋ชจ๋ธ์ ๋ฆฌํฉํ ๋ง์ ์ผ๊ด์ฑ, ์ผ๊ด์ฑ, ๊ทธ๋ฆฌ๊ณ ์ฌ๊ณ ๋ฐ์ ๋ฐฉ์ง๋ฅผ ๋ณด์ฅํฉ๋๋ค.
ํจ๊ณผ์ ์ธ ํ์ ์ ํ์๋ผ์ธ, ์์คํ ์ข ์์ฑ, ์ํ ์์ค ๋ฐ ๋กค๋ฐฑ ์ ๋ต์ ๋ช ์ํ ๊ณต์ ๋ฆฌํฉํ ๋ง ๊ณํ์์ ์์๋ฉ๋๋ค. ์ด ๊ณํ์ ๋ชจ๋ ์ฐธ์ฌ ํ์ด ๊ณต๋์ผ๋ก ๊ฒํ ํ๊ณ ์ ๊ธฐ์ ์ผ๋ก ์ ๋ฐ์ดํธํด์ผ ํฉ๋๋ค. Confluence, Jira, Notion๊ณผ ๊ฐ์ ํ์ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ๋ฉด ์ถ์ ๋ฐ ๋ฌธ์ํ๋ฅผ ์ค์์์ ๊ด๋ฆฌํ ์ ์์ต๋๋ค.
์์ ๊ถ ๋ชจ๋ธ ๋ํ ๋ช ํํด์ผ ํฉ๋๋ค. ๊ฐ ์๋น์ค ๋๋ ๋๋ฉ์ธ์๋ ๋ณ๊ฒฝ ์ฌํญ ๊ตฌํ ๋ฐ ๊ฒ์ฆ์ ๋ด๋นํ๋ ๋ด๋น์๊ฐ ์ง์ ๋์ด์ผ ํฉ๋๋ค. ๊ณต์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋๋ API์๋ ๋ฒ์ ๊ด๋ฆฌ ๋ฐ ์ข ์ ํ๊ณผ์ ์ํต์ ์กฐ์ ํ๋ ๋ด๋น์๊ฐ ์์ด์ผ ํฉ๋๋ค.
์ ๊ธฐ์ ์ธ ๋๊ธฐํ ํ์, ์๋ ์๋ฆผ, ๊ทธ๋ฆฌ๊ณ ๊ณต์ ๊ด์ฐฐ ๋์๋ณด๋๋ ๋ชจ๋ ๊ตฌ์ฑ์์ ์ ๋ฌด ํ๋ฆ์ ์กฐ์จํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. ๋ ๋ฐ์ ๋ ์กฐ์ง์์๋ ํ๋ค์ด ๊ฒฝ๊ณ๋ฅผ ๋์ด ํ์ ์ ์ผ๋ก ๋ณ๊ฒฝ ์ฌํญ์ ์ ์ํ๊ณ ๊ฒํ ํ๋ ๋ด๋ถ ์คํ ์์ค ๋ชจ๋ธ์ ์ฑํํฉ๋๋ค.
์์ฌ์ํต๊ณผ ์์ ๊ถ์ ์ ๋ํํจ์ผ๋ก์จ ์กฐ์ง์ ๋๊ท๋ชจ ๋ฆฌํฉํ ๋ง์ ๋ ์์ ํ๊ณ ์์ธก ๊ฐ๋ฅํ๊ฒ ๋ง๋ญ๋๋ค.
ํน์ ์ฌ๋ก: ๋ฉ์ธํ๋ ์ ๋ฐ ๋ ๊ฑฐ์ ๋ฆฌํฉํ ๋ง
๋ ๊ฑฐ์ ์์คํ , ํนํ ๋ฉ์ธํ๋ ์ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฆฌํฉํ ๋งํ๋ ๊ฒ์ ์ต์ ํด๋ผ์ฐ๋ ๋ค์ดํฐ๋ธ ์ํคํ ์ฒ์์๋ ๋ฐ์ํ์ง ์๋ ๊ณ ์ ํ ๊ณผ์ ๋ฅผ ์ผ๊ธฐํฉ๋๋ค. ์ด๋ฌํ ์์คํ ์ ์ข ์ข ๋ฏธ์ ํฌ๋ฆฌํฐ์ปฌ ๋น์ฆ๋์ค ํ๋ก์ธ์ค๋ฅผ ์ง์ํ๊ณ , COBOL, CICS, IMS, VSAM๊ณผ ๊ฐ์ ํน์ ๊ธฐ์ ์ ์์กดํ๋ฉฐ, ๋ฐฐ์น ์์ ์ค์ผ์ค ๋ฐ ๋ชจ๋๋ฆฌ์ ํธ๋์ญ์ ํธ๋ค๋ฌ์ ๋ฐ์ ํ๊ฒ ์ฐ๊ด๋์ด ์์ต๋๋ค. ์ด๋ฌํ ํ๊ฒฝ์์ ๋ค์ดํ์์ ์ฌ๊ฐํ ์ฌ์ ์ ๋๋ ์ด์์ ์์ค์ ์ด๋ํ ์ ์์ต๋๋ค.
๋ฉ์ธํ๋ ์ ํ๊ฒฝ์์ ๋ค์ดํ์ ์๋ ๋ฆฌํฉํ ๋ง์ ๋ฌ์ฑํ๋ ค๋ฉด ํ๋ํ์ ์์คํ ๋ฌด๊ฒฐ์ฑ ๊ฐ์ ๊ท ํ์ด ์ค์ํฉ๋๋ค. ๊ธฐ์ ์ I/O ์์ , ๋ฐ์ดํฐ ๊ตฌ์กฐ, ๊ทธ๋ฆฌ๊ณ ๊ธด๋ฐํ๊ฒ ๊ฒฐํฉ๋ ์ธํฐํ์ด์ค์ ๊ด๋ จ๋ ์๊ฒฉํ ์ ์ฝ ์กฐ๊ฑด์ ์ถฉ์กฑํด์ผ ํฉ๋๋ค. ๋ํ, ์ผ๋ฐ์ ์ผ๋ก ์ผ๊ฐ ์ฃผ๊ธฐ๋ก ์ด์๋๋ ๋ฐฐ์น ์ํฌ๋ก๋๋ ๋ฐ์ดํฐ ์ ํ์ฑ์ด๋ ์์ ์์๋ฅผ ์ ํดํ์ง ์์ผ๋ฉด์ ์ฌ๊ตฌ์ฑํ๊ฑฐ๋ ์ ๊ฑฐํด์ผ ํฉ๋๋ค.
์ด ์น์ ์์๋ ์ง์์ ์ธ ์๋น์ค๋ฅผ ์ ์งํ๋ฉด์ ๋ ๊ฑฐ์ ์ ํ๋ฆฌ์ผ์ด์ ๊ณผ ์ธํ๋ผ๋ฅผ ํ๋ํํ๋ ์ค์ง์ ์ธ ๋ฐฉ๋ฒ์ ์ค์ ์ ์ผ๋ก ๋ค๋ฃน๋๋ค. ๋ฉ์ธํ๋ ์ ํ๋ซํผ์์ ์คํ๋๋ ์์คํ ์ ํนํ ์ ์ฉ๋๋ ๋์ ์ ๋ฐ์ดํธ, ์คํค๋ง ์งํ ๋ฐ ํ๋ก๊ทธ๋จ ๊ต์ฒด ์ ๋ต์ ์ค์ ์ ์ผ๋ก ๋ค๋ฃน๋๋ค.
CICS ๋ฐ IMS ํ๋ก๊ทธ๋จ ์ ๋ฐ์ดํธ
CICS์ IMS๋ ๋ง์ ๋ฉ์ธํ๋ ์ ์ํคํ ์ฒ์์ ์ค์ ํธ๋์ญ์ ์ฒ๋ฆฌ ์์คํ (CTP)์ผ๋ก ์ฌ์ฉ๋ฉ๋๋ค. ์ด๋ฌํ ํ๋ซํผ์ ํ๋ฃจ 24์๊ฐ ์ด์๋์ด์ผ ํ๋ ์ํ, ๋ณดํ, ๋ฌผ๋ฅ ์์คํ ์ ํ์์ ์ธ ์ญํ ์ ํฉ๋๋ค. ์ด๋ฌํ ํ๊ฒฝ์์ ๊ด๋ฆฌ๋๋ ํ๋ก๊ทธ๋จ์ ๋ก์ง์ ๋ฆฌํฉํ ๋งํ ๋, ์์ง๋์ด๋ ํ์ฑ ํธ๋์ญ์ ์ ์ข ๋ฃํ๊ฑฐ๋ ๋ค์ด์คํธ๋ฆผ ์์คํ ์ ์ค๋จ์ํค์ง ์๊ณ ์ฝ๋๋ฅผ ์ ๋ฐ์ดํธํด์ผ ํฉ๋๋ค.
์ผ๋ฐ์ ์ธ ์ ๊ทผ ๋ฐฉ์ ์ค ํ๋๋ ๋์ ํ๋ก๊ทธ๋จ newcopy๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ๋๋ค. ์ด ๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ฉด ์์ญ์ ์ฌ์์ํ์ง ์๊ณ ๋ ์ ๋ฐ์ดํธ๋ ํ๋ก๊ทธ๋จ ๋ก์ง์ CICS์ ๋ค์ ๋ก๋ํ ์ ์์ต๋๋ค. ๊ฐ๋ฐ์๋ ์ ๋ฐ์ดํธ๋ ๋ชจ๋์ ์ปดํ์ผํ๊ณ ๋ฐฐํฌํ ํ newcopy ๋ช ๋ น์ ์คํํ์ฌ ๋ฉ๋ชจ๋ฆฌ์์ ํ๋ก๊ทธ๋จ์ ์๋ก ๊ณ ์นฉ๋๋ค. ํ์ฑ ํธ๋์ญ์ ์ ์๋ฃ๋ ๋๊น์ง ์ด์ ๋ฒ์ ์ ๊ณ์ ์ฌ์ฉํ๋ฉฐ, ์๋ก์ด ์์ฒญ์ ๋ฆฌํฉํ ๋ง๋ ๋ฒ์ ์์ ์ฒ๋ฆฌ๋ฉ๋๋ค.
๋ ๋ค๋ฅธ ํต์ฌ ๊ธฐ์ ์ ๋ฒ์ ๊ด๋ฆฌํ ํ๋ก๊ทธ๋จ ๋ช ๋ช ์ ๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ ์ ์ด์ ๋ฒ์ ๊ณผ ์ ๋ฒ์ ์ ์๋ก ๋ค๋ฅธ ์๋ณ์๋ก ๊ณต์กดํ๋ฉฐ, ๋ผ์ฐํ ๋ก์ง์ ๋ฐ๋ผ ์ด๋ค ๋ฒ์ ์ด ํธ์ถ๋ ์ง ๊ฒฐ์ ๋ฉ๋๋ค. ์ด๋ฅผ ํตํด ๋จ๊ณ๋ณ ํ ์คํธ, ๊ธฐ๋ฅ ํ๋๊น , ๊ทธ๋ฆฌ๊ณ ํ์ํ ๊ฒฝ์ฐ ๋น ๋ฅธ ๋กค๋ฐฑ์ด ๊ฐ๋ฅํฉ๋๋ค.
์ด๋ฌํ ์ ๋ต์ ์ฌ๋ฐ๋ฅด๊ฒ ๊ตฌํํ๋ฉด CICS ๋ฐ IMS ํ๋ก๊ทธ๋จ์ ๊ฐ๋ ์ค์ง ์์ด ์ ์ง์ ์ผ๋ก ๋ฐ์ ํ์ฌ ๋๋ ๊ฑฐ๋ ํ๋ฆ์ด ์ค๋จ๋์ง ์๋๋ก ๋ณดํธํ ์ ์์ต๋๋ค.
๋ณ๊ฒฝ ์ค ๊ณต์ VSAM ํ์ผ ์ก์ธ์ค
VSAM(Virtual Storage Access Method) ํ์ผ์ ๋ฉ์ธํ๋ ์ ํ๊ฒฝ์์ ์จ๋ผ์ธ ๋ฐ ์ผ๊ด ์ฒ๋ฆฌ๋ฅผ ์ํ ์ ํํ๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ๋ฐ ๋๋ฆฌ ์ฌ์ฉ๋ฉ๋๋ค. ๊ณต์ VSAM ํ์ผ๊ณผ ์ํธ ์์ฉํ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฆฌํฉํ ๋งํ ๋ ๋ฐ์ดํฐ ์ผ๊ด์ฑ์ ์ ์งํ๋ ๊ฒ์ด ๋งค์ฐ ์ค์ํฉ๋๋ค. ํ์ผ ์์์ด๋ ์คํค๋ง ๊ฐ์ ๋ถ์ผ์น๋ ์ฌ๋ฌ ์์คํ ์ ๋์์ ์ํฅ์ ๋ฏธ์น ์ ์์ต๋๋ค.
๋ผ์ด๋ธ ์ ๊ทธ๋ ์ด๋๋ฅผ ์ง์ํ๋ ํ ๊ฐ์ง ์ ๋ต์ ๋์ผํ VSAM ํ์ผ ๋ด์ ์ฌ๋ฌ ๋ ์ฝ๋ ํ์์ ์ ์ํ๋ ๊ฒ์ ๋๋ค. ์ด๋ฅผ ํตํด ๊ธฐ์กด ํ๋ก๊ทธ๋จ๊ณผ ๋ฆฌํฉํ ๋ง๋ ํ๋ก๊ทธ๋จ ๋ชจ๋ ์ถฉ๋ ์์ด ๊ฐ์์ ๋ฐ์ดํฐ ํ์์ ์ฝ๊ณ ์ธ ์ ์์ต๋๋ค. ๊ฐ๋ฐ์๋ COBOL์ REDEFINES ์ ์ด๋ ์ฌ์ฉ์ ์ง์ ๋ก์ง์ ์ฌ์ฉํ์ฌ ํค๋ ํ๋ ๋๋ ํ๋๊ทธ๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ฒ์ ์ ๊ตฌ๋ถํฉ๋๋ค.
ํ์ผ ์ ๊ธ ๋ฐ ์ก์ธ์ค ์ ์ด ๋ํ ์ ์คํ๊ฒ ๊ด๋ฆฌํด์ผ ํฉ๋๋ค. ๋์ฒด ์ธ๋ฑ์ค ๋ฐ ๋ ์ฝ๋ ์์ค ์ ๊ธ๊ณผ ๊ฐ์ ๊ธฐ์ ์ ๋ณ๋ ฌ ํ๋ก์ธ์ค๊ฐ ์๋ก ๊ฐ์ญํ์ง ์๋๋ก ํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. ๊ฐ๋ฅํ ๊ฒฝ์ฐ, ๋ณต์ ๋ VSAM ๋ฐ์ดํฐ๊ฐ ์๋ ์คํ ์ด์ง ํ๊ฒฝ์ ํ ์คํธ ๋ฐฐํฌ์ ์ฌ์ฉํ ํ ํ๋ก๋์ ํ์ผ๊ณผ ๋จ๊ณ์ ์ผ๋ก ํตํฉํ ์ ์์ต๋๋ค.
๋ชจ๋ํฐ๋ง ๋๊ตฌ๋ ์ ํ ์ค ์ด์ ์งํ๋ฅผ ๊ฐ์งํ๊ธฐ ์ํด ์ฝ๊ธฐ ๋ฐ ์ฐ๊ธฐ ์์ ์ ์ถ์ ํด์ผ ํฉ๋๋ค. ์ด๋ฌํ ๋ณดํธ ์ฅ์น๊ฐ ๊ตฌ์ถ๋๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ๋ก์ง๊ณผ ๋ ์ฝ๋ ๊ตฌ์กฐ๋ฅผ ๋ณ๊ฒฝํ๋ ๋์์๋ ๊ณต์ VSAM ์ ๊ทผ์ ์ ์งํ ์ ์์ต๋๋ค.
๋ฐฐ์น ์๋์ฐ ์ ๊ฑฐ ์ ๋ต
๊ธฐ์กด ๋ฉ์ธํ๋ ์ ํ๊ฒฝ์ ๋ฏธ๋ฆฌ ์ ์๋ ์๋์ฐ, ์ผ๋ฐ์ ์ผ๋ก ์ผ๊ฐ์ด๋ ํธ๋ํฝ์ด ์ ์ ์๊ฐ๋์ ์คํ๋๋ ์ผ๊ด ์ฒ๋ฆฌ ์์ ์ ํฌ๊ฒ ์์กดํฉ๋๋ค. ์ด๋ฌํ ์์ ์ ์ฒญ๊ตฌ, ๋ณด๊ณ ์ ์์ฑ, ๋ฐ์ดํฐ ์ง๊ณ, ๋ณด๊ด๊ณผ ๊ฐ์ ํ์ ์์ ์ ์ํํฉ๋๋ค. ๊ทธ๋ฌ๋ ์ผ๊ด ์ฒ๋ฆฌ ์๋์ฐ์ ์์กดํ๋ฉด ์๋์ฐ๊ฐ ์ด๋ ค ์์ ๋๋ง ๋ณ๊ฒฝ ์ฌํญ์ ๋ฐฐํฌํ ์ ์๊ธฐ ๋๋ฌธ์ ๋ค์ดํ์ ์๋ ๋ฆฌํฉํ ๋ง์ ๋ณ๋ชฉ ํ์์ด ๋ฐ์ํฉ๋๋ค.
์ต์ ์ ๋ต์ ๋๊ท๋ชจ ๋ชจ๋๋ฆฌ์ ์์ ์ ๋ ์์ ์ด๋ฒคํธ ๊ธฐ๋ฐ ๋ง์ดํฌ๋ก ๋ฐฐ์น๋ก ๋ถํ ํ์ฌ ๋ฐฐ์น ์๋์ฐ๋ฅผ ์์ ๊ฑฐ๋ ์ต์ํํ๋ ๊ฒ์ ๋ชฉํ๋ก ํฉ๋๋ค. ์ด๋ฌํ ๋ง์ดํฌ๋ก ๋ฐฐ์น๋ ์๊ฐ ๊ฐ๊ฒฉ, ํ์ผ ๋์ฐฉ ๋๋ ํธ๋์ญ์ ์๊ณ๊ฐ์ ๊ธฐ๋ฐ์ผ๋ก ํธ๋ฆฌ๊ฑฐ๋ ์ ์์ผ๋ฉฐ, ํ๋ฃจ ์ข ์ผ ๋น์ฐจ๋จ ๋ฐฉ์์ผ๋ก ์ฒ๋ฆฌ๋ ์ ์์ต๋๋ค.
๋ ๋ค๋ฅธ ์ ๊ทผ ๋ฐฉ์์ ์๋น์ค ๋ํผ๋ฅผ ํตํ ์์ ๋ถ๋ฆฌ์ ๋๋ค. ๋ ๊ฑฐ์ ๋ฐฐ์น ๋ก์ง์ ๋น๋๊ธฐ์ ์ผ๋ก ํธ์ถ๋๊ฑฐ๋ API๋ก ๋ ธ์ถ๋ ์ ์๋ ์๋น์ค ์ธํฐํ์ด์ค ๋ด์ ์บก์ํ๋ฉ๋๋ค. ์ด๋ฅผ ํตํด ๋ฐฐ์น ๋จ๊ณ๋ฅผ ๋์ผํ ๋ฐ์ดํฐ ์์ค ๋ฐ ์ถ๋ ฅ๊ณผ ํตํฉ๋๋ ์ค์๊ฐ ์๋น์ค๋ก ์ ์ง์ ์ผ๋ก ๋์ฒดํ ์ ์์ต๋๋ค.
์ค๋จ ์๋ ์ฒ๋ฆฌ๋ฅผ ์ํด์๋ ์ฒดํฌํฌ์ธํธ ๋ฐ ์ฌ์์ ๋ฉ์ปค๋์ฆ์ ์ ์งํ๊ฑฐ๋ ์ฌ๊ตฌํํด์ผ ํฉ๋๋ค. ๊ณ ์ ๋ ๋ฐฐ์น ์ฃผ๊ธฐ์์ ์ง์์ ์ธ ๋ฐ์ดํฐ ํ๋ฆ์ผ๋ก ์ ํํจ์ผ๋ก์จ ์กฐ์ง์ ์ธ์ ๋ ์ง ์ ๋ฐ์ดํธ๋ฅผ ์ ์ฉํ ์ ์์ผ๋ฉฐ, ์ด์ ์ ๋ฐฐ์น์ ์์กดํ๋ ์์คํ ์ ์ง์ ํ ๋ฌด์ค๋จ ์๋์ ๊ตฌํํ ์ ์์ต๋๋ค.
๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ด์ฅ ๋ก์ง ๋ฆฌํฉํ ๋ง
๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ด์ฅ ๋ก์ง์ ์ค๋ซ๋์ ๋ ๊ฑฐ์ ์ํฐํ๋ผ์ด์ฆ ์์คํ ์ ๊ธฐ๋ณธ ์์์์ต๋๋ค. COBOL ๋๋ PL/I ํ๋ก๊ทธ๋จ ๋ด์ ์ ์ฅ ํ๋ก์์ , ํธ๋ฆฌ๊ฑฐ, ๋ทฐ ๋ฐ ๋ด์ฅ SQL์ ์ ํจ์ฑ ๊ฒ์ฌ, ๊ณ์ฐ ๋ฐ ๋ฐ์ดํฐ ๋ณด๊ฐ๊ณผ ๊ฐ์ ์ค์ํ ๋น์ฆ๋์ค ์์ ์ ์ํํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ๋ค์ดํ์ ์์ด ์ด๋ฌํ ๊ตฌ์ฑ ์์๋ฅผ ๋ฆฌํฉํ ๋งํ๋ ค๋ฉด ์ ์คํ ๋ฒ์ ๊ด๋ฆฌ, ๋น์ฐจ๋จ ์คํค๋ง ์งํ, ๊ทธ๋ฆฌ๊ณ ๋ ๊ฑฐ์ ์ฝ๋ ๊ฒฝ๋ก์ ์ ๋ฐ์ดํธ๋ ์ฝ๋ ๊ฒฝ๋ก ๊ฐ์ ์ด์ค ๋ชจ๋ ํธํ์ฑ์ด ํ์ํฉ๋๋ค.
๊ฐ์ฅ ํฐ ๊ณผ์ ์ค ํ๋๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ด์ฅ๋ ๋ก์ง์ด ์ผ๋ฐ์ ์ผ๋ก ์ฌ๋ฌ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋์์ ์ํฅ์ ๋ฏธ์น๋ค๋ ๊ฒ์ ๋๋ค. ์๋ฅผ ๋ค์ด, ์ ์ฅ ํ๋ก์์ ์ ๋ณ๊ฒฝ์ ์ค์๊ฐ ์ฒ๋ฆฌ์ ์ผ๊ด ์ฒ๋ฆฌ ์์ ๋ชจ๋์ ์ํฅ์ ๋ฏธ์น ์ ์์ต๋๋ค. ๋ฐ๋ผ์ ๋ชจ๋ ๋ฆฌํฉํ ๋ง์ ๋ชจ๋ ์ข ์ ์์คํ ์ ๋ํ ํ์ ํธํ์ฑ๊ณผ ํ ์คํธ ์ปค๋ฒ๋ฆฌ์ง๋ฅผ ๊ณ ๋ คํด์ผ ํฉ๋๋ค.
์ด ์น์ ์์๋ ์๋น์ค๋ฅผ ์ค๋จํ์ง ์๊ณ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ด์ฅ ๋ก์ง์ ๋ฐ์ ์ํค๋ ํต์ฌ ๊ธฐ์ ์ ๋ค๋ฃน๋๋ค. ๋ํ, ์ ํ ๊ณผ์ ์์ ๊ธฐ๋ฅ์ ๋์๊ณผ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ์ ์ ์งํ๋ฉด์ ์ ์ฐจ์ ๋ก์ง์ ๋์ฑ ์ ์ง ๊ด๋ฆฌํ๊ธฐ ์ฌ์ด ์๋น์ค ์งํฅ ๊ตฌ์กฐ๋ก ๋ฆฌํฉํ ๋งํ๋ ๋ฐฉ๋ฒ๋ ๋ค๋ฃน๋๋ค.
DB2์ ์ ์ฅ ํ๋ก์์ ๋ฒ์ ๊ด๋ฆฌ
DB2์ ์ ์ฅ ํ๋ก์์ ๋ ๋น์ฆ๋์ค ๋ก์ง์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ง์ ์บก์ํํ์ฌ ์ ํ๋ฆฌ์ผ์ด์ ์์ค์ ๋ณต์ก์ฑ์ ์ต์ํํ๊ณ ์ฑ๋ฅ์ ์ต์ ํํ๋ ๋ฐ ์์ฃผ ์ฌ์ฉ๋ฉ๋๋ค. ๊ทธ๋ฌ๋ ์ด๋ฌํ ํ๋ก์์ ๋ ์ ํ๋ฆฌ์ผ์ด์ ๊ณผ ๋ฐ์ดํฐ ์ ์ฅ์ ๊ฐ์ ๊ธด๋ฐํ ๊ฒฐํฉ์ ์ ๋ฐํ๊ธฐ๋ ํฉ๋๋ค. ํ๋ํ ๋๋ ์ต์ ํ๋ฅผ ์ํด ์ ์ฅ ํ๋ก์์ ๋ฅผ ๋ฆฌํฉํ ๋งํ ๋๋ ์๋น์์ ์๋น์ค ์ค๋จ์ด๋ ์๋น์ค ์ค๋จ ์์ด ์ํํด์ผ ํฉ๋๋ค.
๋ฒ์ ๊ด๋ฆฌ๊ฐ ํต์ฌ ์ ๋ต์
๋๋ค. ๊ธฐ์กด ์ ์ฐจ๋ฅผ ๋ณ๊ฒฝํ๋ ๋์ , ๊ณ ์ ํ ์ด๋ฆ์ด๋ ๋ฒ์ ์ ๋ฏธ์ฌ(์: calculate_interest_v2๋ ๋ฒ์ ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ณต์กดํ๋ฉฐ, ์ ํ๋ฆฌ์ผ์ด์
์ ๋ฐฐํฌ ๊ณผ์ ์์ ์๋ก์ด ๋ก์ง์ ์ ์ฉํ ์ ์์ต๋๋ค. ์ด๋ฅผ ํตํด ๋จ๊ณ์ ๋์
, ์ค์ ๊ฒ์ฆ, ๋ฌธ์ ๋ฐ์ ์ ์ ์ํ ๋กค๋ฐฑ์ด ๊ฐ๋ฅํฉ๋๋ค.
๋ง์ด๊ทธ๋ ์ด์ ์ ์กฐ์ ํ๊ธฐ ์ํด ์๋น์ค ๊ณ์ฝ ๋๋ ์ธํฐํ์ด์ค ๊ณ์ธต์ ์ด๋ค ๋ฒ์ ์ ํ๋ก์์ ๊ฐ ํธ์ถ๋๋์ง ์ถ์ํํ ์ ์์ต๋๋ค. ๊ธฐ๋ฅ ํ๋๊ทธ ๋๋ ๊ตฌ์ฑ ํ ๊ธ์ ์ฌ์ฉํ์ฌ ์์ฒญ์ ๋์ ์ผ๋ก ๋ผ์ฐํ ํ ์ ์์ต๋๋ค. ๋ก๊น ๋ฐ ์๊ฒฉ ๋ถ์์ ์ฌ์ฉ ํจํด์ ์ถ์ ํ๊ณ ์ด์ ๋ฒ์ ์ ์์ ํ๊ฒ ํ๊ธฐํ ์ ์๋ ์์ ์ ํ์ ํด์ผ ํฉ๋๋ค.
๋ฒ์ ๊ด๋ฆฌ ํ๋ก์์ ๋ ์งํ์ ๋ณ๊ฒฝ์ ์ง์ํ์ฌ ํ์ด ์ง์์ ์ธ ์๋น์ค๋ฅผ ์ ์งํ๋ฉด์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ ผ๋ฆฌ๋ฅผ ์ต์ ํํ๊ณ ํ๋ํํ ์ ์๋๋ก ํฉ๋๋ค.
๊ฐ์ฉ์ฑ์ ์ ์งํ๋ฉด์ ์จ๋ผ์ธ REORG
REORG ์์ ์ DB2 ๋ฐ ๊ธฐํ ๋ฉ์ธํ๋ ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ํ ์ด๋ธ ๊ตฌ์กฐ๋ฅผ ์ต์ ํํ๊ณ , ๋จํธํ๋ ๊ณต๊ฐ์ ํ์ํ๊ณ , ์ฑ๋ฅ์ ์ ์งํ๋ ๋ฐ ํ์์ ์ ๋๋ค. ๊ทธ๋ฌ๋ ๊ธฐ์กด REORG๋ ํ ์ด๋ธ์ ๋ํ ๋ฐฐํ์ ์ ๊ทผ์ ์๊ตฌํ์ฌ ์ ํ๋ฆฌ์ผ์ด์ ์ ์คํ๋ผ์ธ ์ํ๋ก ๋ง๋๋ ๊ฒฝ์ฐ๊ฐ ๋ง์์ต๋๋ค. ์ง์์ ์ธ ๊ฐ๋ ์๊ฐ์ด ํ์ํ ์์คํ ์ ๊ฒฝ์ฐ ์ด๋ ์ฌ๊ฐํ ๋ฌธ์ ๋ก ์์ฉํฉ๋๋ค.
์ต์ ๋ฒ์ ์ DB2์ ๋์ ๋ ์จ๋ผ์ธ REORG ๊ธฐ์ ์ ์ฌ์ฉํ๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ์ด ํ ์ด๋ธ์ ๋ํ ์ฝ๊ธฐ ๋ฐ ์ฐ๊ธฐ ์์ ์ ๊ณ์ํ๋ ๋์ ๋ฐฑ๊ทธ๋ผ์ด๋์์ ํ ์ด๋ธ ์ฌ๊ตฌ์ฑ์ ์งํํ ์ ์์ต๋๋ค. ์ด๋ฌํ ์์ ์ ์ผ๋ฐ์ ์ผ๋ก ๋จ๊ณ์ ์ผ๋ก ์คํ๋ฉ๋๋ค. ์ฆ, ๋ฐ์ดํฐ์ ์๋ ๋ณต์ฌ๋ณธ์ด ์์ฑ๋๊ณ ์ฌ๊ตฌ์ฑ๋ ํ ์ต์ข ์ปท์ค๋ฒ(cutover) ๊ณผ์ ์์ ์ต์ํ์ ์ ๊ธ์ผ๋ก ์ค์์ธ(swap-in)๋ฉ๋๋ค.
์จ๋ผ์ธ REORG ์ค์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฌ์ํ ์ง์ฐ ์๊ฐ ๊ธ์ฆ์ ์ฒ๋ฆฌํ๊ณ ๋ฐฐํ์ ํ ์ด๋ธ ์ ๊ธ์ ๋ฐฉ์งํ๋๋ก ์ค๊ณ๋์ด์ผ ํฉ๋๋ค. DBA๋ ์์คํ ์นดํ๋ก๊ทธ ์ฟผ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ์งํ ์ํฉ์ ๋ชจ๋ํฐ๋งํ๊ณ , ์ฑ๋ฅ์ ์ํฅ์ ์ค ์ ์๋ ์ถฉ๋์ด๋ ์ฅ์๊ฐ ์ก์ธ์ค๊ฐ ์๋์ง ํ์ธํฉ๋๋ค.
ํ๋์ด ์ ์กฐํ ๊ธฐ๊ฐ์ ์จ๋ผ์ธ REORG๋ฅผ ์์ฝํ๊ณ ์ด๋ฅผ ์๋ฆผ ์ ์ฑ ๊ณผ ๊ฒฐํฉํ๋ฉด ์ ๋ฌด ์ค๋จ์ ์ต์ํํ ์ ์์ต๋๋ค. ์ด๋ฌํ ์ ๊ทผ ๋ฐฉ์์ ํนํ ๋๊ท๋ชจ ๋ฆฌํฉํ ๋ง ์์ ์ ์ ์ฉํ๋ฉฐ, ๊ฐ์ฉ์ฑ์ ์ํฅ์ ์ฃผ์ง ์๊ณ ๊ตฌ์กฐ์ ๊ฐ์ ์์ ์ ์ ์ง์ ์ผ๋ก ์งํํ ์ ์์ต๋๋ค.
COBOL ์นดํผ๋ถ ํ์ฅ ๊ณ์ฝ
COBOL ์นดํผ๋ถ์ ์ฌ๋ฌ ํ๋ก๊ทธ๋จ๊ณผ ์์ ๋จ๊ณ์์ ๊ณต์ ๋๋ ๋ฐ์ดํฐ ๋ ์ฝ๋์ ๊ตฌ์กฐ๋ฅผ ์ ์ํฉ๋๋ค. ๋ฐ์ดํฐ ๊ตํ์ ์ํ ์ธํฐํ์ด์ค ์ ์ ์ญํ ์ ํ๋ฉฐ, ์ผ๊ด ์ฒ๋ฆฌ ๋ฐ ์จ๋ผ์ธ ์ฒ๋ฆฌ ํ๋ฆ์ ๊น์ด ํตํฉ๋๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์นดํผ๋ถ ๊ตฌ์กฐ๋ฅผ ์กฐ๊ธ๋ง ๋ณ๊ฒฝํด๋ ์์ญ ๊ฐ์ ํ๋ก๊ทธ๋จ์ ํ๊ธ ํจ๊ณผ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค. ์์ ํ ๋ฆฌํฉํ ๋ง์ ์ํด ํ์ฅ-์ถ์ ํจํด์ด ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉ๋ฉ๋๋ค.
ํ์ฅ ๋จ๊ณ์์๋ ๊ธฐ์กด ํ๋ ์์น์ ๊ธธ์ด๋ฅผ ์ ์งํ๋ฉด์ ์ ํ๋๊ฐ ์นดํผ๋ถ์ ์ถ๊ฐ๋ฉ๋๋ค. ์ ํ๋๋ฅผ ์ฌ์ฉํ๋ ํ๋ก๊ทธ๋จ์ ํด๋น ํ๋์ ์ฆ์ ์ ๊ทผํ ์ ์์ผ๋ฉฐ, ์ด๋ฅผ ๋ฌด์ํ๋ ๊ธฐ์กด ํ๋ก๊ทธ๋จ์ ๊ณ์ ์๋ํฉ๋๋ค. ์ด ๋จ๊ณ๋ ์์ ํธํ์ฑ์ ๋ณด์ฅํฉ๋๋ค.
๋ชจ๋ ์ข ์ ์์คํ ์ด ์ ๊ตฌ์กฐ๋ฅผ ์ง์ํ๋๋ก ์ ๋ฐ์ดํธ๋ ํ ๊ณ์ฝ ๋จ๊ณ๊ฐ ์์๋ฉ๋๋ค. ๋ ์ด์ ํ์ํ์ง ์์ ๋ ๊ฑฐ์ ํ๋๋ ๋ ์ด์ ์ฌ์ฉ๋์ง ์๊ฑฐ๋ ๊ฒฐ๊ตญ ์ ๊ฑฐ๋ ์ ์์ต๋๋ค. ๊ณ์ฝ ๋จ๊ณ๋ ๋ชจ๋ ์๋น์๊ฐ ๋ง์ด๊ทธ๋ ์ด์ ๋์๋์ง ํ์ธํ ํ์ ์ ์คํ๊ฒ ์ํ๋ฉ๋๋ค.
๋ฐ์ดํฐ ๋ ์ฝ๋ ๊ฒ์ฆ๊ธฐ ๋ฐ ์๋ํ๋ ํ ์คํธ ํ๋ ์์ํฌ์ ๊ฐ์ ๋๊ตฌ๋ ๋ณ๊ฒฝ์ผ๋ก ์ธํด ๋ฐ์ดํฐ๊ฐ ์์๋๊ฑฐ๋ ๋ ์ด์์ ๋ถ์ผ์น๊ฐ ๋ฐ์ํ์ง ์๋์ง ํ์ธํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. ํ์ฅ-์ถ์ ํจํด์ ์ ์ฉํ๋ฉด ๋ค์ดํ์ ์์ด ๋ผ์ด๋ธ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ณ์ ์ง์ํ๋ฉด์ COBOL ์นดํผ๋ถ์ ํ๋ํํ ์ ์์ต๋๋ค.
๋ชจ๋ํฐ๋ง ๋ฐ ๊ด์ฐฐ
ํจ๊ณผ์ ์ธ ๋ชจ๋ํฐ๋ง๊ณผ ๊ด์ฐฐ ๊ฐ๋ฅ์ฑ์ ๋ฌด์ค๋จ ๋ฆฌํฉํ ๋ง์ ์์ ํ๊ฒ ์คํํ๋ ๋ฐ ํ์์ ์ ๋๋ค. ์ด๋ฌํ ๋ฐฉ์์ ๋ฌธ์ ๊ฐ์ง, ์์ ๋์ ํ์ธ, ๋ณ๊ฒฝ ์ฌํญ ๋ฐฐํฌ ํ ์ฑ๋ฅ ๊ฒ์ฆ์ ํ์ํ ์ค์๊ฐ ๊ฐ์์ฑ์ ์ ๊ณตํฉ๋๋ค. ๊ฐ๋ ฅํ ๊ด์ฐฐ ๊ฐ๋ฅ์ฑ์ด ์์ผ๋ฉด ํ์ ์ด๋ ์์์ ์์ ํ๊ฒ ๋์ด, ์นจ๋ฌต์ ์คํจ๋ ์ฌ์ฉ์ ๊ฒฝํ ์ ํ์ ์ํ์ด ์ปค์ง๋๋ค.
๋ชจ๋ํฐ๋ง์ ์ธํ๋ผ ๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ํ๋ฅผ ํ์ ํ๊ธฐ ์ํด ์์คํ ์งํ, ๋ก๊ทธ ๋ฐ ์ถ์ ๋ฐ์ดํฐ๋ฅผ ์์งํ๋ ๋ฐ ์ค์ ์ ๋ก๋๋ค. ๊ด์ฐฐ์ฑ์ ํ์ด ์ฌ์ ๊ณ์ธก ์์ด๋ ์์คํ ๋์์ ๋ํ ์๋ก์ด ์ง๋ฌธ์ ๋์ง ์ ์๋๋ก ํจ์ผ๋ก์จ ํ ๋จ๊ณ ๋ ๋ฐ์ ํฉ๋๋ค. ์ด๋ฌํ ๊ด์ฐฐ์ฑ์ ํตํด ๋ฆฌํฉํ ๋ง ์ค ๋ฐ์ํ ์ด์ ์งํ๋ฅผ ๊ฐ์ง, ์ง๋จ ๋ฐ ๋ณต๊ตฌํ ์ ์์ต๋๋ค.
์ด ์น์ ์์๋ ์ ๋์๊ณผ ๊ธฐ์กด ๋์์ ๋น๊ตํ๊ณ , ๋ฒ์ ๊ฐ ํธ๋์ญ์ ์ ์ถ์ ํ๊ณ , ์์คํ ๊ฐ ๋ฐ์ดํฐ ์ผ๊ด์ฑ์ ๊ฒ์ฆํ๋ ๊ธฐ์ ์ ์ดํด๋ด ๋๋ค. ๊ฐ๋ ฅํ ๊ด์ฐฐ์ฑ ๊ดํ์ ๊ตฌ์ถํจ์ผ๋ก์จ ํ์ ์ต์ํ์ ์ค๋จ์ผ๋ก ์ง์์ ์ธ ๊ฐ์ ์ ์ด๋ฃจ๋ ๋ฐ ํ์ํ ํต์ฐฐ๋ ฅ๊ณผ ํ์ ์ ์ป์ต๋๋ค.
์ฐจ๋ฑ ๋ชจ๋ํฐ๋ง
์ฐจ๋ฑ ๋ชจ๋ํฐ๋ง์ ์ด์ ํ๊ฒฝ์์ ๋์์ ์คํ๋๋ ์ด์ ์ฝ๋ ๊ฒฝ๋ก์ ์ ์ฝ๋ ๊ฒฝ๋ก์ ๋์์ ๋น๊ตํ๋ ๊ฒ์ ํฌํจํฉ๋๋ค. ์ด๋ ๋ฆฌํฉํ ๋ง๋ ๋ฒ์ ์ด ์ค์ ํ๊ฒฝ์์ ๋ ๊ฑฐ์ ๋ฒ์ ๊ณผ ๋์ผํ๊ฒ ๋์ํ๋์ง์ ๋ํ ์ฆ๊ฐ์ ์ธ ํผ๋๋ฐฑ์ ์ ๊ณตํ๊ธฐ ๋๋ฌธ์ ๋ฌด์ค๋จ ๋ฆฌํฉํ ๋ง์ ํต์ฌ ๊ธฐ๋ฒ์ ๋๋ค.
์ด๋ฌํ ๋น๊ต์๋ ์๋ต ์๊ฐ, ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋, ์ค๋ฅ์จ๊ณผ ๊ฐ์ ์ฑ๋ฅ ์งํ๊ฐ ํฌํจ๋ ์ ์์ต๋๋ค. ๋ํ ์ ํ์จ, ๊ฑฐ๋ ๊ฒฐ๊ณผ, ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ ๊ฒ์ฌ์ ๊ฐ์ ๋น์ฆ๋์ค ์์ค ์งํ๋ ํฌํจ๋ฉ๋๋ค. ์ด๋ฌํ ๋ฐ์ดํฐ๋ฅผ ๋ณ๋ ฌ๋ก ์์งํจ์ผ๋ก์จ ํ์ ๋ ผ๋ฆฌ ์ค๋ฅ๋ ์ฑ๋ฅ ์ ํ๋ฅผ ๋ํ๋ด๋ ์ฐจ์ด์ ์ ์ ํํ ํ์ ํ ์ ์์ต๋๋ค.
์ฐจ๋ฑ ๋ชจ๋ํฐ๋ง์ ๊ตฌํํ๊ธฐ ์ํด ์์คํ ์ ๋ ๋ฒ์ ๋ชจ๋์ ์์ฒญ์ ๋ณต์ ํ๊ฑฐ๋ ํธ๋ํฝ ์ํ๋ง์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. Grafana, Prometheus, Splunk์ ๊ฐ์ ๋ก๊น ๋ฐ ๋ฉํธ๋ฆญ ๋๊ตฌ๋ฅผ ๊ตฌ์ฑํ์ฌ ์ถ์ธ๋ฅผ ์ค๋ฒ๋ ์ดํ๊ณ ์ด์ ์งํ๋ฅผ ์๋ณํ ์ ์์ต๋๋ค. ์ ๋ฒ์ ์ด ์์ ๊ธฐ์ค์์ ๋ฒ์ด๋๋ฉด ์๋ฆผ์ ํธ๋ฆฌ๊ฑฐํ ์ ์์ต๋๋ค.
์ฐจ๋ฑ ๋ชจ๋ํฐ๋ง์ ํตํด ์ป์ ํต์ฐฐ๋ ฅ์ ๋ถ์์ ํ๊ฑฐ๋ ์๋ชป๋ ๋ฆฌํฉํฐ๋ง์ ์ํ์ ์ค์ฌ์ค๋๋ค. ๋ํ, ์ถ์, ๋กค๋ฐฑ ๋ฐ ์ถ๊ฐ ์ต์ ํ์ ๋ํ ๋ฐ์ดํฐ ๊ธฐ๋ฐ ์์ฌ ๊ฒฐ์ ์ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค.
์ฌ๋ฌ ๋ฒ์ ์ ๊ฑธ์น ๋ถ์ฐ ์ถ์
๋ถ์ฐ ์ถ์ ์ ์์คํ ์ ์ฌ๋ฌ ์๋น์ค์ ๊ตฌ์ฑ ์์๋ฅผ ๊ฑฐ์น๋ ์์ฒญ์ ์๋ช ์ฃผ๊ธฐ๋ฅผ ์ถ์ ํฉ๋๋ค. ๋ฆฌํฉํ ๋ง์ ์ํํ ๋, ํนํ ๋ง์ดํฌ๋ก์๋น์ค ๋๋ ์ด๋ฒคํธ ๊ธฐ๋ฐ ์ํคํ ์ฒ์์ ๊ธฐ์กด ๊ตฌ์ฑ ์์์ ์ ๋ฐ์ดํธ๋ ๊ตฌ์ฑ ์์ ๋ชจ๋์์ ์์ฒญ์ด ์ด๋ป๊ฒ ์ฒ๋ฆฌ๋๋์ง ์๊ฐํํ๋ ๋ฐ ์ถ์ ์ด ํ์์ ์ ๋๋ค.
์ถ์ ์๋ ์์ธํ ํ์ด๋ฐ ์ ๋ณด, ์๋น์ค ํธ์ถ ๊ณ์ธต ๊ตฌ์กฐ, ์ปจํ ์คํธ ์ ํ๊ฐ ํฌํจ๋ฉ๋๋ค. ์ด๋ฅผ ํตํด ์์ง๋์ด๋ ์ง์ฐ์ ์ ๋ฐํ๊ฑฐ๋, ์ค๋ฅ๋ฅผ ๋ฐ์์ํค๊ฑฐ๋, ์์์น ๋ชปํ ๊ฒฐ๊ณผ๋ฅผ ์์ฑํ๋ ๊ตฌ์ฑ ์์๋ฅผ ํ์ ํ ์ ์์ต๋๋ค. ์ ํ ๊ณผ์ ์์ ์ด์ ๋ฒ์ ๊ณผ ์ ๋ฒ์ ์ ์ถ์ ์ ๋น๊ตํ๋ฉด ๋ ผ๋ฆฌ ํ๋ฆ, ์ข ์์ฑ ๋ฐ ๋ถ์์ฉ์ ์ผ๊ด์ฑ์ ์ ์งํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
OpenTelemetry, Jaeger, Zipkin๊ณผ ๊ฐ์ ์ต์ ์ถ์ ๋๊ตฌ๋ ์ ํ๋ฆฌ์ผ์ด์ ๊ณ์ธก ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ํตํฉ๋์ด ์ฌ์ธต์ ์ธ ๊ฐ์์ฑ์ ์ ๊ณตํฉ๋๋ค. ์ด๋ฌํ ๋๊ตฌ๋ ๋ฐฐํฌ ๋ฒ์ ์ ๋ฐ๋ฅธ ํ๊ทธ ์ง์ ๋ฐ ํํฐ๋ง ๊ธฐ๋ฅ์ ์ง์ํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์, ํ์ด ๋ผ์ด๋ธ ๋กค์์ ์ค์ ํน์ ํธ๋ํฝ ํจํด์ ๋ถ๋ฆฌํ๊ณ ๋ถ์ํ ์ ์๋๋ก ์ง์ํฉ๋๋ค.
๋ฌธ์ ๊ฐ ๋ฐ๊ฒฌ๋๋ฉด ์ถ์ ๊ธฐ๋ฅ์ ํตํด ๊ทผ๋ณธ ์์ธ ๋ถ์๋ ๊ฐ๋ฅํฉ๋๋ค. ์์ง๋์ด๋ ์์ฒญ์ ์ ์ฒด ๊ณผ์ ์ ์ถ์ ํ๊ณ ๋์์ด ์ด๋์์, ์ ๋ฌ๋ผ์ก๋์ง ํ์ ํ ์ ์์ต๋๋ค. ์ด๋ฅผ ํตํด ํด๊ฒฐ ์๊ฐ์ ๋จ์ถํ๊ณ ๋ฆฌํฉํ ๋ง ๊ฒฐ๊ณผ์ ๋ํ ์ ๋ขฐ๋๋ฅผ ๋์ผ ์ ์์ต๋๋ค.
๋น์ฆ๋์ค ๊ฑฐ๋ ์๊ด๊ด๊ณ
๋น์ฆ๋์ค ํธ๋์ญ์ ์๊ด๊ด๊ณ๋ ๊ธฐ์ ์๊ฒฉ ์ธก์ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๋ฌธ ์ฒ๋ฆฌ, ๊ณ ๊ฐ ์จ๋ณด๋ฉ, ๊ฒฐ์ ์น์ธ๊ณผ ๊ฐ์ ์๋ฏธ ์๋ ๋น์ฆ๋์ค ์ด๋ฒคํธ์ ์ฐ๊ฒฐํฉ๋๋ค. ์ด๋ฌํ ๊ด์ฐฐ ๊ฐ๋ฅ์ฑ ๊ณ์ธต์ ๋ฆฌํฉํ ๋ง ๊ณผ์ ์์ ์ค์ํ๋ฐ, ๋ณ๊ฒฝ ์ฌํญ์ด ์ฌ์ฉ์์ ์ดํด๊ด๊ณ์์๊ฒ ์ค์ํ ๊ฒฐ๊ณผ์ ์ํฅ์ ๋ฏธ์น๋์ง ์ฌ๋ถ๋ฅผ ๋ณด์ฌ์ฃผ๊ธฐ ๋๋ฌธ์ ๋๋ค.
๋ฆฌํฉํ ๋ง๋ ์์คํ ์ ๋์ผํ ์ธ๋ถ ๋์์ ์ ์งํ๋ฉด์ ๋ด๋ถ์ ์ผ๋ก ๊ฑฐ๋๊ฐ ์ฒ๋ฆฌ๋๋ ๋ฐฉ์์ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค. ๊ธฐ์กด ์์คํ ๊ณผ ์ ๊ท ์์คํ ๋ชจ๋์์ ๋น์ฆ๋์ค ๊ฑฐ๋๋ฅผ ์ถ์ ํจ์ผ๋ก์จ ํ์ ์ก์ฅ ์์ฑ์ด๋ ์ ์ฑ ์น์ธ๊ณผ ๊ฐ์ ๊ฒฐ๊ณผ๊ฐ ์ ํํ๊ฒ ์ ์ง๋๋์ง ํ์ธํ ์ ์์ต๋๋ค.
์ด๋ ์ผ๋ฐ์ ์ผ๋ก ๊ฐ ํธ๋์ญ์ ์ ์ฌ๋ฌ ์๋น์ค์ ๊ตฌ์ฑ ์์ ์ ๋ฐ์ ๊ฑธ์ณ ์ ์ง๋๋ ๊ณ ์ ์๋ณ์๋ฅผ ํ๊ทธ๋ก ์ง์ ํ์ฌ ๋ฌ์ฑ๋ฉ๋๋ค. ๋ชจ๋ํฐ๋ง ํ๋ซํผ์ ํธ๋์ญ์ ID๋ณ๋ก ๊ธฐ์ ์งํ๋ฅผ ์ง๊ณํ์ฌ ์ฒ๋ฆฌ ์๊ฐ, ์คํจ์จ ๋ฐ ๋ค์ด์คํธ๋ฆผ ํจ๊ณผ์ ๋ํ ํตํฉ๋ ๋ทฐ๋ฅผ ์ ๊ณตํฉ๋๋ค.
๋น์ฆ๋์ค ํธ๋์ญ์ ๋์๋ณด๋๋ ์ด์ํ์ ๋น์ฆ๋์ค ๋ก์ง๊ณผ ์ฐ๊ณ๋ ์ค์๊ฐ ์ํ ์งํ๋ฅผ ์ ๊ณตํฉ๋๋ค. ๋ฆฌํฉํ ๋ง ์์ ์, ์ด๋ฌํ ๋์๋ณด๋๋ ์ฑ๊ณต ๋๋ ์คํจ๋ฅผ ๊ฐ์ฅ ๋ช ํํ๊ฒ ๋ณด์ฌ์ค๋๋ค. ๋ํ ๊ธฐ์ ์ ์ธ ์ง์์ด ์๋ ์ดํด๊ด๊ณ์์์ ์ํต์ ์ง์ํ์ฌ ์๋น์ค ์ฐ์์ฑ์ด ์ ์ง๋๊ณ ์์์ ๋ณด์ฅํฉ๋๋ค.
๋ฐ์ดํฐ ์ผ๊ด์ฑ ๊ฒ์ฆ
๋ค์ดํ์ ์๋ ๋ฆฌํฉํ ๋ง ๊ณผ์ ์์ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ์ ์ ์งํ๋ ๊ฒ์ ๋งค์ฐ ์ค์ํฉ๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ ๋์์ด ์ ์์ ์ผ๋ก ๋ณด์ด๋๋ผ๋, ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ณ , ์ฐ๊ณ , ํด์ํ๋ ๋ฐฉ์์ ๋ฏธ๋ฌํ ๋ถ์ผ์น๊ฐ ๋ฐ์ํ๋ฉด ๋ค์ด์คํธ๋ฆผ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๋ฌธ์ ๋ ์ฆ์ ๋ํ๋์ง ์์ ์๋ ์์ง๋ง, ๋ฉฐ์น ๋๋ ๋ช ์ฃผ ํ์ ๋ํ๋ ๋ถ์, ๋ณด๊ณ ๋๋ ์ฌ์ฉ์ ์์ ์ ์ํฅ์ ๋ฏธ์น ์ ์์ต๋๋ค.
๋ฐ์ดํฐ ์ผ๊ด์ฑ ๊ฒ์ฆ์ ์๋ก์ด ์์คํ ์ด๋ ๋ฒ์ ์ด ์ด์ ๋ฒ์ ๊ณผ ๋์ผํ ์ถ๋ ฅ์ ์์ฑํ๊ณ , ๋์ผํ ๊ฐ์ ์ ์ฅํ๋ฉฐ, ๊ธฐ๋ฅ์ ์ผ๋ก ๋์ผํ ๋ฐฉ์์ผ๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ํธ ์์ฉํ๋์ง ๊ฒ์ฆํ๋ ๊ฒ์ ํฌํจํฉ๋๋ค. ํนํ ์คํค๋ง ๋ณ๊ฒฝ, ํ๋ ๋งคํ ๋๋ ์ธ์ฝ๋ฉ ํ์์ด ์ ๋ฐ์ดํธ๋๋ ๊ฒฝ์ฐ ์ด๋ฌํ ๊ฒ์ฆ์ ๋ณต์กํ ์ ์์ต๋๋ค.
์ด ์น์ ์์๋ ๋ฆฌํฉํ ๋ง๋ ์์คํ ์ด ๋ฐ์ดํฐ๋ฅผ ์ ํํ๊ฒ ์ฒ๋ฆฌํ๋์ง ํ์ธํ๋ ์ ๋ต์ ์ ์ํฉ๋๋ค. ์ฒดํฌ์ฌ ๋น๊ต, ๋ฉฑ๋ฑ์ฑ ๊ฒ์ฆ, ์ด๋ฒคํธ ์์ฑ ๊ฐ์ฌ ๋ฑ์ ๊ธฐ๋ฒ์ด ํฌํจ๋์ด ์์ผ๋ฉฐ, ์ด๋ฌํ ๊ธฐ๋ฒ์ ๋ชจ๋ ๋ถ์ผ์น๋ฅผ ์กฐ๊ธฐ์ ํฌ์ฐฉํ๊ณ ๋ฐฐํฌ ํ์๋ ์์คํ ๋์์ด ์์ธก ๊ฐ๋ฅํ๊ณ ์์ ์ ์ผ๋ก ์ ์ง๋๋๋ก ์ค๊ณ๋์์ต๋๋ค.
์์คํ ๊ฐ ์ฒดํฌ์ฌ ๊ฒ์ฆ
์ฒดํฌ์ฌ์ ์์คํ ๊ฐ ๋ฐ์ดํฐ ์ผ๊ด์ฑ์ ๊ฒ์ฆํ๋ ๊ฐ๋จํ๊ณ ํจ๊ณผ์ ์ธ ๋ฐฉ๋ฒ์ ์ ๊ณตํฉ๋๋ค. ๋ ์ฝ๋ ๋๋ ํธ๋์ญ์ ํ์ด๋ก๋์์ ํด์ ๊ฐ์ ์์ฑํ์ฌ ๋ ๊ฑฐ์ ๊ตฌ์ฑ ์์์ ์ถ๋ ฅ์ด ๋ฆฌํฉํ ๋ง๋ ๋ฒ์ ์ ์ถ๋ ฅ๊ณผ ์ผ์นํ๋์ง ๋น๊ตํ ์ ์์ต๋๋ค. ์ฒดํฌ์ฌ ๊ฐ์ ๋ถ์ผ์น๋ ์ฒ๋ฆฌ ๋ถ์ผ์น๋ฅผ ๋ํ๋ด๋ ๊ฐ๋ ฅํ ์งํ์ ๋๋ค.
์ด ๊ธฐ์ ์ ์ ํ ์ค์ ๊ธฐ์กด ์์คํ ๊ณผ ์ ๊ท ์์คํ ๋ชจ๋์ ์ด์ค ์ฐ๊ธฐ๋ฅผ ์ํํ ๋ ํนํ ์ ์ฉํฉ๋๋ค. ๊ฐ ์์คํ ์ ๋ฐ์ดํฐ๋ฅผ ์ฐ๊ฑฐ๋ ๋ณํํ ํ, SHA-256์ด๋ MD5์ ๊ฐ์ ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ์ฌ ์ฒดํฌ์ฌ์ ๊ณ์ฐํฉ๋๋ค. ์ด ์ฒดํฌ์ฌ์ ๋น๊ต ์์ง์ ์ ์ฅ๋๊ฑฐ๋ ์คํธ๋ฆฌ๋ฐ๋์ด ๋ถ์ผ์น๋ฅผ ์๋ณํ๊ณ ๋ถ์์ ์ํด ๊ธฐ๋กํฉ๋๋ค.
์ฒดํฌ์ฌ์ ๊ฐ๋ฒผ์ฐ๋ฉฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ๋ฐ์ดํธ, API ์๋ต, ์ผ๊ด ๋ด๋ณด๋ด๊ธฐ ๋ฑ ํ์ดํ๋ผ์ธ์ ์ฌ๋ฌ ์ง์ ์ ์ ์ฉํ ์ ์์ต๋๋ค. ์ค์ ๋ฐ์ดํฐ๋ฅผ ๋ ธ์ถํ์ง ์์ผ๋ฉฐ ์ํธํ๋ ํ๊ฒฝ์ด๋ ๋ฏผ๊ฐํ ์์คํ ์์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
CI/CD ๋๋ ๋ชจ๋ํฐ๋ง ํ์ดํ๋ผ์ธ์ ์ฒดํฌ์ฌ ๊ฒ์ฆ์ ํตํฉํ๋ฉด ๋ฐ์ดํฐ ์ผ๊ด์ฑ ๊ฒ์ฌ๊ฐ ํญ์ ๋ฆด๋ฆฌ์ค ํ๋ก์ธ์ค์ ์ผ๋ถ๋ก ํฌํจ๋์ด ๋ฆฌํฉํ ๋ง์ ์ ํ์ฑ์ ๋ํ ์ ๋ขฐ๋๊ฐ ๋์์ง๋๋ค.
์ข ๋จ ๊ฐ ๋ฉฑ๋ฑ์ฑ ๊ฒ์ฌ
๋ฉฑ๋ฑ์ฑ์ ๋์ผํ ์์ ์ ๋ฐ๋ณต ์คํํด๋ ๋์ผํ ๊ฒฐ๊ณผ๊ฐ ๋ฐํ๋๋๋ก ๋ณด์ฅํ๋ ์์ฑ์ ๋๋ค. ๋ฆฌํฉํ ๋ง์์ ์ฌ๋ฌ ์ฝ๋ ๊ฒฝ๋ก์ ๊ฑธ์ณ ๋ฉฑ๋ฑ์ฑ์ ๊ฒ์ฆํ๋ฉด ์ฌ์๋ ์กฐ๊ฑด์ด๋ ์ฅ์ ์กฐ์น ์ํฉ์์๋ ๋ฐ์ดํฐ ๋ณํ์ด๋ ํธ๋์ญ์ ์ด ์์ ์ ์ผ๋ก ์๋ํ๋์ง ํ์ธํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
๊ฒฐ์ , ์ฌ์ฉ์ ๊ณ์ , ์ฌ๊ณ ๋ฑ ์ค์ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๋ ์๋น์ค๋ฅผ ๋ฆฌํฉํ ๋งํ ๋ ๊ฐ๋ฐ์๋ ์ค๋ณต, ๋๋ฝ ๋๋ ์์์ด ๋ฐ์ํ์ง ์๋์ง ๊ฒ์ฆํด์ผ ํฉ๋๋ค. ์ฌ๊ธฐ์๋ ๊ธฐ์กด ์์คํ ๊ณผ ์ ๊ท ์์คํ ๋ชจ๋์์ ์ฌ์๋, ๋ถ๋ถ ์คํจ ๋ฐ ๋กค๋ฐฑ์ ์๋ฎฌ๋ ์ด์ ํ๊ณ ์ต์ข ๋ฐ์ดํฐ ์ํ๊ฐ ์์๊ณผ ์ผ์นํ๋์ง ํ์ธํ๋ ๊ฒ์ด ํฌํจ๋ฉ๋๋ค.
๋ฉฑ๋ฑ์ฑ์ ๊ฐํํ๋ ๊ธฐ์ ์๋ ๊ณ ์ ์์ ์๋ณ์, ์ํ์ค ํ ํฐ, ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ์ฝ ์กฐ๊ฑด์ด ์์ต๋๋ค. ํ ์คํธ ํ๋ค์ค๋ ์ค๋ณต๋๊ฑฐ๋ ์ฌ์๋ ์์ฒญ์ ์ฃผ์ ํ์ฌ ์์คํ ์๋ต์ ์ธก์ ํ ์ ์์ต๋๋ค. ๋ชจ๋ํฐ๋ง ๋์๋ณด๋๋ ์ค๋ณต ํค, ์๊ธฐ์น ์์ ์ ๋ฐ์ดํธ ๋๋ null ๊ฐ๊ณผ ๊ฐ์ ์ด์ ์งํ๋ฅผ ๊ฐ์กฐํด์ผ ํฉ๋๋ค.
๋ฉฑ๋ฑ์ฑ ๊ฒ์ฌ๋ ๋น๋๊ธฐ ํต์ ๊ณผ ์ฌ์๋๊ฐ ๋น๋ฒํ ๋ถ์ฐ ์์คํ ๊ณผ ๋ง์ดํฌ๋ก์๋น์ค์์ ํนํ ์ ์ฉํฉ๋๋ค. ๋ผ์ด๋ธ ๋ฆฌํฉํฐ๋ง ์ค ๋ฐ ์ดํ์๋ ์์ ์ ์ด๊ณ ๋ฐ๋ณต ๊ฐ๋ฅํ ๋์์ ์ํ ๊ฐ๋ ฅํ ๊ธฐ๋ฐ์ ์ ๊ณตํฉ๋๋ค.
๋ณ๊ฒฝ ๊ฐ์ฌ๋ฅผ ์ํ ์ด๋ฒคํธ ์์ฑ
์ด๋ฒคํธ ์์ฑ์ ์ต์ ์์คํ ์ํ๋ง ์ ์ฅํ๋ ๊ฒ์ด ์๋๋ผ ๋ชจ๋ ์ํ ๋ณ๊ฒฝ์ ์ผ๋ จ์ ์ด๋ฒคํธ๋ก ๊ธฐ๋กํฉ๋๋ค. ์ด ์ ๊ทผ ๋ฐฉ์์ ๋ฆฌํฉํ ๋ง ๊ณผ์ ์์ ๋ฐ์ดํฐ ์ผ๊ด์ฑ์ ๊ฐ์ฌํ๊ณ ๊ฒ์ฆํ๋ ๊ฐ๋ ฅํ ๋ฐฉ๋ฒ์ ์ ๊ณตํฉ๋๋ค. ํ์ ์ค๋ ์ท์ ๋น๊ตํ๋ ๋์ ์ํ ์ ํ ํ๋ก์ธ์ค์ ๋ชจ๋ ๋จ๊ณ๋ฅผ ์ฌ์ํ๊ณ ๋ถ์ํ ์ ์์ต๋๋ค.
์ด๋ฒคํธ ์์ฑ์ ์ฌ์ฉํ๋ ์์คํ ์์๋ ์ฌ์ฉ์ ์ ๋ฐ์ดํธ, ๊ธ์ต ๊ฑฐ๋, ์ฌ๊ณ ๋ณ๊ฒฝ ๋ฑ ๋ชจ๋ ๋์์ด ๊ฐ๋ณ ์ด๋ฒคํธ๋ก ๊ธฐ๋ก๋ฉ๋๋ค. ์ด๋ฌํ ์ด๋ฒคํธ๋ ๋ก๊ทธ๋ ์ ๋์ ๊ฒ์๋์ด ๊ธฐ์กด ๊ตฌ์ฑ ์์์ ์ ๊ตฌ์ฑ ์์ ๋ชจ๋์์ ์ฌ์ฉ๋ ์ ์์ต๋๋ค. ๊ฐ๋ฐ์๋ ๊ฒฐ๊ณผ ์ํ ๋๋ ์ด๋ฒคํธ ํธ๋ ์ผ์ ๋น๊ตํ์ฌ ๋ ๊ตฌํ์ด ๋์ผํ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ์ ธ์ค๋์ง ๊ฒ์ฆํ ์ ์์ต๋๋ค.
์ด๋ฒคํธ ์ฌ์์ ๋กค๋ฐฑ, ์๋ฎฌ๋ ์ด์ ๋ฐ ์ธ๋ถ์ ์ธ ๋๋ฒ๊น ์ ์ง์ํฉ๋๋ค. ๋ฆฌํฉํ ๋ง ์ค์ ์์ง๋์ด๋ ๋ฐ์ดํฐ ๋ณ๊ฒฝ์ด ์ด๋ป๊ฒ ๋ฐ์ํ๋์ง ์ ํํ๊ฒ ์ถ์ ํ ์ ์์ผ๋ฉฐ, ๊ธฐ์กด ์ํ ๊ธฐ๋ฐ ์์คํ ์์๋ ์ ๊ณตํ ์ ์๋ ๊ฐ์์ฑ์ ์ ๊ณตํฉ๋๋ค.
์์คํ ์์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ด๋ฒคํธ ์์ฑ์ ์ฌ์ฉํ์ง ์๋๋ผ๋ ๋ฆฌํฉํฐ๋ง ์ค์ ๊ฐ๋ฒผ์ด ์ด๋ฒคํธ ๋ก๊น ๊ณ์ธต์ ๋์ ํ๋ฉด ์ถ์ ์ฑ์ ํฌ๊ฒ ๊ฐ์ ํ๊ณ ๋ฐ์ดํฐ ์ผ๊ด์ฑ์ ๋ณด์ฅํ ์ ์์ต๋๋ค.
์ ๋ก ๋ค์ดํ์์ด ๋ถ๊ฐ๋ฅํ ๊ฒฝ์ฐ
๋ง์ ์กฐ์ง์ด ์ ๋ก ๋ค์ดํ์์ ๋ชฉํ๋ก ์ผ๊ณ ์์ง๋ง, ์ค์ ๋ก๋ ๋ฌ์ฑํ ์ ์๋ ์ํฉ์ด ์์ต๋๋ค. ๋ ๊ฑฐ์ ์ข ์์ฑ, ํธ๋์ญ์ ๊ฒฐํฉ, ๊ด์ธก ๋ถ๊ฐ๋ฅ์ฑ, ๋๋ ์์ ๋ถ๊ฐ๋ฅํ ํ์ฌ ์์คํ ์ผ๋ก ์ธํด ์๋น์ค๊ฐ ์ผ์์ ์ผ๋ก ์ค๋จ๋ ์ ์์ต๋๋ค. ์ด๋ฌํ ์ํฉ์์๋ ์ฌ์ฉ์ ์ํฅ์ ์ต์ํํ๊ณ ์์คํ ์ฑ๋ฅ ์ ํ๊ฐ ํต์ ๋๋ ๋์ ์์คํ ์์ ์ฑ์ ์ ์งํ๋ ๋ฐ ์ค์ ์ ๋์ด์ผ ํฉ๋๋ค.
์ฑ๊ณต์ ์ธ ์ ๋ต์ ํฌ๋ช ํ ๊ณํ, ์ดํด๊ด๊ณ์์์ ์ํต, ๊ทธ๋ฆฌ๊ณ ์ํ์ ์ค์ด๋ ๊ธฐ์ ์ ๋ฉ์ปค๋์ฆ์์ ์์๋ฉ๋๋ค. ๊ณํ๋ ์ฑ๋ฅ ์ ํ ์ ๊ทผ ๋ฐฉ์์๋ ์ฝ๊ธฐ ์ ์ฉ ๋ชจ๋, ๋น๋๊ธฐ ๋๊ธฐ์ด, ๋๋ ์์ ํ๋ก ์ฐจ๋จ ๋ฑ์ด ์์ต๋๋ค. ์ด๋ฌํ ๋ฐฉ๋ฒ์ ์ฉ๋์ด๋ ๊ธฐ๋ฅ์ ์ค์ฌ๋ ์๋น์ค ๊ฐ์ฉ์ฑ์ ์ ์งํ๋ฉด์ ์๊ฐ์ ์ ์ฝํฉ๋๋ค.
์ด ์น์ ์์๋ ํต์ ๋ ๋ค์ดํ์ ๊ด๋ฆฌ ์ ๋ต์ ์ ๊ณตํฉ๋๋ค. ๋ง์ฐฐ๊ณผ ์ฌ์ฉ์ ๋ถ๋ง์ ์ค์ด๊ธฐ ์ํ ๊ธฐ์ ์ ๋ฐ ์กฐ์ง์ ๊ธฐ๋ฒ์ ๋ชจ๋ ํฌํจํฉ๋๋ค. ์ ์ ํ ์ค๋น๋ฅผ ํตํด ๋ค์ดํ์์ด 0์ด ์๋ ์ ๋ฐ์ดํธ๋ ์ํํ๊ณ ์์ธก ๊ฐ๋ฅํ๊ฒ ์คํํ ์ ์์ต๋๋ค.
๊ณํ๋ ์ ํ ์ ๋ต
๊ณํ๋ ์ฑ๋ฅ ์ ํ๋ ์ ์ง ๊ด๋ฆฌ ๋๋ ๋ฐฐํฌ ๊ธฐ๊ฐ ๋์ ์์คํ ๊ธฐ๋ฅ์ ์๋์ ์ผ๋ก ํต์ ๋ ๋ฐฉ์์ผ๋ก ์ ํ์ํค๋ ๊ดํ์ ๋๋ค. ์ด ๋ฐฉ์์ ๊ณต์ ์ธํ๋ผ, ๊ธด๋ฐํ ๊ฒฐํฉ, ๋๋ ์ค๋๋ ํ๋กํ ์ฝ๊ณผ ๊ฐ์ ์ด๋ ค์ด ์ ์ฝ ์กฐ๊ฑด์ผ๋ก ์ธํด ์ ๋ก ๋ค์ดํ์์ด ์คํ ๋ถ๊ฐ๋ฅํ ๊ฒฝ์ฐ ํนํ ์ ์ฉํฉ๋๋ค.
๊ฐ์ฅ ํจ๊ณผ์ ์ธ ๊ธฐ์ ์ค ํ๋๋ ์์คํ ์ ์ผ๋ถ๋ฅผ ์ฝ๊ธฐ ์ ์ฉ ๋ชจ๋๋ก ์ ํํ๋ ๊ฒ์ ๋๋ค. ์๋ฅผ ๋ค์ด, ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง ๋ง์ด๊ทธ๋ ์ด์ ์ค์๋ ์ฌ์ฉ์ ์ธํฐํ์ด์ค๋ ์ ๋ฐ์ดํธ๋ฅผ ๋ฐฉ์งํ๋ฉด์๋ ์ ๋ณด๋ฅผ ๊ณ์ ํ์ํ ์ ์์ผ๋ฏ๋ก, ์ฌ์ฉ์์๊ฒ ์์๋ ์ํฌํ๋ก๋ ์ค๋ฅ ๋ฉ์์ง๊ฐ ํ์๋์ง ์์ต๋๋ค.
ํ ๊ธฐ๋ฐ ๋ฒํผ๋ง์ ๋ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ ๋๋ค. ์ฐ๊ธฐ ์์ ์ ๋ฉ์์ง ํ๋ ๋ก๊ทธ์ ์ผ์์ ์ผ๋ก ๋ณด๊ด๋์๋ค๊ฐ ์์คํ ์ด ์์ ํ ์ ์ ์๋ ์ํ๋ก ๋์์ค๋ฉด ๋ค์ ์คํ๋ฉ๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด ์ฌ์ฉ์ ์ ๋ ฅ์ ๋ณด์กดํ๋ ๋์์ ๋ฆฌํฉํ ๋ง ํ๋ก์ธ์ค๋ฅผ ๋ถ๋ฆฌํ ์ ์์ต๋๋ค.
ํด๋ผ์ด์ธํธ ์ธก ์บ์ฑ ํ์ฅ ๊ธฐ๋ฅ์ ์ด์ ์ ๊ฐ์ ธ์จ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ๊ณ ๋ฐ๋ณต๋๋ API ํธ์ถ์ ์ต์ ํจ์ผ๋ก์จ ์ํฅ์ ์ค์ผ ์ ์์ต๋๋ค. ๋ฒ์ ์ด ์ง์ ๋ API ๋๋ ์ฌ๊ฒ์ฆ ์ค ์ค๋๋ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ์ ๋ต๊ณผ ํจ๊ป ์ฌ์ฉํ๋ฉด ์บ์ฑ์ ์ฌ์ฉ์ ์ธ์ง๋ฅผ ์ต์ํํ๋ฉด์ ์งง์ ์ค๋จ ์๊ฐ์ ์ค์ด๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
์ด๋ฌํ ์ ํ ์ ๋ต์ ํจ๊ป ์ ์ฉํ๋ฉด ์ง์ ํ ๋ฌด์ค๋จ ์ด์์ด ๋ถ๊ฐ๋ฅํ ํ๊ฒฝ์์ ์ ์ฐ์ฑ์ ํ๋ณดํ ์ ์์ต๋๋ค.
ํ ๊ธฐ๋ฐ ์์ฒญ ๋ฒํผ๋ง
์ ๋ฐ์ดํธ ์ค์ ์ฌ์ฉ์ ๋๋ ์์คํ ์์ฒญ์ ๋๊ธฐ์ด์ ๋ฒํผ๋งํ๋ฉด ํด๋ผ์ด์ธํธ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฐจ๋จํ๊ฑฐ๋ ์ฌ์ฉ์๋ฅผ ์ค๋ฅ์ ๋ ธ์ถ์ํค์ง ์๊ณ ๋ ๋ฐ์ดํฐ๋ฅผ ์์ ์ ์ผ๋ก ๋ณด์กดํ ์ ์์ต๋๋ค. ์ด๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฌ์ธ๋ฑ์ฑ์ด๋ ์๋น์ค ์ฌ๋ฐฐํฌ์ ๊ฐ์ด ๋ฐฑ์๋ ์๋น์ค๋ฅผ ์ผ์์ ์ผ๋ก ์ค๋จํด์ผ ํ๋ ์์ ์ ์ํํ ๋ ํนํ ์ ์ฉํฉ๋๋ค.
์ด ํจํด์์๋ ์์ ๋๋ ์ฐ๊ธฐ ์์ฒญ์ด Kafka, RabbitMQ ๋๋ AWS SQS ๋ฒํผ์ ๊ฐ์ ๋ด๊ตฌ์ฑ ์๋ ํ์ ์ ์ฅ๋ฉ๋๋ค. ๋ฉ์ธ ์ฒ๋ฆฌ ์์คํ ์ด ์คํ๋ผ์ธ ์ํ์ด๊ฑฐ๋ ๋ฆฌํฉํ ๋ง ์ค์ผ ๋์๋ ํ๋ ์ด๋ฒคํธ๋ฅผ ๊ณ์ ์์งํฉ๋๋ค. ์์คํ ์ด ๋ค์ ์จ๋ผ์ธ ์ํ๊ฐ ๋๋ฉด ํด๋น ์ด๋ฒคํธ๊ฐ ์์๋๋ก ์ฌ์๋์ด ์ฌ์ฉ์ ์์ ์ด ์์ค๋์ง ์๋๋ก ํฉ๋๋ค.
๋ฒํผ๋ง๋ ์ฐ๊ธฐ๋ ์ค๋ณต์ ๋ฐฉ์งํ๊ธฐ ์ํด ๋ฉฑ๋ฑ์ฑ์ ๊ฐ์ ธ์ผ ํ๋ฉฐ, ํ๋ ์ฌ์๋, ์ง์ฐ ๋ฐ ์ค๋ฅ ์ฒ๋ฆฌ ๋ฉ์ปค๋์ฆ์ ์ง์ํด์ผ ํฉ๋๋ค. ์์ ์์คํ ์ ๋ํ ๋ถ๋ถ์ ์ผ๋ก ์ฒ๋ฆฌ๋ ์์ฒญ์ ์ํ๋ฅผ ์ถ์ ํ์ฌ ์ ํํ๊ฒ ์ฌ๊ฐํด์ผ ํฉ๋๋ค.
์์คํ ๊ณผ๋ถํ๋ ์๊ฐ ์ด๊ณผ๋ฅผ ๋ฐฉ์งํ๋ ค๋ฉด ๋๊ธฐ์ด ๊น์ด์ ์ฒ๋ฆฌ ์ง์ฐ์ ๋ชจ๋ํฐ๋งํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ์์ฒญ ๋ฒํผ๋ง์ ์ฌ๋ฐ๋ฅด๊ฒ ๊ตฌํํ๋ฉด ์ฌ์ฉ์์๊ฒ ์ํํ ๊ฒฝํ์ ์ ๊ณตํ๋ ๋์์ ๊ฐ๋ฐ์์๊ฒ ์๋น์ค ์ค๋จ์ ์ต์ํํ๋ฉด์ ๋ฆฌํฉํ ๋งํ ์ ์๋ ์ ์ฐ์ฑ์ ์ ๊ณตํฉ๋๋ค.
ํด๋ผ์ด์ธํธ ์ธก ์บ์ฑ ํ์ฅ
ํด๋ผ์ด์ธํธ ์ธก ์บ์ฑ ํ์ฅ ๊ธฐ๋ฅ์ ์ผ์์ ์ธ ์์คํ ์ฅ์ ๋ก ์ธํ ์ํฅ์ ์ํํ๋ ๊ฐ๋ ฅํ ๋ฐฉ๋ฒ์ ๋๋ค. ๋ฐฑ์๋ ์๋น์ค๊ฐ ์คํ๋ผ์ธ์ด๊ฑฐ๋ ์ฝ๊ธฐ ์ ์ฉ ์ํ์ผ ๋์๋ ๋ธ๋ผ์ฐ์ ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์บ์๋ ๋ฐ์ดํฐ๋ฅผ ๊ณ์ ํ์ํ ์ ์์ผ๋ฏ๋ก ์ฌ์ฉ์๋ ์์ฐ์ฑ์ ์ ์งํ๊ณ ๋ถํธํจ์ ํผํ ์ ์์ต๋๋ค.
์บ์ฑ ์ ๋ต์๋ ์ด์ ์ ์์ฒญ๋ ์ฝํ ์ธ ๋ฅผ ์ ํ๋ฆฌ์ผ์ด์ ๋ด์ localStorage, IndexedDB ๋๋ ๋ฉ๋ชจ๋ฆฌ ๋ด ์บ์์ ์ ์ฅํ๋ ๊ฒ์ด ํฌํจ๋ ์ ์์ต๋๋ค. ์ด๋ฌํ ์บ์๋ ์ ์์ ์ผ๋ก ๋ง๋ฃ๋๊ฑฐ๋ ์ฐ๊ฒฐ์ด ๋ณต๊ตฌ๋๋ฉด ์๋์ผ๋ก ์๋ก ๊ณ ์นจ๋๋๋ก ์ค์ ํ ์ ์์ต๋๋ค. ์ฌ๊ฒ์ฆ ์ค ์ค๋๋ ์บ์(stale-while-revalidate) ๋ฐ ์บ์ ์ฐ์ ์บ์(cache-first cache)์ ๊ฐ์ ๊ธฐ๋ฒ์ ๋ฐฑ์๋ ์ ๋ฐ์ดํธ๊ฐ ์ผ์ ์ค์ง๋ ๊ฒฝ์ฐ์๋ ์ฌ์ฉ์ ์ธํฐํ์ด์ค์ ์๋ต์ฑ์ ์ ์งํฉ๋๋ค.
๋ ๋ฐ์ ๋ ์ฌ์ฉ ์ฌ๋ก์์๋ ์บ์๊ฐ ๋ฐฑ๊ทธ๋ผ์ด๋ ๋๊ธฐํ์ ๊ฒฐํฉ๋ฉ๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฌ์ฉ์ ์์ ์ ๋ก์ปฌ๋ก ๋๊ธฐ์ด์ ์ ์ฅํ๊ณ ์์คํ ์ด ์์ ํ ๊ฐ๋๋๋ฉด ๋ค์ ์ ์ฉํ๋ ค๊ณ ์๋ํฉ๋๋ค. ์ด ํจํด์ ๋ชจ๋ฐ์ผ ๋ฐ ์คํ๋ผ์ธ ์ค์ฌ ์ ํ๋ฆฌ์ผ์ด์ ์์ ํํ ์ฌ์ฉ๋์ง๋ง, ์น ๊ธฐ๋ฐ ์ํฐํ๋ผ์ด์ฆ ์ํํธ์จ์ด์์๋ ์ฌ์ฉํ ์ ์์ต๋๋ค.
ํด๋ผ์ด์ธํธ ์ธก ์บ์ฑ์ ๊ฐ๋ ฅํ API ์ค๊ณ, ์บ์ ๋ฒ์ ๊ด๋ฆฌ, ๊ทธ๋ฆฌ๊ณ ์์คํ ์ ์ค์๊ฐ ์ํ๋ฅผ ๋ํ๋ด๋ ์ฌ์ฉ์ ํผ๋๋ฐฑ ๋ฉ์ปค๋์ฆ๊ณผ ํจ๊ป ์ฌ์ฉ๋ ๋ ๊ฐ์ฅ ํจ๊ณผ์ ์ ๋๋ค. ์ฌ๋ฐ๋ฅด๊ฒ ๊ตฌ์ถ๋๋ฉด, ์งง๊ณ ๊ณํ๋ ์ค๋จ ์์๋ ๋์ฑ ์์ ์ ์ธ ์ฑ๋ฅ ์ ํ๋ฅผ ์ง์ํฉ๋๋ค.
SMART TS XL ๋ค์ดํ์ ์์ด ๋ฆฌํฉํ ๋ง์ ์ํ ์๋ฃจ์ ์ผ๋ก
์๋น์ค๋ฅผ ์ค๋จํ์ง ์๊ณ ๋ณต์กํ ๊ธฐ์ ์์คํ ์ ํ๋ํํ๋ ๊ฒ์ ๋งค์ฐ ์ด๋ ค์ด ๊ณผ์ ์ด๋ฉฐ, ํนํ ๋ฉ์ธํ๋ ์, COBOL ๋๋ ๊ธด๋ฐํ๊ฒ ๊ฒฐํฉ๋ ์ ํ๋ฆฌ์ผ์ด์ ๊ณ์ธต์ผ๋ก ๊ตฌ๋๋๋ ํ๊ฒฝ์์๋ ๋์ฑ ๊ทธ๋ ์ต๋๋ค. SMART TS XL ์ด๋ฌํ ๊ณผ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ํน๋ณํ ๊ตฌ์ถ๋ ํ๋ซํผ์ ์ ๊ณตํ๋ฉฐ, ์์ ํ๊ณ ์ ๋ณด์ ๊ธฐ๋ฐํ ๋ฆฌํฉํ ๋ง์ ๊ฐ๋ฅํ๊ฒ ํ๋ ๊ณ ๊ธ ์ ์ ๋ถ์, ํ๋ฆ ๋งคํ ๋ฐ ๋ ๊ฑฐ์ ์ฝ๋ ์ธํ ๋ฆฌ์ ์ค๋ฅผ ์ ๊ณตํฉ๋๋ค.
์ ์ค์ฌ SMART TS XL ๊ฐ์ฅ ๋ณต์กํ๊ณ ๋ฌธ์ํ๋์ง ์์ ๋ ๊ฑฐ์ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ํด์๋ ์ ํํ ์ ์ด ๋ฐ ๋ฐ์ดํฐ ํ๋ฆ ๋งต์ ์์ฑํ ์ ์๋ ๊ธฐ๋ฅ์ ๋๋ค. ์ด ๋งต์ ๋ชจ๋ ์คํ ๊ฒฝ๋ก, ์ข ์์ฑ, ๊ณต์ ํ์ผ ๊ตฌ์กฐ ๋ฐ ๋์ ์ฐ๊ฒฐ์ ํ์ํ์ฌ ์ฝ๋ ๋ณ๊ฒฝ ์ ์ ์์คํ ๋์์ ์๋ฒฝํ๊ฒ ํ์ ํ ์ ์๋๋ก ํฉ๋๋ค. ์ด๋ฌํ ๋ช ํ์ฑ์ ๋ผ์ด๋ธ ์ ๋ฐ์ดํธ ์ค ๋ถ์์ฉ ์ํ์ ์ค์ด๊ณ ํ์ด ์์ ์๊ฒ ๋ฌด์ค๋จ ๋ฐฐํฌ ์ ๋ต์ ์ค๊ณํ ์ ์๋๋ก ์ง์ํฉ๋๋ค.
์ด ํ๋ซํผ์ ์๋ฎฌ๋ ์ด์ ๊ธฐ๋ฅ์ ํตํด ๊ฐ๋ฐ์๋ ํ๋ก๋์ ํ๊ฒฝ์์ ๋ณ๊ฒฝ ์ฌํญ์ ์คํํ์ง ์๊ณ ๋ ๋ณ๊ฒฝ ์ฌํญ์ ์ํฅ์ ๋ชจ๋ธ๋งํ ์ ์์ต๋๋ค. ๋ฆฌํฉํ ๋ง๋ ์ปดํฌ๋ํธ๋ ๊ฒฉ๋ฆฌ๋ ์ํ์์ ๊ฒ์ฆํ ํ ์ฐจ๋ฑ ๋ถ์์ ํตํด ์๋ณธ ๋ก์ง๊ณผ ๋น๊ตํ ์ ์์ต๋๋ค. ๋ฐ์ดํฐ ์ถ๋ ฅ, ๋ก์ง ์คํ ๋๋ ์ธ๋ถ ์ธํฐํ์ด์ฑ์ ๋ถ์ผ์น๋ ๋ณ๊ฒฝ ์ฌํญ์ด ์ ์ฉ๋๊ธฐ ํจ์ฌ ์ ์ ํ๋๊ทธ๊ฐ ์ง์ ๋ฉ๋๋ค.
SMART TS XL ๋ํ ๋ฒ์ ๊ด๋ฆฌํ ์นดํผ๋ถ ์ถ์ , ์คํค๋ง ์งํ ๋งคํ, ์ผ๊ด ์์ ์ข ์์ฑ ๋ชจ๋ธ๋ง์ ์ง์ํ๋๋ฐ, ์ด๋ ์ ๊ทธ๋ ์ด๋ ์ค์๋ ๋ฐ์ดํฐ ํ์๊ณผ ์์ ์ํ์ฑ์ด ์์ ์ ์ผ๋ก ์ ์ง๋์ด์ผ ํ๋ ์๋๋ฆฌ์ค์ ํ์์ ์ ๋๋ค. ์ด๋ฌํ ๊ธฐ๋ฅ์ ํ์ฅ-์ถ์ ๋ง์ด๊ทธ๋ ์ด์ ํจํด๊ณผ ์๋ ์ฐ๊ธฐ ๊ฒ์ฆ์ ์ง์ ์ง์ํฉ๋๋ค.
CI/CD ํ์ดํ๋ผ์ธ ๋ฐ ๊ด์ฐฐ ์คํ๊ณผ ํจ๊ป ์ฌ์ฉํ๋ฉด SMART TS XL ๊ณ ์ ๋ฐ ์ํฅ ๋ณด๊ณ ์๋ฅผ ์ ๊ณตํ์ฌ ์๋ํ๋ ๊ฒ์ฆ ๋ฐ ๋กค๋ฐฑ ํธ๋ฆฌ๊ฑฐ๋ฅผ ๊ฐํํฉ๋๋ค. ์ด๋ฅผ ํตํด ์กฐ์ง์ ๊ธฐ์กด์ ๊ฒฝ์ง๋ ํ๊ฒฝ์์ ๋ณ๋ ฌ ์คํ, ๋คํฌ ๋ก ์นญ, ์นด๋๋ฆฌ์ ๊ฒ์ฆ๊ณผ ๊ฐ์ ์ ์ง์ ์ธ ๋ฐฐํฌ ๊ธฐ์ ์ ๊ตฌํํ ์ ์์ต๋๋ค.
๊ถ๊ทน์ ์ผ๋ก, SMART TS XL ๋ ๊ฑฐ์ ์์คํ ์ ์๋ฒฝํ๊ฒ ๊ด์ฐฐ ๋ฐ ๋ฆฌํฉํ ๋ง ๊ฐ๋ฅํ ์์ฐ์ผ๋ก ์ ํํฉ๋๋ค. ๋ถ์ ์ ๋ฐ๋์ ํตํฉ ์ ์ฐ์ฑ์ ํตํด ์์ง๋์ด๋ง ํ์ ์์ ์๊ฒ ํ๋ํํ๊ณ , ์ ์ง์ ์ผ๋ก ๋ฆฌํฉํ ๋งํ๋ฉฐ, ๊ฐ์ฅ ๋ฏผ๊ฐํ ์ด์ ํ๊ฒฝ์์๋ ์ง์์ ์ธ ๊ฐ๋ ์๊ฐ์ ์ ์งํ ์ ์์ต๋๋ค.
๋ฐ์๋ฅผ ๋์น์ง ์๊ณ ์๊ฒ๊ณผ ์๊ฒ์ ์ฐ๊ฒฐํ๋ค
๋ค์ดํ์ ์๋ ๋ฆฌํฉํ ๋ง์ ๋ ์ด์ ๋จ์ํ ๊ฟ์ด ์๋๋๋ค. ๋ง์ ๋ฏธ์ ํฌ๋ฆฌํฐ์ปฌ ์์คํ ์์ ์ด๋ ํ์์ ์ธ ์๊ฑด์ ๋๋ค. COBOL ๋ฐฐ์น ์์ ์ ์คํํ๋ ๋ฉ์ธํ๋ ์๋ถํฐ ์ปจํ ์ด๋์ ๋ฐฐํฌ๋ ๋ง์ดํฌ๋ก์๋น์ค์ ์ด๋ฅด๊ธฐ๊น์ง, ์ง์์ ์ธ ๊ฐ์ฉ์ฑ์ ์ ์งํ๋ฉด์ ์งํํด์ผ ํ๋ ํ์์ฑ์ ๋ชจ๋ ์ํคํ ์ฒ์ ์ ์ฉ๋ฉ๋๋ค.
์ด ๊ธ์์๋ ๋ธ๋ฃจ-๊ทธ๋ฆฐ ๋ฐฐํฌ์ ์คํค๋ง ๋ฒ์ ๊ด๋ฆฌ๋ถํฐ ๋ถ์ฐ ์ถ์ ๊ณผ ๋ฒํผ๋ง๋ ์ฐ๊ธฐ ํ์ ์ด๋ฅด๊ธฐ๊น์ง ๋ค์ํ ์ ๋ต๊ณผ ํจํด์ ์ดํด๋ณด์์ต๋๋ค. ์ด๋ฌํ ๊ธฐ์ ์ ํ์ฉํ๋ฉด ๋น์ฆ๋์ค ์ด์ ์ค๋จ ์์ด ์์คํ ์ ์ฌ๊ตฌ์ฑํ๊ณ , ์ฑ๋ฅ์ ์ต์ ํํ๊ณ , ๊ธฐ์ ๋ถ์ฑ๋ฅผ ์ค์ด๊ณ , ์ ํ๋ฆฌ์ผ์ด์ ์ ํ๋ํํ ์ ์์ต๋๋ค.
์ด๋ฌํ ์ฑ๊ณผ๋ฅผ ๋ฌ์ฑํ๋ ค๋ฉด ๊ธฐ์ ์ ๋ ์ฐฝ์ฑ ๊ทธ ์ด์์ด ํ์ํฉ๋๋ค. ์กฐ์ง์ ์กฐ์จ, ์๊ฒฉํ ์์ง๋์ด๋ง ๊ดํ, ์ค์๊ฐ ๊ด์ฐฐ ๊ฐ๋ฅ์ฑ, ๊ทธ๋ฆฌ๊ณ ์ ์คํ ๊ณํ์ด ํ์ํฉ๋๋ค. ๋ฆฌํฉํ ๋ง์ ๋ ์ด์ ๋จ์ํ ๋ ๋์ ์ฝ๋๋ฅผ ๋ง๋๋ ๊ฒ์ด ์๋๋ผ, ๋์์๋ ๋ณํ์๋ ๋ถ๊ตฌํ๊ณ ์ค๋จ ์๋ ๊ฐ์น๋ฅผ ์ ๊ณตํ๋ ๊ฒ์ ๋๋ค.
์กฐ์ง์ด ๋์งํธ ๊ธฐ๋ฐ์ ์ง์์ ์ผ๋ก ํ์ ํจ์ ๋ฐ๋ผ, ์ ์ ํ ๋๊ตฌ์ ํจํด์ ๊ฐ์ถ ๊ธฐ์ ์ ์์ ๊ฐ์ ๊ฐ์ง๊ณ ์์ง์ด๊ณ , ๋ ๋น ๋ฅด๊ฒ ์ ์ํ๋ฉฐ, ๋ชจ๋ ๋จ๊ณ์์ ์ฌ์ฉ์์ ์ ๋ขฐ๋ฅผ ์ ์งํ ์ ์์ต๋๋ค.