์ ๋ต์ ์ธ ๋ชจ๋๋ฆฌ์ค์์ ๋ง์ดํฌ๋ก์๋น์ค๋ก์ ์ ํ. ๊ฒ์ฆ๋ ํจํด๊ณผ ์ ์ง์ ์ธ ์ ๊ทผ ๋ฐฉ์์ ์ฌ์ฉํ์ฌ ๋ชจ๋๋ฆฌ์ค ์ ํ๋ฆฌ์ผ์ด์ ์ ํ์ฅ ๊ฐ๋ฅํ ๋ง์ดํฌ๋ก์๋น์ค๋ก ๋ถํดํฉ๋๋ค.
์์ํ๊ธฐ
๋ชจ๋๋ฆฌ์ค๋ฅผ ๋ง์ดํฌ๋ก์๋น์ค๋ก ๋ถํดํ๋ ๊ฒ์ ๊ธฐ์ ์ด ์ํํ ์ ์๋ ๊ฐ์ฅ ์ํ ๋ถ๋ด์ด ํฌ๋ฉด์๋ ๊ฐ์ฅ ๋ณด์์ด ํฐ ์ํคํ ์ฒ ๋ณ๊ฒฝ ์ค ํ๋์ ๋๋ค. ์ ํฌ๋ ์์ญ ๊ฐ์ ํ์ด ์ด ์ ํ์ ์ฑ๊ณต์ ์ผ๋ก ์ํํ๋๋ก ์๋ดํ์ต๋๋ค โ ์ฌ๋ฐ๋ฅธ ์๋น์ค ๊ฒฝ๊ณ๋ฅผ ์๋ณํ๊ณ , ๋ฐ์ดํฐ ์์ ๊ถ ๋ฌธ์ ๋ฅผ ๊ด๋ฆฌํ๋ฉฐ, ํ๋ก๋์ ์ํฌ๋ก๋์ ์ง์ฅ์ ์ฃผ์ง ์๊ณ ๋ง์ด๊ทธ๋ ์ด์ ์ ์คํํ์ต๋๋ค.
์ ํฌ๋ ์ค์ผ์คํธ๋ ์ด์ ์ ์ํด Kubernetes๋ฅผ, ์ด๋ฒคํธ ์คํธ๋ฆฌ๋ฐ์ ์ํด Apache Kafka๋ฅผ, ์๋น์ค ๋ฉ์๋ฅผ ์ํด Istio ๋๋ Linkerd๋ฅผ, GitOps ๋ฐฐํฌ๋ฅผ ์ํด ArgoCD๋ฅผ ์ฌ์ฉํฉ๋๋ค. ๊ฐ ์๋น์ค๋ ๋ ๋ฆฝ์ ์ธ CI/CD, ์์ฒด ๋ฐ์ดํฐ์คํ ์ด, ๊ทธ๋ฆฌ๊ณ Jaeger ๋ฐ Prometheus๋ฅผ ์ด์ฉํ ํฌ๊ด์ ์ธ ๋ถ์ฐ ํธ๋ ์ด์ฑ์ ๊ฐ์ง๋๋ค.
๋ชจ๋๋ฆฌ์ค๊ฐ ํ ์์จ์ฑ, ๋ฐฐํฌ ๋น๋ ๋๋ ์์คํ ํ์ฅ์ฑ์ ์ ํํ๋ ์์ง๋์ด๋ง ์กฐ์ง์ ์ํ ๊ฒ์ ๋๋ค. ๋ฆด๋ฆฌ์ค์ ํ ๊ฐ ์กฐ์ ์ด ํ์ํ๊ฑฐ๋, ๋จ์ผ ๊ตฌ์ฑ ์์์ ๋ถํ๊ฐ ์ ์ฒด ์์คํ ์ ์ํฅ์ ๋ฏธ์น๊ฑฐ๋, ์๋ก์ด ๊ฐ๋ฐ์๋ฅผ ์จ๋ณด๋ฉํ๋ ๋ฐ ๋ช ๋ฌ์ด ๊ฑธ๋ฆฐ๋ค๋ฉด โ ์ด์ ๋ถํดํ ๋์ ๋๋ค.
๋ชจ๋๋ฆฌ์ค์ ๋๋ฉ์ธ์ ๋ถ์ํ๊ณ , ๊ฒฝ๊ณ ์ปจํ ์คํธ๋ฅผ ์๋ณํ๋ฉฐ, ๊ตฌ์ฑ ์์ ๊ฐ์ ๊ฒฐํฉ์ ๋งคํํฉ๋๋ค.
๋ชฉํ ์๋น์ค ์ํคํ ์ฒ๋ฅผ ์ค๊ณํ๊ณ , ๋ฐ์ดํฐ ๋ถํ ์ ๊ณํํ๋ฉฐ, ๋น์ฆ๋์ค ๊ฐ์น์ ๋ฐ๋ผ ์ถ์ถ ์์๋ฅผ ์ฐ์ ์์ํํฉ๋๋ค.
๊ณต์ ์ธํ๋ผ โ Kubernetes, CI/CD ํ ํ๋ฆฟ, ์๋น์ค ๋ฉ์ ๋ฐ ๊ฐ์์ฑ ์คํ์ ๊ตฌ์ถํฉ๋๋ค.
์ํฐ-์ฝ๋ฝ์ ๋ ์ด์ด๋ฅผ ๊ตฌํํ๊ณ ํธ๋ํฝ์ ์ ์ง์ ์ผ๋ก ๋ผ์ฐํ ํ๋ฉด์ ์๋น์ค๋ฅผ ํ ๋ฒ์ ํ๋์ฉ ์ถ์ถํฉ๋๋ค.
์๋น์ค ์์ ๊ถ, ์จ์ฝ(on-call) ๊ดํ, SLO ์ถ์ ๋ฐ ์ง์์ ์ธ ์ํคํ ์ฒ ๊ฑฐ๋ฒ๋์ค๋ฅผ ์๋ฆฝํฉ๋๋ค.
์์ ํ๊ณ ์ ์ง์ ์ธ ๋ฐฉ์์ผ๋ก ๋ชจ๋๋ฆฌ์ค๋ฅผ ํ์ฅ ๊ฐ๋ฅํ๊ณ ๋ ๋ฆฝ์ ์ผ๋ก ๋ฐฐํฌ ๊ฐ๋ฅํ ์๋น์ค๋ก ์ ํํ๋ ๊ฒฝ๋ก๋ฅผ ์ค๊ณํด ๋ด ์๋ค.
์ ํฌ๋ domain-driven design์ ์ฌ์ฉํ์ฌ ๋ฐ์ด๋๋ ์ปจํ ์คํธ๋ฅผ ์๋ณํ๊ณ , ๊ฐ์ฅ ์ ๊ฒ ๊ฒฐํฉ๋ ๋ชจ๋๋ถํฐ ์ ์ง์ ์ผ๋ก ์๋น์ค๋ฅผ ์ถ์ถํ๋ฉฐ, ๋ผ์ฐํ ์ ์ํด API ๊ฒ์ดํธ์จ์ด๋ฅผ ๊ตฌํํ๊ณ , ์ ์ฒด ์ ํ ๊ณผ์ ์์ ํ์ ํธํ์ฑ์ ์ ์งํฉ๋๋ค.
MicrocosmWorks์ Monolith์์ microservices๋ก์ ๋ง์ด๊ทธ๋ ์ด์ ์ ์๊ฐ๋น $25-$50์ ๋น์ฉ์ผ๋ก ์ฑ ์ ๋ฉ๋๋ค. ์ด ํฌ์ ๋น์ฉ์ Monolith์ ๊ท๋ชจ, ๊ฒฐํฉ ๋ณต์ก์ฑ ๋ฐ ์ถ์ถํ ์๋น์ค์ ๊ฐ์์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋๋ค.
ํ์๋ผ์ธ์ ๋ชจ๋๋ฆฌ์์ ํฌ๊ธฐ์ ๋ณต์ก์ฑ์ ๋ฐ๋ผ ํฌ๊ฒ ๋ฌ๋ผ์ง๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ์ฒซ ๋ฒ์งธ ์๋น์ค๋ 4-8์ฃผ ๋ด์ ์ถ์ถํ๋ฉฐ, ์ ์ฒด ๋ง์ด๊ทธ๋ ์ด์ ์ 6-18๊ฐ์์ด ์์๋ฉ๋๋ค. ๋น์ฌ์ ์ ์ง์ ์ ๊ทผ ๋ฐฉ์์ ์ ์ฒด ์ฌ์์ฑ์ด ์๋ ๊ฐ ๋จ๊ณ์์ ๊ฐ์น๋ฅผ ์ ๊ณตํฉ๋๋ค.
์์ฒญ-์๋ต ํจํด์๋ ๋๊ธฐ์ REST ๋๋ gRPC๋ฅผ ๊ตฌํํ๋ฉฐ, ์ด๋ฒคํธ ๊ธฐ๋ฐ ํต์ ์ ์ํด์๋ Kafka ๋๋ RabbitMQ๋ฅผ ํตํ ๋น๋๊ธฐ ๋ฉ์์ง์ ์ฌ์ฉํฉ๋๋ค. ๋ถ์ฐ ํธ๋์ญ์ ์๋ saga ํจํด์ ์ฌ์ฉํ๊ณ , ์ธ๋ถ ๋ผ์ฐํ ์ ์ํด์๋ API gateways๋ฅผ ํ์ฉํฉ๋๋ค.
์ ํฌ๋ ์๋น์ค๋ณ ๋ฐ์ดํฐ๋ฒ ์ด์ค ํจํด์ ๋ฐ๋ฅด๋ฉฐ, ์๋น์ค๋ณ ํ ์ด๋ธ์ ์ ์ฉ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ก ์ ์ง์ ์ผ๋ก ์ถ์ถํฉ๋๋ค. ์ ํ ๊ธฐ๊ฐ ๋์, ๋ฐ์ดํฐ ์ ๊ทผ์ ์ ์งํ๋ฉด์ ๊ณต์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ข ์์ฑ์ ์ ์ง์ ์ผ๋ก ๋ถ๋ฆฌํ๊ธฐ ์ํด ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ทฐ, CDC ๋๋ API ํธ์ถ์ ์ฌ์ฉํฉ๋๋ค.