kafka Download site
홈페이지에서 Download kafka 선택하여 필요한 버전의 kafka 다운로드
Mac 기준 tar 를 이용하여 다운로드 받은 파일 압축해제.
폴더구조
/bin 폴더 : kafka 실행파일 존재함.
/config 폴더 : kafka 실행시 필요한 설정값 존재함.
스프링에서 카프카를 사용하기 전 어떤 방식으로 MQ 로 동작하는지 확인하기 위한 실습.
실행 구조.
1. zookeeper-server 를 통해 kafka 코디네이터 서버를 기동. -> kafka 서버를 관리해줌
2. kafka-server 를 통해 kafka 서버를 기동시킴.
3. kafka-topics.sh 를 통해 topic 을 생성
4. kafka-console-producer.sh 를 사용하여 프로듀서 기동. 기동시 사용할 topic 을 지정함.
-> console 을 통해 메시지를 보낼수 있는 상태로 주어짐.
5. kafka-console-consumer.sh 를 통해 topic 을 구독함.
-> topic을 구독하면 해당 producer에서 메시지 생성되면 해당 메시지를 소비함.
(모든 실습은 cmd 에서 kafka 압축 파일을 푼 홈 디렉토리에서 진행함.)
1. zookeeper-server 실행
실행시 config 파일 위치도 입력
./bin/zookeeper-server-start.sh ./config/zookeeper.properties
2. kafka server 실행
실행시 config 파일 위치도 입력
./bin/kafka-server-start.sh ./config/server.properties
3. topic 생성
topic 을 지정하여 producer를 실행할 수 있다.
--bootstrap-server 'kafka서버정보' --create --topic '토픽이름' --partitions '파티션갯수'
./bin/kafka-topics.sh --bootstrap-server localhost:9092 --create --topic quickstart-events --partitions 1
4. producer 실행
실행시 kafka 서버와 topic 을 지정함
./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic quickstart-events
5. consumer 실행
producer 와 마찬가지로 서버정보와 topic 을 지정하여 실행함. consume 옵션도 지정할 수 있음.
아래에선 --from-beginning 을 통해 첫 메시지부터 모두 출력되도록 사용함.
./bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic quickstart-events --from-beginning
6. producer 를 통해 메시지 전달
댓글