์ด๋ฒ์ ํ๋ก์ ํธ์์ MSA๋ฅผ ์ ์ฉํ๊ฒ ๋๋ฉด์ ๋น๋๊ธฐ ํต์ ์์
์ ์ํด Kafka๋ฅผ ํ์ตํ์๊ณ ํ๊ฒฝ์ค์ ์ ํ๊ฒ ๋์๋ค. 1. kafka, zookeeper Docker Compose๋ก ์ค์น version: '3.8' services: zookeeper: image: wurstmeister/zookeeper container_name: zookeeper ports: - "2181:2181" kafka: image: wurstmeister/kafka container_name: kafka ports: - "9092:9092" environment: KAFKA_ADVERTISED_HOST_NAME: 127.0.0.1 KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 KAFKA_CREATE_..
๐ณ DevOps/๐ Kafka
๋จ๊ณ๋ณ๋ก ์ฑ์ฅํ์!In-Sync-Replicas(ISR) ๋ฆฌ๋์ Sync(๋๊ธฐ)๊ฐ ๋ง๊ณ ์๋(๋ณต์ฌ๊ฐ ์ ์ํํ๊ณ ์๋) ๋ชจ๋ Replicas์ ๋ชฉ๋ก ํ๋์ ๋ธ๋ก์ปค์๋ง Partition Leader๋ค์ด ๋ชฐ๋ ค์๋ค๋ฉด Hot Spot ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ค. ๋ฐ๋ผ์, Leader ์ฅ์ ์ Leader๋ฅผ ์ ์ถํ๋๋ฐ ์ฌ์ฉ replica.lag.max.messages: Follower์ Leader๊ฐ์ ๋ฉ์์ง ์ฐจ์ด (follower๊ฐ ๋ณต์ฌ๋ฅผ ์ ์ํํ๊ณ ์๋์ง ํ๋จํ๋ ์งํ) ์์๋ฒ์ ์์๋ ํ์ฌ deprecated ๋ผ๊ณ ํ๋ค. Fully-Replicated Commited์ Commit์ Consumer์ Commit๊ณผ ๋ค๋ฆ Follower๊ฐ ๋ณต์ ํ์์ ์๋ฏธ consumer๋ hign water mark๊ฐ ํ์๋ ๋ฐ์ดํฐ๊น์ง๋ง ์ฝ์ ์ ์์ r..
๋๋ ์ด๋ฒ์ ์ฐธ์ฌํ๋ ํ๋ก์ ํธ์์ Micro Service Architecture๋ฅผ ์ฌ์ฉํ๊ธฐ๋ก ํ๊ธฐ์ ๋ฐ์ดํฐ ๋๊ธฐํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด Kafka๋ฅผ ๊ณต๋ถํ๊ฒ ๋์๋ค. Kafka์ ํ์ ๋ฐฐ๊ฒฝ ๋งํฌ๋์ธ์ด๋ผ๋ ์ฌ์ดํธ๊ฐ ๊ธ์๋๋ก ์ฑ์ฅํ๊ฒ ๋๋ฉด์ ์์คํ
์ ์ง ๋ฌธ์ ๊ฐ ๋ฐ์ํ์๊ณ ์์ค ์ ํ๋ฆฌ์ผ์ด์
๊ณผ ๋ฐ์ดํฐ๊ฐ ์ต์ข
์ ์ฌ๋๋ Target ์ ํ๋ฆฌ์ผ์ด์
๊ณผ ์ฐ๊ฒฐํ๋ ๋ณต์ก์ฑ์ด ์์๋ค. ์์ ๊ฐ์ด ์์คํ
์ด ๋ณต์กํด์ง์๋ก ์๋์ ๊ฐ์ End-to-End ์์คํ
์ ๋ฌธ์ ์ ์ด ๋ฐ์ํ๋ค. ๋ฐ์ดํฐ ์ ์ก ํ์ดํ๋ผ์ธ์ด ๊ธฐํ๊ธ์์ ์ผ๋ก ๋ณต์กํด์ง Src-to-Target ํ์ดํ๋ผ์ธ ๊ฐ์๊ฐ ๋ง์์ง๋ฉด์ ์์ค์ฝ๋ ๋ฐ ๋ฒ์ ๊ด๋ฆฌ ์ด์ ๋ฐ์ target app์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ๊ฒฝ์ฐ, Source app์๋ ์ํฅ์ ์ค (๋์ ๊ฒฐํฉ๋) ๋ค์ํ ETL(Extra..