Kafka Producer, Consumer

์ตœ์ค€ํ˜ธยท2022๋…„ 3์›” 14์ผ
0

Microservice Architecture

๋ชฉ๋ก ๋ณด๊ธฐ
25/32
post-thumbnail

๐Ÿ”จKafka ์„ค์น˜

https://kafka.apache.org/downloads ์— ์ ‘๊ทผํ•˜์—ฌ ๋‹ค์šด ๋ฐ›์œผ๋ฉด ๋œ๋‹ค.

์••์ถ•์„ ํ’€๊ณ  bin ๋‚ด๋ถ€์— ํŒŒ์ผ์„ ํ™•์ธํ•˜๋ฉด ์—ฌ๋Ÿฌ Shell Script๊ฐ€ ์กด์žฌํ•œ๋‹ค.
window์˜ ๊ฒฝ์šฐ windows ๋‚ด๋ถ€์˜ bat ํŒŒ์ผ์„ ์‹คํ–‰ํ•˜๋ฉด ๋œ๋‹ค.

window์˜ ๊ฒฝ์šฐ kafka 3.0 ์ด์ƒ ๋ฒ„์ „์—์„œ๋Š” ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค 2.8.1 ๋ฒ„์ „์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ์ถ”์ฒœํ•œ๋‹ค.

๐Ÿ‘Kafka ์‹คํ–‰ํ•ด๋ณด๊ธฐ

./bin/windows/zookeeper-server-start.bat ./config/zookeeper.properties

/ํ”„๋กœ์ ํŠธ๊ฒฝ๋กœ/kafkaํด๋”์—์„œ ๋ช…๋ น์ฐฝ์„ ํ‚จ ํ›„ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜๋ฉด


์ •์ƒ์ ์œผ๋กœ zookeaper server๊ฐ€ ์‹คํ–‰๋˜์—ˆ๋‹ค.

zookeaper๋Š” kafka์— ์ฝ”๋””๋„ค์ดํ„ฐ ๊ฐœ๋…์ธ๋ฐ. ๋‚˜๋„ ์ž˜ ๋ชจ๋ฅด๋‹ˆ ์ผ๋‹จ ๋”ฐ๋ผ๊ฐ€๋ณด์ž

./bin/windows/kafka-server-start.bat ./config/server.properties

๋‹ค๋ฅธ ๋ช…๋ น์ฐฝ์—์„œ ํ•ด๋‹น ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜์ž

kafka server๋„ ์ •์ƒ์ ์œผ๋กœ ์‹คํ–‰๋˜์—ˆ๋‹ค.

๐Ÿ‘‰Topic ๋งŒ๋“ค๊ธฐ

./bin/windows/kafka-topics.bat --bootstrap-server localhost:9092 --list

๋ช…๋ น์–ด๋Š” ํ˜„์žฌ Topic ๋ฆฌ์ŠคํŠธ๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ๊ฒƒ์ธ๋ฐ ํ˜„์žฌ ์šฐ๋ฆฌ๋Š” ๋งŒ๋“  Topic์ด ์—†์–ด์„œ ๋นˆ๋‚ด์šฉ์œผ๋กœ ์ข…๋ฃŒ๋˜์—ˆ๋‹ค.

๊ทธ ํ›„

./bin/windows/kafka-topics.bat --bootstrap-server localhost:9092 --create --topic quickstart-events --partitions 1

Topic์„ quickstart-events๋ผ๋Š” ์ด๋ฆ„์œผ๋กœ ๋งŒ๋“ค๋ฉฐ partition์€ 1๋กœ ๋‚˜๋ˆ„์–ด ์ƒ์„ฑํ•œ๋‹ค๋Š” ์˜๋ฏธ์˜ ๋ช…๋ น์–ด์ด๋‹ค. ์ •์ƒ์ ์œผ๋กœ ์‹คํ–‰๋˜๋ฉด ํ™”๋ฉด๊ณผ ๊ฐ™์ด Created topic์ด ์ถœ๋ ฅ๋œ๋‹ค.

๊ทธ ํ›„ ๋‹ค์‹œ list ๋ช…๋ น์–ด๋ฅผ ์ฃผ๋ฉด ๋นˆ์นธ์ด ์•„๋‹Œ topic์„ ์ถœ๋ ฅํ•˜๊ณ 

./bin/windows/kafka-topics.bat --bootstrap-server localhost:9092 --describe --topic quickstart-events

list๋Œ€์‹  describe ์˜ต์…˜์„ ์ฃผ๋ฉด

topic์˜ ์ƒ์„ธ ๋‚ด์šฉ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

๐Ÿ‘‰Producer, Consumer ์‚ฌ์šฉํ•˜๊ธฐ

./bin/windows/kafka-console-producer.bat --broker-list localhost:9092 --topic quickstart-events

ํ•˜๋‚˜์˜ ๋ช…๋ น์ฐฝ์—์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์ด Producer๋ฅผ ์‹คํ–‰ํ•˜๋ฉฐ topic์€ quickstart-events๋กœ ์ง€์ •ํ•œ๋‹ค.

./bin/windows/kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic quickstart-events --from-beginning

๋˜ ๋‹ค๋ฅธ ๋ช…๋ น์ฐฝ์—์„œ๋Š” Consumer์— ์‹คํ–‰ํ•˜๊ณ  ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ topic์€ quickstart-events๋กœ ์ง€์ •ํ•œ๋‹ค.

๊ทธ๋Ÿผ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ช…๋ น์ฐฝ๋“ค์ด ์‹คํ–‰๋˜๊ณ  ์žˆ์œผ๋ฉฐ

๋‹ค์Œ๊ณผ ๊ฐ™์ด Producer์—์„œ ์ž…๋ ฅ๋˜๋Š” ๋‚ด์šฉ๋“ค์ด ๊ทธ๋Œ€๋กœ Consumer์— ์ „๋‹ฌ๋˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

์ƒˆ๋กœ์šด Consumer๋ฅผ ์œ„์˜ ๋ช…๋ น์–ด๋กœ ์‹คํ–‰ํ•˜๋ฉด

--from-beginning์˜ ์˜ต์…˜์œผ๋กœ ์ธํ•ด ๋˜‘๊ฐ™์€ ํ…์ŠคํŠธ๊ฐ€ ๊ทธ๋Œ€๋กœ ์ „๋‹ฌ๋œ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

profile
์ฝ”๋”ฉ์„ ๊น”๋”ํ•˜๊ฒŒ ํ•˜๊ณ  ์‹ถ์–ดํ•˜๋Š” ์ดˆ๋ณด ๊ฐœ๋ฐœ์ž (ํŽธํ•˜๊ฒŒ ๊ธ€์„ ์“ฐ๊ธฐ์œ„ํ•ด ๋ฐ˜๋ง์ฒด๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค! ์–‘ํ•ด ๋ถ€ํƒ๋“œ๋ ค์š”!) ํ˜„์žฌ KakaoVX ๊ทผ๋ฌด์ค‘์ž…๋‹ˆ๋‹ค!

0๊ฐœ์˜ ๋Œ“๊ธ€