1. 설치 : http://kafka.apache.org
Apache Kafka
Apache Kafka: A Distributed Streaming Platform.
kafka.apache.org
압축해제
%tar xvf kafka_2.13-3.3.1.tgz
2. kafka 3rd party library : https://cwiki.apache.org/confluence/display/KAFKA/Clients
Clients - Apache Kafka - Apache Software Foundation
How The Kafka Project Handles Clients Starting with the 0.8 release we are maintaining all but the jvm client external to the main code base. The reason for this is that it allows a small group of implementers who know the language of that client to quickl
cwiki.apache.org
3. zookeeper & kafka 서버실행
3-1. zookeeper 실행
$KAFKA_HOME/bin/zookeeper-server-start.sh $KAFKA_HOME/config/zookeeper.properties
$KAFKA_HOME/bin/zookeeper-server-stop.sh
3-2. kafka 실행
$KAFKA_HOME/bin/kafka-server-start.sh $KAFKA_HOME/config/server.properties
$KAFKA_HOME/bin/kafka-server-stop.sh
4. Topic
4-1. 생성
$KAFKA_HOME/bin/kafka-topics.sh --create --topic quickstart-events --bootstrap-server localhost:9092 --partitions 1
4-2. 목록
$KAFKA_HOME/bin/kafka-topics.sh --bootstrap-server localhost:9092 --list
4-3. 상세
$KAFKA_HOME/bin/kafka-topics.sh --describe --topic quickstart-events --bootstrap-server localhost:9092
5. Message Produce & Subscribe
5-1. Producing
$KAFKA_HOME/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic quickstart-events
5-2. Subscribe
$KAFKA_HOME/bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic quickstart-events --from-beginning
6. 구동화면
% ./bin/zookeeper-server-start.sh ./config/zookeeper.properties
% ./bin/kafka-server-start.sh ./config/server.properties
$./bin/kafka-topics.sh --bootstrap-server localhost:9092 --list
$./bin/kafka-topics.sh --create --topic quickstart-events --bootstrap-server localhost:9092 --partitions 1
[2022-12-12 00:29:54,136] WARN [AdminClient clientId=adminclient-1] Connection to node -1 (localhost/127.0.0.1:9092) could not be established. Broker may not be available. (org.apache.kafka.clients.NetworkClient)
오류 발생시 아래 파일의 내용을 적용할 host로 교정한다
$vi config/server.properties
advertised.listeners=PLAINTEXT://your.host.name:9092
7. Kafka Producer & Consumer 기동
%./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic quickstart-events
%./bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic quickstart-events --from-beginning
Producer에서 발행을 하면 Consumer에서 동일하게 표현이 되고 있다
'MSA' 카테고리의 다른 글
30. Kafka Connect #2(설치 및 DB 드라이버 설정) (0) | 2022.12.12 |
---|---|
29. Kafka Connect #1(개요 및 Database설치) (0) | 2022.12.12 |
27. FeignErrorDecoder를 이용한 에러처리 (0) | 2022.12.11 |
26. micro service간 연동을 위한 #2 FeignClient (0) | 2022.12.10 |
25. micro service간 연동을 위한 #1 RestTemplate (0) | 2022.12.10 |