๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์•„ํ‚คํ…์ฒ˜์˜ ๋งฅ๋ฝ์—์„œ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์ง‘๊ณ„๋Š” ๋А์Šจํ•˜๊ฒŒ ๊ฒฐํ•ฉ๋œ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋…๋ฆฝ์ ์ธ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค๋ฅผ ๊ฒฐํ•ฉํ•˜์—ฌ ํด๋ผ์ด์–ธํŠธ ๋˜๋Š” ์ตœ์ข… ์‚ฌ์šฉ์ž์˜ ํŠน์ • ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ถฉ์กฑํ•˜๋Š” ํ†ตํ•ฉ๋˜๊ณ  ์ผ๊ด€๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“œ๋Š” ํ”„๋กœ์„ธ์Šค๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ด ์ง‘๊ณ„ ํŒจํ„ด์€ ํŠนํžˆ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ๊ธฐ๋ฐ˜ ์•„ํ‚คํ…์ฒ˜์˜ ์ด์ ์„ ํ™œ์šฉํ•  ๋•Œ ํ™•์žฅ ๊ฐ€๋Šฅํ•˜๊ณ  ์œ ์ง€ ๊ด€๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋ฉฐ ํƒ„๋ ฅ์ ์ธ ์†Œํ”„ํŠธ์›จ์–ด ์‹œ์Šคํ…œ์„ ๊ฐœ๋ฐœํ•˜๊ณ  ์œ ์ง€ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐ ์ค‘์š”ํ•œ ์ธก๋ฉด์ž…๋‹ˆ๋‹ค.

๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์ง‘ํ•ฉ(Microservices Aggregation)์€ ํ™•์žฅ, ์œ ์ง€ ๊ด€๋ฆฌ ๋ฐ ๋ฐœ์ „์ด ์–ด๋ ค์šด ๊ธด๋ฐ€ํ•˜๊ฒŒ ์—ฐ๊ฒฐ๋œ ๋Œ€๊ทœ๋ชจ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์„ ์ˆ˜๋ฐ˜ํ•˜๋Š” ๋ชจ๋†€๋ฆฌ์‹ ์•„ํ‚คํ…์ฒ˜์˜ ํ•œ๊ณ„์— ๋Œ€ํ•œ ๋Œ€์‘์œผ๋กœ ์กด์žฌํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด์™€ ๋Œ€์กฐ์ ์œผ๋กœ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์•„ํ‚คํ…์ฒ˜๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ๋…๋ฆฝ์ ์œผ๋กœ ๊ฐœ๋ฐœ, ๋ฐฐํฌ ๋ฐ ํ™•์žฅํ•  ์ˆ˜ ์žˆ๋Š” ์ž‘๊ณ  ์ง‘์ค‘์ ์ธ ์„œ๋น„์Šค๋ฅผ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ ‘๊ทผ ๋ฐฉ์‹์„ ์ฑ„ํƒํ•จ์œผ๋กœ์จ ์กฐ์ง์€ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ์ˆ˜๋ช…์ฃผ๊ธฐ์—์„œ ๋” ๋†’์€ ์ˆ˜์ค€์˜ ์œ ์—ฐ์„ฑ๊ณผ ๋ฏผ์ฒฉ์„ฑ์„ ๋‹ฌ์„ฑํ•˜๊ณ  ํ˜์‹ ์„ ์ด‰์ง„ํ•˜๋ฉฐ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ๊ณผ ๊ฐœ์„  ์‚ฌํ•ญ์— ๋Œ€ํ•œ ์ถœ์‹œ ๊ธฐ๊ฐ„์„ ๋‹จ์ถ•ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ตœ๊ทผ ์—ฐ๊ตฌ์— ๋”ฐ๋ฅด๋ฉด ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ฑ„ํƒํ•˜๋ฉด ์กฐ์ง์ด ๊ฐœ๋ฐœ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ตœ๋Œ€ 75% ๊ฐ€์†ํ™”ํ•˜๊ณ  ๋น„์šฉ์„ ์ตœ๋Œ€ 67% ์ ˆ๊ฐํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค์˜ ์ž ์žฌ๋ ฅ์„ ์™„์ „ํžˆ ํ™œ์šฉํ•˜๋ ค๋ฉด ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค๋ฅผ ์‘์ง‘๋ ฅ ์žˆ๋Š” ์‚ฌ์šฉ์ž ์ง€ํ–ฅ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์œผ๋กœ ํ†ตํ•ฉํ•˜๋Š” ๊ธฐ์ˆ ์„ ์ˆ™๋‹ฌํ•˜๋Š” ๊ฒƒ์ด ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์ง‘๊ณ„(Microservices Aggregation)์˜ ๊ฐœ๋…์ด ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

