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

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

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

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

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

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

ํŠนํžˆ ์ผ๋ถ€ ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ์˜ ๋ฏผ๊ฐํ•œ ํŠน์„ฑ์„ ๊ณ ๋ คํ•  ๋•Œ ๋ณด์•ˆ์€ WebSocket ์—ฐ๊ฒฐ์˜ ์ค‘์š”ํ•œ ์ธก๋ฉด์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด WebSocket ํ”„๋กœํ† ์ฝœ์€ TLS ์•”ํ˜ธํ™”๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ „์†ก ์ค‘์ธ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณดํ˜ธํ•˜๋Š” ๋ณด์•ˆ WebSocket ์—ฐ๊ฒฐ(WSS)์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ AppMaster์—์„œ ์ƒ์„ฑ๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ WSS ํ”„๋กœํ† ์ฝœ์„ ํ™œ์šฉํ•˜์—ฌ WebSocket ํ†ต์‹  ์ค‘์— ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ๊ณผ ๊ธฐ๋ฐ€์„ฑ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.

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

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