๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋ก์Šคํ”„๋ง๋ถ€ํŠธ (1)

๐‘†๐‘ข๐‘›๐‘ โ„Ž๐‘–๐‘›๐‘’ ๐‘Ž๐‘“๐‘ก๐‘’๐‘Ÿ ๐‘Ÿ๐‘Ž๐‘–๐‘›โœง

[Spring] SSE & Kafka ๋ฅผ ํ™œ์šฉํ•ด์„œ ์•Œ๋ฆผ ๊ธฐ๋Šฅ ๊ตฌํ˜„ํ•˜๊ธฐ

ํ•„์ž๋Š” ์ฒ˜์Œ์—๋Š” ์•Œ๋ฆผ ํ…Œ์ด๋ธ”์„ ๊ตฌํ˜„ํ•œํ›„ ๋Œ“๊ธ€์ด ๋‹ฌ๋ฆฌ๋ฉด ์•Œ๋ฆผํ…Œ์ด๋ธ”์— ๋ฐ์ดํ„ฐ๋กœ ์ €์žฅํ•˜์˜€๊ณ , API๊ฐ€ ํ˜ธ์ถœ๋˜๋ฉด ํ•ด๋‹น ์‚ฌ์šฉ์ž์˜ ์•Œ๋ฆผ ๋ฐ์ดํ„ฐ๋ฅผ DB์—์„œ ๊ฐ€์ ธ์˜ค๋Š” ๋ฐฉ์‹์œผ๋กœ ๊ตฌํ˜„ํ•˜์˜€๋‹ค. ํ•˜์ง€๋งŒ ์ด๋Ÿฐ polling ๋ฐฉ์‹์€ ์ •ํ•ด์ง„ ์ฃผ๊ธฐ๋งˆ๋‹ค ๋ฌด์กฐ๊ฑด ์„œ๋ฒ„์— ์š”์ฒญ์„ ๋ณด๋‚ด๊ธฐ ๋•Œ๋ฌธ์— ๋ฐ์ดํ„ฐ๊ฐ€ ์—†์„ ๋•Œ๋„ ํŠธ๋ž˜ํ”ฝ์„ ๋ฐœ์ƒ์‹œํ‚ค๋ฉฐ, ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋ฐ์ดํ„ฐ๊ฐ€ ์—…๋ฐ์ดํŠธ ๋˜์ง€์•Š๋Š”๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ๋‹ค. ๊ทธ๋ž˜์„œ ํ•„์ž๋Š” Kafka๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์•Œ๋ฆผ ์ด๋ฒคํŠธ๋ฅผ ๋น„๋™๊ธฐ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๊ณ , Server-Sent Events(SSE)๋ฅผ ํ†ตํ•ด ํด๋ผ์ด์–ธํŠธ์— ์‹ค์‹œ๊ฐ„์œผ๋กœ ์•Œ๋ฆผ์„ ์ „๋‹ฌํ•˜๋Š” ์‹œ์Šคํ…œ์„ ๊ตฌํ˜„ํ•ด๋ณผ๊ฒƒ์ด๋‹ค. ๊ฒŒ์‹œํŒ์˜ ๊ธ€์— ๋Œ“๊ธ€์ด ๋‹ฌ๋ฆฌ๋ฉด ์•Œ๋žŒ์ด ์ƒ๊ธฐ๊ณ , ์„œ๋ฒ„๋Š” Kafka๋ฅผ ํ†ตํ•ด ๋น„๋™๊ธฐ์ ์œผ๋กœ ์•Œ๋žŒ ์ด๋ฒคํŠธ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋ฉฐ, ์ฒ˜๋ฆฌ๋œ ์•Œ๋žŒ์€ SSE๋ฅผ ํ†ตํ•ด ์‹ค์‹œ๊ฐ„์œผ๋กœ ํด๋ผ์ด์–ธํŠธ์— ์ „์†กํ•˜๋Š” ..