[SpringBoot_Kafka] kafka를 이용한 채팅서버-1
Kafka
분산 이벤트 스트리밍 플랫폼
Kafka 설정
docker 환경에 Kafka 설정
docker-compose 설치
- kafka를 docker에서 실행하기 위해서는
docker-ccompose
가 설치 되어있어야 한다.
kafka는 항상 zookeeper가 실행되어 있어야해서 docker-compose로 실행하는 것이 편리하다.
Docker-compose를 사용하기 위해 github에서 다운
git clone https://github.com/wurstmeister/kafka-docker.git
다운로드 후 compose.yml
파일을 수정 해야하며, broker
를 하나만 올려서 테스트 할 경우 docker-compose-single-broker.yml
을 수정해주면 되고 아닐경우 docker-compose.yml
파일을 수정.
version: '2'
services:
zookeeper:
image: wurstmeister/zookeeper
ports:
- "2181:2181"
kafka:
image: wurstmeister/kafka
ports:
- "9092:9092"
environment:
KAFKA_ADVERTISED_HOST_NAME: [IP]
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
volumes:
- /var/run/docker.sock:/var/run/docker.sock
[IP]
에는 IP주소를 작성.
위 compose 파일을 보면 kafka
와zookeeper
그리고 port에 대한 설정이 있으며, 해당 내용을 저장하고 compose.yml
파일을 실행 시켜줘야한다.
docker-compose -f docker-compose.yml up
위 명령어를 실행하면 kafaka와 zookeeper container가 실행된걸 볼 수 있다.
docker ps
Topic생성및 확인
container가 실행되어 있으면 Kafka shell에 접근해야 하며 아래 명령어로 접근 가능
docker exec -it 4ed /bin/bash
kafka명령어를 사용하기 위해서 /opt/kafka/bin 으로 이동해야한다
위 경로로 이동하였으면 topic을 만들 명령어를 입력해주면 된다.
bash-5.1# ./kafka-topics.sh --bootstrap-server localhost:9092 --topic kafka_chatting --create
kafka_chatting
- topic이름(해당 부분에 원하는 topic명을 입력해주면 된다)
topic을 생성 하였으면 아래 명령어로 생성된 topic을 확인 할 수 있다.
bash-5.1# ./kafka-topics.sh --bootstrap-server localhost:9092 --list
TEST
- producer생성
docker exec -it 4ed kafka-console-producer.sh --topic test --broker-list localhost:9092
- consumer생성
docker exec -it 4ed kafka-console-consumer.sh --topic test --bootstrap-server localhost:9092
Producer
Consumer
Author And Source
이 문제에 관하여([SpringBoot_Kafka] kafka를 이용한 채팅서버-1), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@hyunho058/SpringBootKafka-kafka를-이용한-채팅서버-1저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)