๋†’์€ ์ˆ˜์ค€์—์„œ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์ง‘๊ณ„๋Š” ์‚ฌ์šฉ๋œ ์•„ํ‚คํ…์ฒ˜ ๊ฒฐ์ • ๋ฐ ์ „๋žต์— ๋”ฐ๋ผ ๋‹ค์–‘ํ•œ ํŒจํ„ด์œผ๋กœ ๋ถ„๋ฅ˜๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํŒจํ„ด์—๋Š” ๋‹ค์Œ์ด ํฌํ•จ๋˜์ง€๋งŒ ์ด์— ๊ตญํ•œ๋˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค.

  • API ๊ฒŒ์ดํŠธ์›จ์ด : ํด๋ผ์ด์–ธํŠธ์˜ ์š”์ฒญ์„ ์ ์ ˆํ•œ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค๋กœ ๋ผ์šฐํŒ…ํ•˜๋Š” ์ค‘์•™ ์ง„์ž…์ ์œผ๋กœ, ์ข…์ข… ์š”์ฒญ/์‘๋‹ต ๋ณ€ํ™˜, ์ธ์ฆ, ์บ์‹ฑ๊ณผ ๊ฐ™์€ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ด ํŒจํ„ด์€ ์—ฌ๋Ÿฌ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค๋ฅผ ์ฒ˜๋ฆฌํ•  ๋•Œ ํด๋ผ์ด์–ธํŠธ์˜ ๋ณต์žก์„ฑ์„ ์ค„์ด๋Š” ๋ฐ ๋„์›€์ด ๋˜๋ฉฐ ๋…ธ์ถœ๋œ API์— ๋Œ€ํ•œ ๋” ๋‚˜์€ ์ œ์–ด ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • BFF(Backend for Frontend) : ์›น, ๋ชจ๋ฐ”์ผ ๋˜๋Š” ํƒ€์‚ฌ ํ†ตํ•ฉ๊ณผ ๊ฐ™์€ ๋‹ค์–‘ํ•œ ํด๋ผ์ด์–ธํŠธ ์œ ํ˜•์˜ ํŠน์ • ์š”๊ตฌ ์‚ฌํ•ญ์— ๋งž๊ฒŒ ์กฐ์ •๋œ ํŠน์ˆ˜ ์ง‘๊ณ„ ๊ณ„์ธต์ž…๋‹ˆ๋‹ค. ์ด ํŒจํ„ด์„ ์‚ฌ์šฉํ•˜๋ฉด ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์‘๋‹ต์˜ ํšจ์œจ์ ์ธ ์กฐํ•ฉ์ด ๊ฐ€๋Šฅํ•˜๊ณ  ๊ฐ ํด๋ผ์ด์–ธํŠธ์— ์ตœ์ ํ™”๋œ API ํ‘œ๋ฉด์„ ์ œ๊ณตํ•˜์—ฌ ํ”„๋ŸฐํŠธ์—”๋“œ ๊ฐœ๋ฐœ์ž์˜ ์„ฑ๋Šฅ์„ ํ–ฅ์ƒํ•˜๊ณ  ๋ณต์žก์„ฑ์„ ์ค„์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋ฐ์ดํ„ฐ ๊ตฌ์„ฑ : ํŠน์ • ํด๋ผ์ด์–ธํŠธ ์š”์ฒญ์„ ์ถฉ์กฑํ•˜๋Š” ํ†ตํ•ฉ ๋ฐ์ดํ„ฐ์„ธํŠธ๋ฅผ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ์—ฌ๋Ÿฌ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ง‘๊ณ„ํ•˜๊ณ  ์ฒ˜๋ฆฌํ•˜๋Š” ํ”„๋กœ์„ธ์Šค๋กœ, ์ผ๋ฐ˜์ ์œผ๋กœ ์„œ๋ฒ„ ์ธก์—์„œ ์ˆ˜ํ–‰๋˜๊ฑฐ๋‚˜ ์ „์šฉ ์ง‘๊ณ„ ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค. ์ด ํŒจํ„ด์€ ๊ฐœ๋ณ„ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค๊ฐ€ ๋ถ„์‚ฐ๋œ ๋ฐฉ์‹์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์†Œ์œ ํ•˜๊ณ  ๋…ธ์ถœํ•  ๋•Œ ํŠนํžˆ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

