Kafka๋ž€?

์‹ค์‹œ๊ฐ„ ์ŠคํŠธ๋ฆฌ๋ฐ ํ”Œ๋žซํผ

Posted by Bangjinhyuk on April 18, 2022 · 1 min read

์‹ค์‹œ๊ฐ„ ์ŠคํŠธ๋ฆฌ๋ฐ ํ”Œ๋žซํผ

Streaming์ด๋ž€

๋ฐ์ดํ„ฐ๊ฐ€ ๋“ค์–ด์˜ฌ๋•Œ๋งˆ๋‹ค ํ•˜๋‚˜ํ•˜๋‚˜ ์ฒ˜๋ฆฌ๋ฅผ ํ•˜๋Š”๊ฒƒ

๋ฐฐ์น˜ ์‹œ์Šคํ…œ๋„ ์‹ค์‹œ๊ฐ„์ฒ˜๋Ÿผ ๋ณด์ด์ง€๋งŒ ์ดˆ๋‹จ์œ„๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ชจ์•„์„œ ์ฒ˜๋ฆฌํ•˜๋ฏ€๋กœ ๋„ค์ดํ‹ฐ๋ธŒ ์Šคํ”„๋ฆฌ๋ฐ์ด๋ผ๊ณ  ๋ณผ์ˆ˜๋Š” ์—†๋‹ค.

##

Apach Kafka

์˜คํ”ˆ์†Œ์Šค ๋ถ„์‚ฐ ์ด๋ฒคํŠธ ์ŠคํŠธ๋ฆฌ๋ฐ ํ”Œ๋žซํผ

  • Publish/Subscribe Messaging ๊ธฐ๋ฐ˜
    • ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋‘๋Œ€์˜ ํ”„๋ก ํŠธ ์„œ๋ฒ„์™€ ํ”„๋ก ํŠธ์—์„œ ๋ฐœ์ƒํ•˜๋Š” ์ง€ํ‘œ๋ฅผ ์ˆ˜์ง‘ํ•˜๋Š” ์„œ๋ฒ„๊ฐ€ ์žˆ๋‹ค. ์ด๋•Œ์—๋Š” ๋‘๋Œ€์˜ ํ”„๋ก ํŠธ ์„œ๋ฒ„์—์„œ ๋ฐœ์ƒํ•˜๋Š” ์ด๋ฒคํŠธ๋“ค์„ ํ•˜๋‚˜์˜ ์„œ๋ฒ„์—์„œ ๋ฐ›์œผ๋ฉด ๋œ๋‹ค.

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

    • ๊ทธ๋ž˜์„œ ์ค‘์•™์— Pub/Sub ๋ฉ”์‹œ์ง• ์‹œ์Šคํ…œ์„ ๋งŒ๋“ค๊ฒŒ ๋œ๋‹ค. ๊ฐ๊ฐ์˜ ์„œ๋ฒ„(ํผ๋ธ”๋ฆฌ์…”)๋“ค์ด ๋ฐœ์ƒํ•˜๋Š” ์ง€ํ‘œ๋“ค์„ ๋˜์ง€๋ฉด ๊ตฌ๋…ํ•˜๊ณ  ์žˆ๋Š” ๋ถ„์„, ๋ชจ๋‹ˆํ„ฐ๋ง ๋„๊ตฌ๋“ค์ด ๋ฐ›์•„๊ฐ€๊ฒŒ ๋œ๋‹ค.

    • ๋” ๋‚˜์•„๊ฐ€ ๊ผญ ์ง€ํ‘œ ๋ฟ๋งŒ์ด ์•„๋‹Œ ๋กœ๊น…๊ณผ ํŠธ๋ž™ํ‚น๋“ฑ ๋‹ค๋ฅธ ์ด๋ฒคํŠธ์ฒ˜๋ฆฌ ํ•ด์•ผ ํ• ๊ฒƒ๋„ ์ƒ๊ธด๋‹ค. ์ด๋•Œ ๋ฉ”์‹œ์ง• ์‹œ์Šคํ…œ์„ ๊ฐ๊ฐ ๋”ฐ๋กœ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋งŒ๋“ค์–ด์•ผ ํ• ๊นŒ?

    • ์•„๋‹ˆ๋‹ค. ๋‹ค ํ†ตํ•ฉํ•œ ์‹œ์Šคํ…œ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค. ๊ทธ๊ฒƒ์ด ์นดํ”„์นด๋‹ค.

  • ์นดํ”„์นด๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋‘๊ฐ€์ง€ ๋ชจ๋ธ์„ ํ•ฉ์นœ๊ฒƒ์ด๋‹ค.
    • ๋ฐ์ดํ„ฐ ํ ์ฒ˜๋ฆฌ ๋ชจ๋ธ - Pruoducer๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ๋˜์ง€๋ฉด ๊ทธ๊ฒƒ์„ ํ์— ๋„ฃ์–ด๋‘๊ณ  ์—ฌ๋Ÿฌ๊ฐœ์˜ Consumer๋“ค์ค‘ ๊ฐ Consumer๊ฐ€ ํ•œ๋ฒˆ์”ฉ๋งŒ ์ฝ์–ด ์ฒ˜๋ฆฌํ•˜๋Š”๊ฒƒ

    • Publish-Subscribe ๋ชจ๋ธ - ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์ด๋ฒคํŠธ๋“ค์ด ์Ÿ์•„์งˆ๋•Œ ๊ทธ ์ด๋ฒคํŠธ๋“ค์„ ๊ตฌ๋…ํ•˜๋Š” Consumer๊ฐ€ ์—ฌ๋Ÿฌ๊ฐœ ์ผ์ˆ˜๋„ ํ•˜๋‚˜์ผ์ˆ˜๋„ ์žˆ๋Š” ๊ตฌ์กฐ

๋”ฐ๋ผ์„œ ์นดํ”„์นด๋Š” ๋งค์šฐ ๋น ๋ฅด๊ณ , ๋ฌดํ•œ์œผ๋กœ ํ™•์žฅ์ด ๊ฐ€๋Šฅํ•˜๋ฉฐ ์ „๋‹ฌ๋˜๋Š” ์ด๋ฒคํŠธ ์ŠคํŠธ๋ฆผ์„ ๋‚ด๋ถ€์— ๋ถ„์‚ฐํ•ด์„œ ์•ˆ์ „ํ•˜๊ฒŒ ์ €์žฅํ•˜๋ฉฐ ๊ณ ๊ฐ€์šฉ์„ฑ์ด๋‹ค. ์—ฌ๋Ÿฌ ํ”„๋กœ๊ทธ๋žจ์—์„œ ์ ‘๊ทผ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

Kafka Use Cases

  • ์‹ค์‹œ๊ฐ„ ์›น์˜ ์ง€ํ‘œ, ๋กœ๊ทธ
  • ๋ฉ”์„ธ์ง•์šฉ
  • ๋ฐ์ดํ„ฐ๊ฐ€ ๋ณ€๊ฒฝ๋˜๋Š” ๊ฒƒ์„ ์ŠคํŠธ๋ฆผ์œผ๋กœ ๋ฐ›์•„์˜ด

๋งจ์œ„๋กœ๐Ÿ‘†