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

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

์šด์˜ ์ฒด์ œ๋Š” ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ, ํ”„๋กœ์„ธ์Šค ์Šค์ผ€์ค„๋ง ๋ฐ ํŒŒ์ผ ์ฒ˜๋ฆฌ์™€ ๊ฐ™์€ ๋ฐฑ์—”๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•œ ํ•„์ˆ˜ ์„œ๋น„์Šค ๋ฐ ๋ฆฌ์†Œ์Šค๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์šด์˜ ์ฒด์ œ ์„ ํƒ์€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„ฑ๋Šฅ, ์•ˆ์ •์„ฑ ๋ฐ ๋ณด์•ˆ์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๋ฏ€๋กœ ๋งค์šฐ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์— ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ์šด์˜ ์ฒด์ œ์—๋Š” Linux, Windows Server ๋ฐ macOS Server๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์–ธ์–ด ๋Ÿฐํƒ€์ž„์€ ๋ฐฑ์—”๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์†Œ์Šค ์ฝ”๋“œ ํ•ด์„ ๋ฐ ์‹คํ–‰์„ ๋‹ด๋‹นํ•˜๋Š” ๊ตฌ์„ฑ ์š”์†Œ์ž…๋‹ˆ๋‹ค. Go(Golang), Python ๋˜๋Š” Java์™€ ๊ฐ™์€ ๊ณ ๊ธ‰ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋ฅผ ๊ธฐ๋ณธ ํ•˜๋“œ์›จ์–ด์—์„œ ์ดํ•ดํ•˜๊ณ  ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๊ณ„ ์ˆ˜์ค€ ๋ช…๋ น์œผ๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์— ์‚ฌ์šฉ๋˜๋Š” ์ผ๋ถ€ ์ธ๊ธฐ ์žˆ๋Š” ์–ธ์–ด ๋Ÿฐํƒ€์ž„์€ Go ๋Ÿฐํƒ€์ž„, JavaScript์šฉ Node.js ๋ฐ JVM(Java Virtual Machine)์ž…๋‹ˆ๋‹ค.

์‹œ์Šคํ…œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ๋ฐฑ์—”๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ํ•„์ˆ˜ ๊ธฐ๋Šฅ๊ณผ ์œ ํ‹ธ๋ฆฌํ‹ฐ๋ฅผ ์ œ๊ณตํ•˜๋Š” ์‚ฌ์ „ ์ปดํŒŒ์ผ๋œ ๋ชจ๋“ˆ์ž…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—๋Š” ์ผ๋ฐ˜์ ์ธ ์ž‘์—…์„ ์œ„ํ•œ ํ‘œ์ค€ํ™”๋œ ๋ฐฉ๋ฒ•๊ณผ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•˜์—ฌ ๋ณต์žกํ•œ ์ž‘์—…์„ ๋‹จ์ˆœํ™”ํ•˜๋Š” ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ฝ”๋“œ ์Šค๋‹ˆํŽซ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์‹œ์Šคํ…œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ์šด์˜ ์ฒด์ œ ๊ณ ์œ ์ด๊ฑฐ๋‚˜ ํƒ€์‚ฌ ๊ฐœ๋ฐœ์ž๊ฐ€ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„๋Š” ๋ฐฑ์—”๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ํ˜ธ์ŠคํŒ…ํ•˜๊ณ  ๊ด€๋ฆฌํ•˜์—ฌ ์‹คํ–‰์— ํ•„์š”ํ•œ ๋ฆฌ์†Œ์Šค, ์„œ๋น„์Šค ๋ฐ ์ธํ”„๋ผ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. API๋ฅผ ํ†ตํ•ด ์›น ์„œ๋ฒ„, ํด๋ผ์ด์–ธํŠธ ์ธก ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐ ์™ธ๋ถ€ ์„œ๋น„์Šค์™€์˜ ํ†ต์‹ ์„ ์šฉ์ดํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ์„œ๋ฒ„์˜ ๋Œ€ํ‘œ์ ์ธ ์˜ˆ๋กœ๋Š” Nginx, Apache ๋ฐ Microsoft IIS๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

AppMaster ๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹ ์†ํ•˜๊ฒŒ ๊ฐœ๋ฐœ, ํ…Œ์ŠคํŠธ ๋ฐ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ๋Š” ์ง๊ด€์ ์ธ ๋„๊ตฌ ๋ฐ ๋ฆฌ์†Œ์Šค ์„ธํŠธ๋ฅผ ์ œ๊ณตํ•˜์—ฌ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์„ ๊ฐ„์†Œํ™”ํ•˜๋Š” ๊ฐ•๋ ฅํ•œ no-code ํ”Œ๋žซํผ์ž…๋‹ˆ๋‹ค. AppMaster ํ†ตํ•ด ๊ฐœ๋ฐœ์ž๋Š” ๋ฐ์ดํ„ฐ ๋ชจ๋ธ(๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ)์„ ์‹œ๊ฐ์ ์œผ๋กœ ์ƒ์„ฑํ•˜๊ณ , BP Designer๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์„ ์„ค๊ณ„ํ•˜๊ณ (๋น„์ฆˆ๋‹ˆ์Šค ํ”„๋กœ์„ธ์Šค๋ฅผ ํ†ตํ•ด) ๋ฐฑ์—”๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์œ„ํ•œ REST API ๋ฐ WSS endpoints ์ •์˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. AppMaster ํ”Œ๋žซํผ์„ ์‚ฌ์šฉํ•˜๋ฉด ๊ฐœ๋ฐœ ํ”„๋กœ์„ธ์Šค๋ฅผ ๊ธฐ์กด ๊ฐœ๋ฐœ ๋ฐฉ๋ฒ•๋ณด๋‹ค ์ตœ๋Œ€ 10๋ฐฐ ๋” ๋น ๋ฅด๊ณ  3๋ฐฐ ๋” ๋น„์šฉ ํšจ์œจ์ ์œผ๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

AppMaster ์‚ฌ์šฉ์˜ ์ฃผ์š” ์ด์  ์ค‘ ํ•˜๋‚˜๋Š” ๋ฐฑ์—”๋“œ ์„œ๋น„์Šค์šฉ Go(Golang), ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์šฉ Vue3 ํ”„๋ ˆ์ž„์›Œํฌ, Android์šฉ Kotlin ๋ฐ Jetpack Compose ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” AppMaster ์˜ ์„œ๋ฒ„ ๊ธฐ๋ฐ˜ ํ”„๋ ˆ์ž„์›Œํฌ์™€ ๊ฐ™์€ ๊ธฐ์กด ๊ธฐ์ˆ ์„ ์‚ฌ์šฉํ•˜์—ฌ ์‹ค์ œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. iOS์šฉ SwiftUI. ๋˜ํ•œ AppMaster ์š”๊ตฌ ์‚ฌํ•ญ์ด ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋‹ค์‹œ ์ƒ์„ฑํ•˜๋ฏ€๋กœ ์ƒ์„ฑ๋œ ์ฝ”๋“œ์—์„œ ๊ธฐ์ˆ ์  ๋ถ€์ฑ„๊ฐ€ ์ „ํ˜€ ๋ฐœ์ƒํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๊ฐœ๋ฐœ์ž๋Š” ์ง„ํ™”ํ•˜๋Š” ๋น„์ฆˆ๋‹ˆ์Šค ์š”๊ตฌ ์‚ฌํ•ญ์„ ์‹ ์†ํ•˜๊ฒŒ ์ถฉ์กฑํ•˜๋„๋ก ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์—…๋ฐ์ดํŠธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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