dvwy
@dvwy
Students
12,773
Reviews
504
Course Rating
4.9
#Kafka #Streaming #DataEngineer
- ์นด์นด์ค ๋ฐ์ดํฐ ์์ง๋์ด(์ : SKํ๋๋)
- ์ ์
- ์ํ์น ์นดํ์นด ์ ํ๋ฆฌ์ผ์ด์
ํ๋ก๊ทธ๋๋ฐ with ์๋ฐ
- ์์ค24: https://bit.ly/3uFmhpF
- ๊ต๋ณด๋ฌธ๊ณ : https://bit.ly/39Pk0Ak
- ์๋ผ๋: https://bit.ly/3a3Xa7T
- ์ค์๊ฐ ๋ฐ์ดํฐ ํ์ดํ๋ผ์ธ ์ํคํ
์ฒ
- ์์ค24: https://bit.ly/3JjY96j
- ๊ต๋ณด๋ฌธ๊ณ : http://bit.ly/3WEcgGJ
- ์๋ผ๋: https://bit.ly/3Hcbwmz
- ์ํ์น ์นดํ์นด ์ ํ๋ฆฌ์ผ์ด์
ํ๋ก๊ทธ๋๋ฐ with ์๋ฐ
Courses
Reviews
- [DevOneYoung] Apache Kafka for beginners
- [DevOneYoung] Apache Kafka for beginners
jiho
ยท
[Apache Kafka Application Programming] From concepts to consumers, producers, connects, and streams![Apache Kafka Application Programming] From concepts to consumers, producers, connects, and streams!
Posts
Q&A
๋ฉฑ๋ฑ์ฑ ํ๋ก๋์ retries ๊ด๋ จ ์ง๋ฌธ์ ๋๋ค.
์๋ ํ์ธ์.1. retries๊ฐ Integer.MAX_VALUE๋ก ์ค์ ๋๋ ์ด์ ?๋ฉฑ๋ฑ์ฑ ๋ณด์ฅ๊ณผ๋ ํฌ๊ฒ ๊ด๋ จ์ด ์์๊ฒ ๊ฐ์ต๋๋ค. ๋ฉฑ๋ฑ์ฑ ํ๋ก๋์๊ฐ ์ค์ ๋๊ธฐ ์ ์ธ ์นดํ์นด 2.3์ producer config๋ฅผ ๋ณด๋ฉด retries๊ฐ 2147483647๋ก ์ค์ ๋์ด ์๊ธฐ ๋๋ฌธ์ ๋๋ค. ์์์น ๋ชปํ ๋คํธ์ํฌ์ ์ค๋ฅ ๋ฑ์ ์ด์๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์กํ์ง ๋ชปํ ๋ถ๋ถ์ ๋ํด ์ง์์ ์ผ๋ก ์ฌ์ฒ๋ฆฌํ๊ธฐ ์ํ ๋ชฉ์ ์ผ๋ก ์ด๋ ๊ฒ ํฐ ๊ฐ์ ์ค์ ํ ๊ฒ์ผ๋ก ๋ณด์ ๋๋ค. ๋ง์ง๋ง์ผ๋ก send() ๋ฉ์๋๋ฅผ ํธ์ถํ ์ดํ๋ก๋ ๋ด๋ถ์ ์ผ๋ก ๋ฌดํ ๋ฃจํ๊ฐ ๋๋ฉด์ ์ฌ์ฒ๋ฆฌ๋ฅผ ์งํํ๋ค๊ณ ๋ณด์๋ฉด ์ข์ ๊ฒ ๊ฐ์์. 2. retries๋ฅผ Integer.MAX_VALUE๋ก ์ค์ ๋์ด๋ ๊ด์ฐฎ์๊ฐ์?send() ๋ฉ์๋๋ฅผ ํธ์ถํ ์ดํ์ ๋ด๋ถ์ ์ผ๋ก ๋ฌดํ๋ฃจํ๊ฐ ๋๋ฉด์ retry๋ฅผ ์ํํ๊ฒ ๋ฉ๋๋ค. ๋คํํ๋ ์นดํ์นด ํ๋ก๋์์๋ request.timeout.ms ์ต์ ์ด ์กด์ฌํฉ๋๋ค. ์ด ์ต์ ์ ์ฑ๊ณต/์คํจ๋ฅผ returnํ๊ธฐ ๊น์ง ๊ธฐ๋ค๋ฆฌ๋ ์ต๋ ์๊ฐ์ธ๋ฐ ๊ธฐ๋ณธ๊ฐ์ 2๋ถ์ด๋ฏ๋ก, ๋ง์ฝ 2๋ถ๊น์ง ๊ธฐ๋ค๋ฆฌ๋ ๊ฒ(๋ธ๋ก์ปค์ ์ฅ์ , ๋คํธ์ํฌ์ ์ฅ์ ๋ฑ)์ด ๋ถ๋ด์ค๋ฌ์ฐ์๋ค๋ฉด ์ด ์ต์ ์ ์์ ํ๋ ๊ฒ์ ์ถ์ฒ๋๋ฆฝ๋๋ค. ๋ง์ง๋ง์ผ๋ก ๋ฉฑ๋ฑ์ฑ ํ๋ก๋์๋ฅผ ์ฌ์ฉ ์ฌ๋ถ์ ๊ด๊ณ์์ด ํ๋ก๋์๋ฅผ ์ค๋ ๋ํ๋ก ๋ฐ๋์ ๊ด๋ฆฌํด์ผ ํ๋ ๊ฒ์ ์๋๋๋ค. ํ์์ ๋ฐ๋ผ ๊ทธ๋ ๊ฒ ์ฌ์ฉํ์ ๋ ๋์ง๋ง ํ์๋ ์๋ ๊ฒ ๊ฐ์ต๋๋ค. ๋ค๋ง, ๊ฐ์ธ์ ์ผ๋ก ๊ถ์ฅํ๋ ๊ฒ์ producer code๋ฅผ ์ง์ค๋ send()๋ฉ์๋ ์ดํ ๋น๋๊ธฐ(Callback)๋ก ๊ฒฐ๊ณผ๋ฅผ ๋ฐ์ ์ ์๋๋ก ์ง๋ ๊ฒ์ด ์ค์ํ ๊ฒ ๊ฐ์ต๋๋ค.
- 0
- 2
- 43
Q&A
์ฑํ ์๋น์ค ๊ฐ๋ฐ ์ ์ฃผ์์ ์ด ์์๊น์?
์๋ ํ์ธ์. ์ฐ์ , ์ฑํ ์ ๊ฒฝ์ฐ ๊ทธ ์์ฒด๋ก๋ ๊ต์ฅํ ๋ณต์กํ ๋น์ฆ๋์ค ๊ธฐ๋ฅ๋ค์ด ํฌํจ๋์ด ์๊ณ ์์ ๋ฏธ๋์ด ํน์ฑ์ ๋ฐ๋ผ ํนํ๋ ๊ธฐ๋ฅ์ด ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ๋ด๋ถ ์ํคํ ์ฒ๋ ๊ฐ๊ธฐ ๋ค๋ฅธ ํํ๋ก ๋์ด ์๋ค๋ ์ ์ ์ผ๋ํด ๋์ ์ผ ํ ๊ฒ ์ ๋๋ค. ๊ทธ๋ฌ๋ฏ๋ก ์ ๋ต์ ์๊ณ ์ํฉ์ ๋ฐ๋ผ ์ ์ ํ ๊ธฐ์ ์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ค์ํ ๊ฒ ๊ฐ์ต๋๋ค.1) reactor-kafka ํ์ ์ฌ์ฉ ์ฌ๋ถํ์ ์์๋ ์ข ์ข reactor-kafka๋ฅผ ์ฌ์ฉํ๋ ์ฌ๋ก๋ฅผ ๋ณผ ์ ์์์ต๋๋ค. ๋ค๋ง, ๊ณต์ apache kafka๋ฅผ ์๋ฒฝํ๊ฒ ์ดํดํ ์ํ์์ ํด๋น ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ๊ฐ์ง๋ ํน์ฑ์ ์ ํ์ฉํ๋ ๊ฒ์ด ์ข๊ฒ ์ต๋๋ค. ์ฑํ ์ ๋ฐ๋์ reactor-kafka๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ ๋ต์ ์๋์ง๋ง, ์ค๋ต๋ ์๋๋ผ๊ณ ์๊ฐ๋ฉ๋๋ค.2) ๋ธ๋ก๋์บ์คํธ ์ ๋ฌ ๋ฐฉ์์ฑํ ๋ฐฉ์ ํ ํฝ์ผ๋ก ์ฌ์ฉํ๋ ๋ฐฉ์์ ์ ์ ํ์ง ์์๊ฒ ๊ฐ์ต๋๋ค. ํ ํฝ์ ๊ธด ๊ธฐ๊ฐ ์ ์ฅ(retention์ ์์ฃผ ๊ธธ๊ฒ)๋ ๊ฐ๋ฅํ๊ฒ ํ์ง๋ง, time๊ธฐ๋ฐ index๋ง ์ ๊ณตํ ๋ฟ ๊ธฐ๋ณธ ์ค๊ณ ์ฌ์์ด ์ญ์ ๋ฅผ ๋ชฉ์ ์ผ๋ก ๋๊ณ ๋ง๋ค์ด์ง ๊ฒ์ด๊ธฐ ๋๋ฌธ์ ๋๋ค. ๊ทธ๋์ ํ ํฝ์ ๋๊ท๋ชจ ํธ๋ํฝ์ ๋ํ ๋์ ์ฉ๋๋ก๋ง ์ฌ์ฉํ์๊ณ ๋ณ๋๋ก ์ ์ฅ์๋ฅผ ๊ฐ์ง๋ ๊ฒ์ด ์ณ๊ฒ ๋ค๋ ์๊ฐ์ด ๋ญ๋๋ค.3) ์ฑํ ์ด๋ ฅ ์ ๋ฌ ๋ฐฉ๋ฒ์ฑํ ๋ฐฉ์ ์ฑํ ์ด๋ ฅ์ ์ ์ ํ์ ๋ณ๋์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํด๋ผ์ด์ธํธ์๋ ๋ฐ์ดํฐ๋ฅผ ๋๊ธฐํํ์ฌ ๊ธฐ๋ณธ์ ์ผ๋ก ํด๋ผ์ด์ธํธ ๊ฒ์๊ณผ ์ฑํ ๋ด์ญ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฒ์์ ๋์์ ์ํํ๋ ๊ฒ์ด ์ข๊ฒ ๋ค๋ ์๊ฐ์ด ๋ญ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ ๋์ค๋ ๋งค์ฐ ๋น์ผ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค ํ๋๋ก์ ์๋๊ฐ ์ค์ํ๊ณ ๋ฐ์ดํฐ ์์ด ์ ๋ค๋ฉด ๊ณ ๋ ค๊ฐ๋ฅํ์ง๋ง, ์ผ๋ฐ์ ์ธ ์ฑํ ์ฑ์์๋ ์ฃผ ์ ์ฅ์๋ก ์ ํํ๊ธฐ๋ ์ด๋ ค์ธ ๊ฒ ๊ฐ๋ค๋ ์๊ฐ์ด ๋๋ค์.
- 0
- 2
- 51
Q&A
์ถฉ๋ถํ ํฐ ํํฐ์ ์์ฑ์ ๊ถ๊ธ์ฆ์ด ์กด์ฌํฉ๋๋ค.
์๋ ํ์ธ์. ๋ฌธ์์ฌํญ์ ๋ต๋ณ๋๋ฆฝ๋๋ค. 1.์ถฉ๋ถํ ํฐ ํํฐ์ ์ฐ์ ์ฌ๊ธฐ์ ๋งํ๋ ์ถฉ๋ถํ ํฐ ํํฐ์ ์ด๋, ์ฐ๋ฆฌ๊ฐ ํ์ฉํ๊ณ ์๋ ํด๋น ํ ํฝ์ ํ๋ก๋์, ์ปจ์๋จธ์ ์ฒ๋ฆฌ๋์ ์ธก์ ํ์ฌ ์ฐ์ ํ์๋ฉด ๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด ํด๋น ํ ํฝ์ผ๋ก ๋ณด๋ด๋ ํ๋ก๋์์ ์ต๋ ์ ์ก์์ด 100๊ฐ/์ด ์ด๊ณ ์ปจ์๋จธ์ ์ฒ๋ฆฌ๋์ด 100๊ฐ/์ด ๋ผ๋ฉด ํํฐ์ ๊ฐ์๋ฅผ 2๊ฐ๋ก ๋ ์ ์์ฃ . ์ด๋ฐ ๊ฒฝ์ฐ, ์ปจ์๋จธ๋ฅผ 2๊ฐ๋ก ํ ๋นํ์ฌ ํ๋ก๋์๊ฐ ๋ ์ฝ๋๋ฅผ ๋ณด๋ด๋์์ด ์ต๋ 2๋ฐฐ๊น์ง ๋์ด๋๋๋ผ๋ ๋์์ด ๊ฐ๋ฅํฉ๋๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ๊ตฌํํ๊ณ ์ ํ๋ ์๋น์ค์ ๋ฐฉํฅ์ฑ๊ณผ ๋ฏธ๋์ ๋์ด๋ ๋ฐ์ดํฐ์/์ฑ๋ฅ ๋ฑ์ ์ข ํฉ์ ์ผ๋ก ๊ณ ๋ คํ์๋ ๊ฒ์ด ์ข์ต๋๋ค. 2.Spring Application Consumer ๊ตฌํ์ ์ด๋ค ๊ตฌ์กฐ๋ก ๊ตฌ๋ ํ๋ฉด ์ข์์ง?์ด๊ฒ์ ์ด๋ป๊ฒ ์ด์ฉํ๋์ง์ ๋ฐ๋ผ ๋ค๋ฆ ๋๋ค. Spring application์์ consumer๋ concurrency๋ฅผ ์กฐ์ ํ์ฌ ํ๋์ ์ ํ๋ฆฌ์ผ์ด์ ์์ ์ฌ๋ฌ ์ปจ์๋จธ ์ค๋ ๋๋ก ์ด์ํ ์ ์์ต๋๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ํํฐ์ ๊ฐ์ 4๊ฐ์ผ ๊ฒฝ์ฐ, concurrency=2์ธ ์ปจ์๋จธ 2๊ฐ๋ก ์ด์ํ๋ ๋ฐฉ๋ฒ๋ ์๊ณ , ๋๋ concurrency=1์ธ ์ปจ์๋จธ๋ฅผ 4๊ฐ ์ด์ํ๋ ๋ฐฉ๋ฒ๋ ์๊ฒ ์ต๋๋ค. ํน์ concurrency=1์ธ ์ปจ์๋จธ๋ฅผ 2๊ฐ๋ง ์ด์ํ๋ ๊ฒฝ์ฐ๋ ํ๋ฆฐ ๋ฐฉ๋ฒ์ ์๋๋๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ๋ฐฐํฌํ์๋ ํ๊ฒฝ๊ณผ spring application์ด ํ๋ ์ญํ ๋ฑ์ ์ข ํฉ์ ์ผ๋ก ๊ณ ๋ คํ์ ์ผ ํ ๊ฒ ๊ฐ์ต๋๋ค.
- 0
- 2
- 44
Q&A
KTable ํค๊ฐ ์๋ ๋ ์ฝ๋ ์ฒ๋ฆฌ
์๋ ํ์ธ์.KTable์์ ๋ฉ์์ง ํค(message key)๊ฐ ์๋ ๋ ์ฝ๋๋ ๋ฌด์ํ๊ณ ๊ตฌ์ฒดํ๋ ๋ทฐ(Materialized View)๋ก ๋ง๋ค์ด์ง๊ฒ ๋ฉ๋๋ค.
- 0
- 2
- 41
Q&A
์ปจ์๋จธ ํ ์คํธ ์ฝ๋ ์์ฑ
์๋ ํ์ธ์.์นดํ์นด ์ปจ์๋จธ์ poll() ๋ฉ์๋ ํธ์ถ์ ์ํด while(true)๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ์์ฉํ๊ฒฝ์์๋ ํํ ์ฌ์ฉํ๋ ๋ฐฉ์์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฐธ๊ณ ๋ก wakeup()๋ฉ์๋๋ฅผ ํธ์ถํ๋ฉด poll()๋ฉ์๋์์ wakeupException์ ๋ฐ์์ํค๊ธฐ ๋๋ฌธ์ ๋ณดํต while(true) ์๋ค๋ก try-catch๋ฌธ์ ์์ฑํ์ฌ ๋ฆฌ์์ค๋ฅผ ์ ๋ฆฌํ๊ฑฐ๋ ๋ง๋ฌด๋ฆฌ๋ฅผ ํฉ๋๋ค. ์๋๋ ๊ด๋ จ ์ฝ๋์ด๋ฏ๋ก ์ฐธ๊ณ ํ์๊ธฐ ๋ฐ๋๋๋ค. try { while (true) { ConsumerRecords records = consumer.poll(Duration.ofMillis(100)); records.forEach(record -> { System.out.printf("offset = %d, key = %s, value = %s%n", record.offset(), record.key(), record.value()); }); } } catch (WakeupException e) { // wakeup() ํธ์ถ ์ ์ด ์์ธ ๋ฐ์ (์ ์ ์ข ๋ฃ ์ฉ๋) System.out.println("WakeupException caught. Exiting..."); } finally { consumer.close(); System.out.println("Consumer closed."); }๊ทธ๋ฆฌ๊ณ ํ ์คํธ์ ๊ฒฝ์ฐ ํฌ๊ฒ ๋๊ฐ์ง ๋ถ๋ถ์ผ๋ก ๋๋๋ฉด ์ข๊ฒ ์ต๋๋ค. ํตํฉ ํ ์คํธ์ ๋จ์ ํ ์คํธ์ ๋๋ค. ํตํฉ ํ ์คํธ์ ๊ฒฝ์ฐ cbt kafka cluster๋ฅผ ์ด์ํ๋ฉด์ cbt consumer๋ฅผ ์ฌ๋ฆฌ๊ณ ๋ ์ฝ๋๋ฅผ ์ ๋ฌํ์ฌ ํ ์คํธํ ์ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ํตํฉ ํ ์คํธ๊ฐ ์๋ฃ๋๋ฉด prod kafka cluster์ ์ฐ๋๋๋ prod consumer๋ฅผ ์๋ก์ด ๋ฒ์ ์ผ๋ก ๋ฐฐํฌํ๋ ๊ฒ์ด ์ผ๋ฐ์ ์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋จ์ ํ ์คํธ์ ๊ฒฝ์ฐ poll() ๋ด๋ถ์์ ๊ฐ๋ณ ๋ ์ฝ๋๋ฅผ ์ฒ๋ฆฌํ๋ ๊ตฌ๋ฌธ์ ๋ฉ์๋ ๋๋ ํด๋์ค๋ก ๋นผ์ mock ์ฒ๋ฆฌ ๊ฐ์ ๊ฒ์ ํตํด ํ ์คํธํ์๋ฉด ์ข์๊ฒ ๊ฐ์ต๋๋ค.
- 0
- 2
- 61
Q&A
๋ฆฌ๋ฐธ๋ฐ์ค onPartitionRevoked์ด ํ์ํ ์ํฉ
์๋ ํ์ธ์. ๋ต๋ณ๋๋ฆฝ๋๋ค.1) '๋ง์ง๋ง์ผ๋ก ์ฒ๋ฆฌํ ๋ ์ฝ๋๋ฅผ ๊ธฐ์ค์ผ๋ก ์ปค๋ฐ'์๋ ์ปค๋ฐ ์ข ๋ฅ์ ๋ฐ๋ผ poll()์ด ์ด์ ์ ํธ์ถ๋๋๋ผ๋ ์ปค๋ฐ์ด ๋์ง ์์ ๋๊ฐ ์์ต๋๋ค. ์๋ฅผ ๋ค์๋ฉด ์ผ์ฅ ์๊ฐ๋ง๋ค ์๋ ์ปค๋ฐ์ ํ๋ ๊ตฌ๋ฌธ์ ์์ฑํ ๊ฒ์ด ์์ ์ ์์ต๋๋ค.์ด๋ฐ ๊ฒฝ์ฐ, ๋ฆฌ๋ฐธ๋ฐ์ฑ์ด ๋ฐ์ํ ๋ ๋ง์ง๋ง์ผ๋ก ์ฒ๋ฆฌํ record์ offset์ ๊ธฐ์ค์ผ๋ก commit์ ์ํํ์ง ์์ผ๋ฉด ์์์น ๋ชปํ ๊ฒฐ๊ณผ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค.๊ทธ๋ฌ๋ฏ๋ก, onPartitionRevoked()์์ ๊ทธ๋ฐํ ์ํฉ์ ์ฒํ ๊ฒฝ์ฐ ์ปค๋ฐ์ ํ๋ ๋ก์ง์ ํด๋น ๋ฆฌ์ค๋์์ ๊ตฌํํ๋ ๊ฒ์ด ์ข๋ค๋ ์๋ฏธ์ ๋๋ค.2) ์คํ ์ปค๋ฐ์์ ์ธ์ ํ์ํ ์ง?์ปจ์๋จธ๋ ํ ๋น๋ ํํฐ์ ์ ๊ธฐ์ค์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๊ฒ ๋ฉ๋๋ค. ์ํฉ์ ๋ฐ๋ผ onPartitionRevoked()์ ์ปจ์๋จธ ์ฒ๋ฆฌ์ ๋ฐ๋ฅธ ๋ฆฌ์์ค์ ํ ๋น ๋ฐ ํด์ ๊ฐ ํ์ํ ์ ์์ต๋๋ค.์๋ฅผ ๋ค์ด, consumer๊ฐ ๋ฐ์ record์ partition๋ฒํธ์ ๋ฐ๋ผ {partition ๋ฒํธ}.txt ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ์ปจ์๋จธ ์ ํ๋ฆฌ์ผ์ด์ ์ด ์๋ค๊ณ ๊ฐ์ ํ์ ๋, ํด๋น ํํฐ์ ์ด ์ปจ์๋จธ์์ ํด์ ๋ ๊ฒฝ์ฐ ๋ฆฌ์ค๋์์ file write flush & io close ์ ๊ฐ์ ์กฐ์น๊ฐ ํ์ํ ์ ์์ต๋๋ค.
- 0
- 2
- 47
Q&A
์นดํ์นด ํด๋ฌ์คํฐ์์ ๊ฐ๋น ๊ฐ๋ฅํ ํํฐ์ (๋ ํ๋ฆฌ์นด) ์ ๋ฌธ์
์๋ ํ์ธ์. ์นดํ์นด ํด๋ฌ์คํฐ์ ์ ํฉํ ํํฐ์ ๊ฐ์๋ ๋ฆฌ์์ค(cpu, memory, network, disk ๋ฑ) ์ํฉ์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ๋จ์ํ 1๋ธ๋ก์ปค๋น x๊ฐ์ ํํฐ์ ์ด ํ ๋น ๊ฐ๋ฅํ๋ค๊ณ ํ๋ ๊ฒ์ ์์ฃผ ๋๋ต์ ์ธ ์ถ์ธ์ผ ๋ฟ ์ ๋ต์ด ์๋๋๋ค. ์๋ ค์ฃผ์ ํํฐ์ ๊ฐ์ ์ด 18,000๊ฐ์ธ ๊ฒฝ์ฐ์ ๋ํด์ ์ ์ ํ ์ปดํจํ ๋ฆฌ์์ค ์ํฉ์ด๋ผ๋ฉด 1๊ฐ์ ํด๋ฌ์คํฐ์์๋ ์ถฉ๋ถํ ์ด์ฉ๊ฐ๋ฅํ ์ ๋๋ผ๊ณ ์๊ฐ๋์ด ์ง๋๋ค. ํํฐ์ ์ด ์ง์ํด์ ๋ง์์ง๋ ๊ฒฝ์ฐ ๋ธ๋ก์ปค ๊ฐ์๋ฅผ ๋๋ฆฌ๋ ๋ฐฉ๋ฒ์ผ๋ก ์ ์ ํ ์ด์ฉํ์ค ์ ์์ ๊ฑฐ๋ผ ์๊ฐ๋ฉ๋๋ค๋ง, ์ํฉ์ ๋ฐ๋ผ ํด๋ฌ์คํฐ๋ฅผ ์๋ก ๋ง๋ค์ด ์ด์ฉํ๋ ๊ฒ๋ ๋์์ง ์์ ๋ฐฉ๋ฒ์ด๋ผ๊ณ ์๊ฐ๋ฉ๋๋ค.๊ฐ์ฌํฉ๋๋ค.
- 0
- 2
- 86
Q&A
reset offset ์ง๋ฌธ
์๋ ํ์ธ์. ํน์ ํํฐ์ 1๊ฐ์ ๋ํด์๋ง ์คํ์ ์ resetํ์๋ ค๋ฉด ๋ค์๊ณผ ๊ฐ์ด ์คํํ์๋ฉด ๋ฉ๋๋ค.// ๋์ ํ ํฝ : test // ์ปจ์๋จธ ๊ทธ๋ฃน : my-group // ๋์ ํํฐ์ : 3 $ bin/kafka-consumer-groups.sh \ --bootstrap-server localhost:9092 \ --group my-group \ --topic test:3 \ --reset-offsets \ --to-earliest \ --execute
- 0
- 2
- 49
Q&A
KStreamJoinKTable ์คํ์ ์ค๋ฅ
์๋ ํ์ธ์.๋ณด๋ด์ฃผ์ ๋ก๊ทธ์ ๋ฐ๋ฅด๋ฉด ์ ํํ ์์ธ์ ์ฐพ๊ธฐ ์ด๋ ต์ต๋๋ค.์ฌ์ฉ๋ ์๋ฐ ์ฝ๋build.gradle๋ก๊ทธ ์ ์ฒด์คํ์ ์ฌ์ฉํ JDK ๋ฒ์ ์ ๊ณต์ ํด์ฃผ์๋ฉด ๋ค์ ํ๋ฒ ํ์ธ ํ ๋ต๋ณ๋๋ฆฌ๊ฒ ์ต๋๋ค~
- 0
- 2
- 51
Q&A
auto.commit.interval.ms ์ต์ ๊ด๋ จ ์ง๋ฌธ ๋๋ฆฝ๋๋ค.
์๋ ํ์ธ์, auto.commit.interval.ms ๋ฅผ ์ง์ ํ๋ค๋ ๋ป์ auto commit์ ์ํํ๋ค๋ ๋ป์ด๋ฉฐ, ์ด๋ ํ ์ฌ์ ๋ก ์ธํด ์๋ฒ๊ฐ ๋ถ๋์ดํ๊ฒ ์ข ๋ฃ๋๋ ๊ฒฝ์ฐ์๋ ์ปค๋ฐ ๋๋ฝ์ผ๋ก ์ค๋ณต ์ฒ๋ฆฌ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค.
- 0
- 2
- 107





![Thumbnail image of the [Apache Kafka Application Programming] From concepts to consumers, producers, connects, and streams!](https://cdn.inflearn.com/public/courses/327041/cover/d1e15d56-83e2-464d-866d-09cd80bee4a2/327041-eng-original.png?w=148)