์˜ฌ๋ฐ”๋ฅด๊ฒŒ ๊ตฌํ˜„๋˜๋ฉด ์ด๋Ÿฌํ•œ ํŒจํ„ด์€ ์ „์ฒด ์‹œ์Šคํ…œ ์•„ํ‚คํ…์ฒ˜์—์„œ ๋” ํฐ ๋ชจ๋“ˆ์„ฑ๊ณผ ์œ ์—ฐ์„ฑ์„ ํ—ˆ์šฉํ•˜์—ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ๋ฐœ์ „ํ•จ์— ๋”ฐ๋ผ ์†์‰ฌ์šด ํ™•์žฅ, ํ–ฅ์ƒ๋œ ๋‚ด๊ฒฐํ•จ์„ฑ ๋ฐ ์ƒˆ๋กœ์šด ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค์˜ ์›ํ™œํ•œ ํ†ตํ•ฉ์„ ์ด‰์ง„ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ์ด๋Ÿฌํ•œ ์ง‘๊ณ„ ํŒจํ„ด์„ ์ฑ„ํƒํ•จ์œผ๋กœ์จ ๊ฐœ๋ฐœ์ž๋Š” DDD(๋„๋ฉ”์ธ ์ค‘์‹ฌ ์„ค๊ณ„) ๋ฐ CQRS(๋ช…๋ น ์ฟผ๋ฆฌ ์ฑ…์ž„ ๋ถ„๋ฆฌ)์™€ ๊ฐ™์€ ์ตœ์‹  ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ๋ชจ๋ฒ” ์‚ฌ๋ก€๋ฅผ ํ™œ์šฉํ•˜์—ฌ ํ™•์žฅ ๊ฐ€๋Šฅํ•˜๊ณ  ์œ ์ง€ ๊ด€๋ฆฌ ๊ฐ€๋Šฅํ•˜๋ฉฐ ์ง„ํ™” ๊ฐ€๋Šฅํ•œ ์†Œํ”„ํŠธ์›จ์–ด ์‹œ์Šคํ…œ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์ง‘ํ•ฉ์˜ ๊ณผ์ œ ์ค‘ ํ•˜๋‚˜๋Š” ์•„ํ‚คํ…์ฒ˜์˜ ๋ถ„์‚ฐ ํŠน์„ฑ์œผ๋กœ ์ธํ•ด ๋ฐœ์ƒํ•˜๋Š” ๋ณต์žก์„ฑ ์ฆ๊ฐ€๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ๊ทน๋ณตํ•˜๊ธฐ ์œ„ํ•ด ์กฐ์ง์€ AppMaster ์™€ ๊ฐ™์€ ๋„๊ตฌ์™€ ํ”Œ๋žซํผ์„ ์‚ฌ์šฉํ•˜์—ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ ํ”„๋กœ์„ธ์Šค๋ฅผ ๊ฐ„์†Œํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. AppMaster ๋Š” ํ†ตํ•ฉ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ(IDE)์„ ํ†ตํ•ด ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ๊ธฐ๋ฐ˜ ์‹œ์Šคํ…œ ๊ตฌ์ถ•์„ ์ง€์›ํ•˜๋Š” ๋ฐฑ์—”๋“œ, ์›น ๋ฐ ๋ชจ๋ฐ”์ผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ๊ฐ•๋ ฅํ•œ no-code ํ”Œ๋žซํผ์ž…๋‹ˆ๋‹ค.

