ํ™ˆ์œ ํŠœ๋ธŒ๋ธ”๋กœ๊ทธTop 10
๋‚ด ํ”„๋กœํ•„

๋ฐ๋ธŒํ—ˆ๋ธŒ ์•ˆ๋‚ด
์†Œ๊ฐœ์—…๋ฐ์ดํŠธ ์†Œ์‹

๋ฐ๋ธŒํ—ˆ๋ธŒ ์ปค๋ฎค๋‹ˆํ‹ฐ

๐Ÿ”ฅ Kafka Streams for Beginners | What & Why Kafka Streams Explained @Javatechie

Java Techie

2025. 10. 18.

0ํšŒ

#backend
#db
  • ์นดํ”„์นด ์ŠคํŠธ๋ฆผ์ฆˆ ์‹œ๋ฆฌ์ฆˆ ์‹œ์ž‘: ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ํŒŒ์ดํ”„๋ผ์ธ ๊ตฌ์ถ• ๋ฐ ์Šคํ”„๋ง ๋ถ€ํŠธ ์˜ˆ์ œ๋ฅผ ํ†ตํ•œ ์นดํ”„์นด ์ŠคํŠธ๋ฆผ์ฆˆ์˜ ์ดํ•ด์™€ ํ™œ์šฉ๋ฒ•์„ ๋‹ค๋ฃจ๋Š” ์ƒˆ๋กœ์šด ์‹œ๋ฆฌ์ฆˆ๊ฐ€ ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค. ๐Ÿš€
  • ๊ธฐ์กด ์นดํ”„์นด์˜ ํ•œ๊ณ„: ์นดํ”„์นด๋Š” ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ๊ฐ„ ๋ฐ์ดํ„ฐ ์ด๋™์— ๋›ฐ์–ด๋‚˜์ง€๋งŒ, ์ผ๋ฐ˜ ์นดํ”„์นด ์ปจ์Šˆ๋จธ๋Š” ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•˜์ง€ ๋ชปํ•ด ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ ์ง‘๊ณ„, ๋ณ€ํ™˜, ๋ณด๊ฐ•์— ์–ด๋ ค์›€์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๐Ÿšง
  • ์‹ค์‹œ๊ฐ„ ๋Œ€์‹œ๋ณด๋“œ ์˜ˆ์‹œ: ์Œ์‹ ๋ฐฐ๋‹ฌ ์•ฑ์˜ ์‹ค์‹œ๊ฐ„ ์ฃผ๋ฌธ ํ˜„ํ™ฉ ๋Œ€์‹œ๋ณด๋“œ(ํ™œ์„ฑ, ์ง€์—ฐ, ๋ฐฐ๋‹ฌ ์™„๋ฃŒ ๊ฑด์ˆ˜) ๊ตฌ์ถ• ์‹œ, ์ผ๋ฐ˜ ์ปจ์Šˆ๋จธ๋กœ๋Š” ์ด์ „ ์ด๋ฒคํŠธ๋ฅผ ๊ธฐ์–ตํ•˜์ง€ ๋ชปํ•ด ๋ณต์žกํ•œ ๋กœ์ง๊ณผ ์ˆ˜๋™ ๊ด€๋ฆฌ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ“Š
  • ์ผ๋ฐ˜ ์ปจ์Šˆ๋จธ์˜ ๋ฌธ์ œ์ : ์ƒํƒœ ์—†์Œ(stateless), ์ˆ˜๋™ DB ์—…๋ฐ์ดํŠธ, ์บ์‹ฑ, ์˜คํ”„์…‹ ๊ด€๋ฆฌ, ์Šค๋ ˆ๋“œ ์•ˆ์ „์„ฑ, ์Šค์ผ€์ผ๋ง ๋“ฑ ์‹ค์‹œ๊ฐ„ ์ง‘๊ณ„ ๋ฐ ๋ณด๊ฐ•์„ ์œ„ํ•œ ๋งŽ์€ ์ถ”๊ฐ€ ์ฝ”๋“œ์™€ ๋ณต์žก์„ฑ์„ ์•ผ๊ธฐํ•ฉ๋‹ˆ๋‹ค. ๐Ÿคฏ
  • ์นดํ”„์นด ์ŠคํŠธ๋ฆผ์ฆˆ์˜ ์—ญํ• : ํ”„๋กœ๋“€์„œ๊ฐ€ ํ† ํ”ฝ์— ์ด๋ฒคํŠธ๋ฅผ ๋ณด๋‚ด๋ฉด, ์นดํ”„์นด ์ŠคํŠธ๋ฆผ์ฆˆ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ด๋ฅผ ๊ตฌ๋…ํ•˜์—ฌ ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌ, ์ง‘๊ณ„, ๋ณด๊ฐ•ํ•œ ํ›„ ๋ณ€ํ™˜๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค์‹œ ํ† ํ”ฝ์— ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค. โœจ
  • ์นดํ”„์นด ์ŠคํŠธ๋ฆผ์ฆˆ์˜ ๋‹จ์ˆœ์„ฑ: ๋ณต์žกํ•œ ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ ๋ณด๊ฐ• ๋กœ์ง์„ ๋‹จ ์„ธ ๋‹จ๊ณ„(์ฝ๊ธฐ, ์ฒ˜๋ฆฌ/๋ณด๊ฐ•, ์“ฐ๊ธฐ)๋กœ ๊ฐ„์†Œํ™”ํ•˜์—ฌ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๐ŸŽฏ
  • ๋‚ด๋ถ€ ๊ตฌ์กฐ (ํ† ํด๋กœ์ง€): ์†Œ์Šค ํ”„๋กœ์„ธ์„œ(์ฝ๊ธฐ), ์ŠคํŠธ๋ฆผ ํ”„๋กœ์„ธ์„œ(์ฒ˜๋ฆฌ/๋ณด๊ฐ•), ์‹ฑํฌ ํ”„๋กœ์„ธ์„œ(์“ฐ๊ธฐ)๋กœ ๊ตฌ์„ฑ๋œ ํ† ํด๋กœ์ง€(Topology)๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ ํ๋ฆ„์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ—บ๏ธ
  • ๋‘ ๊ฐ€์ง€ API ์ œ๊ณต:
    • Stream DSL (๊ณ ์ˆ˜์ค€ API): ์„ ์–ธ์  ๋ฐฉ์‹์œผ๋กœ '๋ฌด์—‡์„ ํ• ์ง€' ์ •์˜ํ•˜๋ฉฐ, ์นดํ”„์นด ์ŠคํŠธ๋ฆผ์ฆˆ๊ฐ€ '์–ด๋–ป๊ฒŒ ํ• ์ง€'๋ฅผ ์ฒ˜๋ฆฌํ•˜์—ฌ ๊ฐœ๋ฐœ ํŽธ์˜์„ฑ์„ ๋†’์ž…๋‹ˆ๋‹ค. (KStream, KTable ๋“ฑ ํ™œ์šฉ) ๐Ÿ› ๏ธ
    • Processor API (์ €์ˆ˜์ค€ API): ๋” ๋งŽ์€ ์ œ์–ด๊ถŒ์„ ์ œ๊ณตํ•˜์ง€๋งŒ, ๋” ๋งŽ์€ ์ƒ์šฉ๊ตฌ ์ฝ”๋“œ์™€ ์ˆ˜๋™ ์„ค์ •์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. โš™๏ธ
  • ํ–ฅํ›„ ํ•™์Šต ๊ณ„ํš: ๋‹ค์Œ ์˜์ƒ์—์„œ๋Š” ์Šคํ”„๋ง ๋ถ€ํŠธ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์นดํ”„์นด ์ŠคํŠธ๋ฆผ์ฆˆ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์„ค์ •๋ถ€ํ„ฐ ๋ผ์ด๋ธŒ ๋ฐ์ดํ„ฐ ๋ณ€ํ™˜๊นŒ์ง€ ๋‹จ๊ณ„๋ณ„๋กœ ์ง์ ‘ ๊ตฌ์ถ•ํ•˜๋Š” ์‹ค์Šต์„ ์ง„ํ–‰ํ•  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. ๐Ÿง‘โ€๐Ÿ’ป

Recommanded Videos