spring boot+kafka 사용 상세 절차
1.파일 다운로드
wget http://mirror.bit.edu.cn/apache/kafka/0.11.0.0/kafka_2.11-0.11.0.0.tgz
2.설치
tar xzvf kafka_2.11-0.11.0.0.tgz -C /usr/local/
3.설정(서버 가 아 리 클 라 우 드 ECS 에 있 음)
vi %kafka_home%/server.properties
############################# Server Basics #############################
broker.id=0
port=9092
host.name= ip
advertised.host.name= ip
delete.topic.enable=true
....
둘째,Spring boot 조작 Kafka
1.Spring 부팅 pom 의존
org.springframework.boot
spring-boot-starter-parent
1.5.6.RELEASE
2.kafka 의존
org.springframework.kafka
spring-kafka
3.kafka 설정
#kafka
spring.kafka.bootstrap-servers= ip:9092
#
spring.kafka.consumer.group-id=defaultGroup
#key-value
spring.kafka.consumer.key-deserializer=org.apache.kafka.common.serialization.StringDeserializer
spring.kafka.consumer.value-deserializer=org.apache.kafka.common.serialization.StringDeserializer
spring.kafka.producer.key-serializer=org.apache.kafka.common.serialization.StringSerializer
spring.kafka.producer.value-serializer=org.apache.kafka.common.serialization.StringSerializer
spring.kafka.producer.batch-size=65536
spring.kafka.producer.buffer-memory=524288
4.kafka 송신 코드
@Component
public class KafkaSender {
@Autowired
private KafkaTemplate kafkaTemplate;
/**
* kafka, test
*/
public void sendTest(){
kafkaTemplate.send("test","hello,kafka " + LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS")));
}
}
5.Kafka 소비 코드
public class KafkaConsumer {
/**
* test ,
* @param message
*/
@KafkaListener(topics = {"test"})
public void consumer(String message){
log.info("test topic message : {}", message);
}
}
6,테스트 코드 시작
@SpringBootApplication
@EnableScheduling
public class ServerApplication {
@Autowired
private KafkaSender kafkaSender;
public static void main(String[] args) {
SpringApplication.run(ServerApplication.class, args);
}
// 1
@Scheduled(fixedRate = 1000 * 60)
public void testKafka() throws Exception {
kafkaSender.sendTest();
}
}
3.이상 은 완전한 spring boot 가 Kafka 메시지 큐 를 통합 하 는 절차 입 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
JPA + QueryDSL 계층형 댓글, 대댓글 구현(2)이번엔 전편에 이어서 계층형 댓글, 대댓글을 다시 리팩토링해볼 예정이다. 이전 게시글에서는 계층형 댓글, 대댓글을 구현은 되었지만 N+1 문제가 있었다. 이번에는 그 N+1 문제를 해결해 볼 것이다. 위의 로직은 이...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.