AppMaster ์‚ฌ์šฉํ•˜๋ฉด ๊ฐœ๋ฐœ์ž๋Š” ์‹œ๊ฐ์ ์œผ๋กœ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ(๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ)์„ ์ƒ์„ฑํ•˜๊ณ , ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์„ ์ •์˜ํ•˜๊ณ (๋น„์ฆˆ๋‹ˆ์Šค ํ”„๋กœ์„ธ์Šค ์‚ฌ์šฉ), REST API ๋ฐ WebSocket endpoints ์ƒ์„ฑํ•˜๊ณ , drag-and-drop ์œผ๋กœ UI๋ฅผ ๋””์ž์ธํ•˜๊ณ , ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ˆ˜๋ช…์ฃผ๊ธฐ์˜ ๋ชจ๋“  ์ธก๋ฉด์„ ์‰ฝ๊ฒŒ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. AppMaster ์˜ ํ˜์‹ ์ ์ธ ์ ‘๊ทผ ๋ฐฉ์‹์€ ์‹ค์ œ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ๊ณ ๊ฐ์ด ๋ฐฑ์—”๋“œ ๋ฐ ํ”„๋ŸฐํŠธ์—”๋“œ์—์„œ Go, Vue3, Kotlin, Jetpack Compose ์™€ ๊ฐ™์€ ์ตœ์ฒจ๋‹จ ๊ธฐ์ˆ ์˜ ์ด์ ์„ ๋ˆ„๋ฆด ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ํ™•์žฅ ๊ฐ€๋Šฅํ•œ ๊ณ ์„ฑ๋Šฅ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ํƒ„์ƒํ•  ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ, ์ƒ์„ฑ๋œ ์ฝ”๋“œ๋ฅผ ์‰ฝ๊ฒŒ ์œ ์ง€ ๊ด€๋ฆฌํ•˜๊ณ  ๋Š์ž„์—†์ด ๋ณ€ํ™”ํ•˜๋Š” ๋น„์ฆˆ๋‹ˆ์Šค ์š”๊ตฌ ์‚ฌํ•ญ์— ๋งž์ถฐ ๋ฐœ์ „ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฒฐ๋ก ์ ์œผ๋กœ, ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์ง‘ํ•ฉ์€ ์กฐ์ง์ด ๋…๋ฆฝ์ ์œผ๋กœ ๊ฐœ๋ฐœ, ๋ฐฐํฌ ๋ฐ ํ™•์žฅํ•  ์ˆ˜ ์žˆ๋Š” ์ž‘๊ณ  ์ง‘์ค‘์ ์ธ ์„œ๋น„์Šค๋ฅผ ํ†ตํ•ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌ์ถ•์˜ ์ด์ ์„ ์™„์ „ํžˆ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์•„ํ‚คํ…์ฒ˜ ์„ธ๊ณ„์˜ ๊ธฐ๋ณธ ๊ฐœ๋…์ž…๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ์ž๋Š” API ๊ฒŒ์ดํŠธ์›จ์ด, ํ”„๋ŸฐํŠธ์—”๋“œ์šฉ ๋ฐฑ์—”๋“œ, ๋ฐ์ดํ„ฐ ๊ตฌ์„ฑ๊ณผ ๊ฐ™์€ ์ง‘๊ณ„ ํŒจํ„ด์„ ์‚ฌ์šฉํ•˜์—ฌ ์œ ์ง€ ๊ด€๋ฆฌ ๊ฐ€๋Šฅ์„ฑ, ํ™•์žฅ์„ฑ ๋ฐ ๋ณต์›๋ ฅ์ด ๋›ฐ์–ด๋‚œ ๋ชจ๋“ˆ์‹์˜ ์œ ์—ฐํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. AppMaster ๋Š” ์กฐ์ง์ด ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์•„ํ‚คํ…์ฒ˜์— ์ ์‘ํ•  ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ ํ”„๋กœ์„ธ์Šค๋ฅผ ๊ฐ„์†Œํ™”ํ•˜์—ฌ ๋ถ„์‚ฐ ์‹œ์Šคํ…œ์—์„œ ํ”ํžˆ ๋ฐœ์ƒํ•˜๋Š” ๋ณต์žก์„ฑ์„ ๋” ์‰ฝ๊ฒŒ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ๋Š” ๊ฐ•๋ ฅํ•œ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค.