<Apache Kafka>Spring boot(gradle)에서 Kafka producer 구현 예제(pub/sub)

노설·2022년 7월 15일
0

Apache Kafka

목록 보기
2/2

1. Dependency 추가

build.fradle에 작성한다.

    // kafka
    implementation 'org.springframework.kafka:spring-kafka'

2. config 설정 추가

application.properties에 작성한다.
producer의 역할을 할 수 있도록 했다.
직렬화를 통해 보내주어야 해서 serialization으로 보내준다. 만약 consumer역할을 추가해준다면 deserialization으로 작성해주면 된다.

# kafka
spring.kafka.producer.bootstrap-servers=localhost:9092
spring.kafka.producer.key-serializer=org.apache.kafka.common.serialization.StringSerializer
spring.kafka.producer.value-serializer=org.apache.kafka.common.serialization.StringSerializer

3. 서비스 추가

import org.springframework.kafka.core.KafkaTemplate;
import org.springframework.stereotype.Service;

@Service
public class KafkaProducerService {
    @Autowired
    private KafkaTemplate<String, String> kafkaTemplate;

    public void sendMessage(String message){
        this.kafkaTemplate.send("topic 값",message);
    }
}

나는 토픽값으로 seol_roh_log_testing 로 작성했다.

끝! 생각보다 너무 간단했다.

4. kafka 서버에서 확인

(base) root@master:/home# /home/kafka-sparkhu/confluent-6.2.2/bin/kafka-console-consumer  (--from-beginning) --topic spring boot에서 보낸 topic값 --bootstrap-server localhost:9092

--from-beginning은 해당 명령어를 입력하기 전부터 받은 모든 목록을 읽는다.

도착 확인!

profile
IT업계에서 노설 이라는 이름이 보이면 그건 무조건 나.

0개의 댓글