๐ก ์ง๋๋ฒ ์ ๋ฆฌํ๋ Producer์์ ์ถ๊ฐ ๋ด์ฉ์ด ์์ด ์ ๋ฆฌํ ํฌ์คํ ์ ๋๋ค.
Producer์ ๋ํด ์ ๋ชจ๋ฅด์๋ ๋ถ๋ค์ ์ ์ ์ ๋ฆฌํ๋ Producer ํฌ์คํ ์ ์ฐธ๊ณ ํ์๋ฉด ์ข์ ๊ฒ ๊ฐ์ต๋๋ค.
acks
acks๋ producer๊ฐ broker์ ๋ฉ์์ง๋ฅผ ์ ์กํ ๊ฒฐ๊ณผ์ ๊ดํ ์ค์ ์ธ๋ฐ, confluent kafka ๊ณต์ ๋ฌธ์์ ์ค๋ช ์ ์ดํด๋ณด๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
ํ๋ก๋์๊ฐ ์์ฒญ ์๋ฃ๋ฅผ ๊ณ ๋ คํ๊ธฐ ์ ์ ๋ฆฌ๋ ํํฐ์ ์ด ์์ ํด์ผ ํ๋ ์น์ธ์ ์์ ๋๋ค. ์ด๊ฒ์ ์ ์ก๋ ๋ ์ฝ๋์ ๋ด๊ตฌ์ฑ์ ์ ์ดํฉ๋๋ค.
acks=0 0์ผ๋ก ์ค์ ํ๋ฉด ํ๋ก๋์๋ ์๋ฒ์ ์น์ธ์ ์ ํ ๊ธฐ๋ค๋ฆฌ์ง ์์ต๋๋ค.
๋ ์ฝ๋๋ ์ฆ์ ์์ผ ๋ฒํผ์ ์ถ๊ฐ๋๊ณ ์ ์ก๋ ๊ฒ์ผ๋ก ๊ฐ์ฃผ๋ฉ๋๋ค.
์ด ๊ฒฝ์ฐ ์๋ฒ๊ฐ ๋ ์ฝ๋๋ฅผ ์์ ํ๋ค๊ณ ๋ณด์ฅํ ์ ์์ผ๋ฉฐ ์ฌ์๋ ๊ตฌ์ฑ์ด ์ ์ฉ๋์ง ์์ต๋๋ค(ํด๋ผ์ด์ธํธ๋ ์ผ๋ฐ์ ์ผ๋ก ์คํจ๋ฅผ ์์ง ๋ชปํ๋ฏ๋ก).
๊ฐ ๋ ์ฝ๋์ ๋ํด ๋ฐํ๋๋ ์คํ์ ์ ํญ์ -1๋ก ์ค์ ๋ฉ๋๋ค.
acks=1 ์ด๋ ๋ฆฌ๋ ํํฐ์ ์ด ๋ ์ฝ๋๋ฅผ ๋ก์ปฌ ๋ก๊ทธ์ ๊ธฐ๋กํ์ง๋ง ๋ชจ๋ ํ๋ก์ ํํฐ์ ์ ์ ์ฒด ์น์ธ์ ๊ธฐ๋ค๋ฆฌ์ง ์๊ณ ์๋ตํ๋ค๋ ์๋ฏธ์ ๋๋ค. ์ด ๊ฒฝ์ฐ ๋ฆฌ๋ ํํฐ์ ์ด ๋ ์ฝ๋๋ฅผ ์น์ธํ ์งํ ์คํจํ์ง๋ง ํ๋ก์ ํํฐ์ ์ด ๋ณต์ ํ๊ธฐ ์ ์ ๋ ์ฝ๋๊ฐ ์์ค๋ฉ๋๋ค.
acks=all ์ด๋ ๋ฆฌ๋ ํํฐ์ ์ด ๋๊ธฐํ๋ ๋ณต์ ๋ณธ์ ์ ์ฒด ์ธํธ๊ฐ ๋ ์ฝ๋๋ฅผ ์น์ธํ ๋๊น์ง ๋๊ธฐํจ์ ์๋ฏธํฉ๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด ํ๋ ์ด์์ ๋๊ธฐํ ๋ณต์ ๋ณธ์ด ์ด์์๋ ํ ๋ ์ฝ๋๊ฐ ์์ค๋์ง ์์ต๋๋ค. ์ด๊ฒ์ ๊ฐ์ฅ ๊ฐ๋ ฅํ ๋ณด์ฆ์ ๋๋ค. ์ด๋ acks=-1 ์ค์ ๊ณผ ๋์ผํฉ๋๋ค.
acks๋ ์์ ๊ฐ์ด 0, 1, -1(all) ์ด 3๊ฐ์ง์ ์ต์ ์ ์ฌ์ฉํ ์ ์๋๋ฐ,
acks=0์ ๊ฒฝ์ฐ ๋ฉ์์ง๋ฅผ ์ ์กํ ํ ์ ์์ ์ผ๋ก ์ ์ก์ด ๋์๋์ง ์๋ฌ๊ฐ ๋ฐ์ํ๋์ง ์ฌ๋ถ๋ ํ์ธํ์ง ์๊ณ ์ดํ ์ฒ๋ฆฌ๋ฅผ ์งํํ๋ ๋ฐฉ์์ ๋๋ค. ๋ฐ๋ผ์ ๋ฐํ๋๋ RecordMetadata์๋ offset์ด ํญ์ -1๋ก ๋ฐํ๋ฉ๋๋ค.
acks=1์ ๊ฒฝ์ฐ ๋ฉ์์ง๊ฐ ์ ์ฅ๋์๋์ง ํ์ธ์ ํ์ง๋ง, ๋ฆฌ๋ ํํฐ์ ๊น์ง๋ง ํ์ธํฉ๋๋ค. ์ดํ ํ๋ก์ ํํฐ์ ์ด ์๋๋ผ๋ ๋ฆฌํฐ ํํฐ์ ์๋ง ๋ฉ์์ง๊ฐ ์ ์ฅ๋์๋์ง ํ์ธํ ํ ์ดํ ์ฒ๋ฆฌ๋ฅผ ์งํํ๋ ๋ฐฉ์์ ๋๋ค.
acks=all์ ๋ฆฌ๋ ํํฐ์ ๋ฟ๋ง ์๋๋ผ ํ๋ก์ ํํฐ์ ์๋ ๋ฉ์์ง๊ฐ ์ ์ฅ๋์๋์ง ํ์ธํ๋ ๋ฐฉ์์ผ๋ก ๊ฐ์ฅ ์์ ํ ๋ฐฉ๋ฒ์ ๋๋ค. ํ์ง๋ง ํ๋ก์ ํํฐ์ ๊น์ง ๋ฉ์์ง๊ฐ ์ ์ฅ๋๊ธฐ๋ฅผ ๊ธฐ๋ค๋ ค์ผ ํ๊ธฐ ๋๋ฌธ์ ์ฑ๋ฅ๋ฉด์์๋ ๋ค๋ฅธ ์ต์ ์ ๋นํด ๋จ์ด์ง๋๋ค.
acks=all์ ๊ฒฝ์ฐ ์กฐ๊ธ ๋ ๊ณ ๋ คํด์ผ ํ ๋ถ๋ถ์ด min.insync.replicas ์ต์ ์ธ๋ฐ ์ด ์ต์ ์ ๋ฉ์์ง๋ฅผ ๋ณด๋ผ ๋ ๋ฉ์์ง๋ฅผ ์ ์ฅํด์ผ ํ ์ต์ํ์ Replication ์๋ฅผ ์๋ฏธํฉ๋๋ค. ์์ ๊ฒฝ์ฐ min.insync.replicas ์ต์ ์ด 1๋ก ์ค์ ์ด ๋์ด ์๋ค๊ณ ๊ฐ์ ํ ๋ ํ๋ก์ ํํฐ์ ๋ค์ด ์ ๋ถ ์๋ฌ๊ฐ ๋ฐ์ํ๋๋ผ๋ ๋ฆฌ๋ ํํฐ์ ์๋ง ๋ฉ์์ง๋ฅผ ์ ์ฅํด๋ ์ ์์ ์ผ๋ก ๋ฉ์์ง๊ฐ ์ ์ฅ๋์๋ค๊ณ ํ๋จํฉ๋๋ค.
ํ์ง๋ง min.insync.replicas ์ต์ ์ด 2๋ก ์ค์ ์ด ๋์ด ์๋ค๊ณ ๊ฐ์ ํ ๋ ํ๋ก์ ํํฐ์ ๋ค์ด ์์ ๊ฐ์ด ์ ๋ถ ์๋ฌ๊ฐ ๋ฐ์ํ๊ฒ ๋๋ฉด ๋ฆฌ๋ ํํฐ์ ์ ๋ฉ์์ง๊ฐ ์ ์์ ์ผ๋ก ์ ์ฅ๋๋๋ผ๋ ์์ง 1๊ฐ์ ํํฐ์ ์ ๋ฉ์์ง๊ฐ ์ ์ฅ์ด ๋์ง ์์๊ธฐ ๋๋ฌธ์ ์นดํ์นด๋ ์๋ฌ๋ก ํ๋จํ๊ณ ๋ค์ ๋ฉ์์ง๋ฅผ ๋ณด๋ผ ์ ์๊ฒ ๋ฉ๋๋ค.
์ฐธ๊ณ ์๋ฃ
'Kafka' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Consumer - 2 (0) | 2023.04.17 |
---|---|
Consumer - 1 (0) | 2023.04.16 |
Partitioner & Partition (0) | 2023.04.08 |
kafka CLI ์ฌ์ฉํ๊ธฐ - kafka-configs.(sh | bat) (0) | 2023.04.08 |
kafka CLI ์ฌ์ฉํ๊ธฐ - kafka-consumer-group.(sh | bat) (0) | 2023.04.08 |
๋๊ธ