728x90
반응형
kafka 를 통해서 간단히 events 쓰기 / 읽기를 구현해보고 node.js에서 해당 내용을 구현해보겠습니다.
1. kafka 설치
kafka 다운로드 및 설치 진행
$ tar -xzf kafka_2.13-3.0.0.tgz
$ cd kafka_2.13-3.0.0
2. kafka 환경 구성
java 8+가 설치 되어 있어야 합니다.
ZooKeeper 서비스를 실행
# Start the ZooKeeper service
# Note: Soon, ZooKeeper will no longer be required by Apache Kafka.
$ bin/zookeeper-server-start.sh config/zookeeper.properties
새로운 터미널에서 kafka broker service를 실행
# Start the Kafka broker service
$ bin/kafka-server-start.sh config/server.properties
해당 서비스들이 모두 정상적으로 실행되었다면 kafka를 사용하기 위한 환경이 모두 구성 된것으로 볼 수 있습니다.
3. 토픽 생성
kafka는 분산 이벤트 스트리밍 플랫폼으로 이벤트의 쓰기, 읽기, 저장, 처리등을 지원합니다.
이런 이벤트들은 토픽에 저장이 되고 토픽은 파일시스템의 폴더라고 볼 수 있으며, 이벤트들은 폴더안에 파일이라고 볼 수 있습니다.
토픽을 생성하기 위해 새로운 터미널에서 아래처럼 quickstart-events 라는 토픽을 생성합니다.
$ bin/kafka-topics.sh --create --partitions 1 --replication-factor 1 --topic quickstart-events --bootstrap-server localhost:9092
4. 토픽에 이벤트를 저장
아래 명령어를 사용해서 위에서 만들었던 quickstart-events에 이벤트를 저장 할 수 있습니다.
$ bin/kafka-console-producer.sh --topic quickstart-events --bootstrap-server localhost:9092
> event 1
> event 2
producer의 종료는 ctrl + c 를 눌러서 종료할 수 있습니다.
5. 토픽에서 이벤트 읽기
아래 명령어를 이용해서 quickstart-events 토픽에 저장된 이벤트를 읽을 수 있습니다.
새로운 터미널에서 아래와 같은 명령어를 수행 합니다.
$ bin/kafka-console-consumer.sh --topic quickstart-events --from-beginning --bootstrap-server localhost:9092
event 1
event 2
위에서 quickstart-events에 저장된 이벤트를 읽어올 수 있습니다.
6. kafka 환경 종료
기존 터미널들에서 수행했던 서비스들을 ctrl + c 를 눌러서 종료 시켜 줍니다.
- Producer, Consumer
- kafka broker
- zookeeper server
728x90
반응형
'기타' 카테고리의 다른 글
[kafka] kafkajs 사용하여 producer / consumer 서버 만들기 (kafkajs) (0) | 2022.01.25 |
---|---|
[kafka] kafkajs 사용하여 producer / consumer 서버 만들기 (kafkajs) (0) | 2022.01.25 |
[Elasticsearch] Elasticsearch 7.16.1 (Kubernetes readiness failed ) (0) | 2021.12.13 |
[전세대출] 카카오뱅크 전세 대출 후기 (0) | 2021.11.24 |
현대모터스튜디오 고양 - 언택트 시승체험 (제네시스 GV80) (0) | 2021.11.22 |
댓글