服务器环境搭建
前面我们已经介绍了如何搭建kafka+zookeeper的环境,此处就不再多bb了,直接上代码
引入依赖
实际上SpringBoot本身已经集成了kafka,我们只需引入一下依赖,坐下简单配置即可使用
<dependency>
<groupId>org.springframework.kafka</groupId>
<artifactId>spring-kafka</artifactId>
</dependency>
application.yml配置,此处如果是多个服务器需要用,
隔开
kafka:
producer:
bootstrap-servers: 127.0.0.1:9092
生产代码
/**
* 生产者
* 使用@EnableScheduling注解开启定时任务
*/
@Component
@EnableScheduling
public class KafkaProducer {
@Autowired
private KafkaTemplate kafkaTemplate;
/**
* 定时任务
*/
@Scheduled(fixedRate = 1000 * 10)
public void send() {
kafkaTemplate.send("test","hello,kafka",new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
}
}
在上面的代码中,负责发送消息的角色就是SpringKafka提供的 KafkaTemplate对象,使用它的 send()方法就可以把自己的消息发送到kafka服务器
消费代码
public class KafkaConsumer {
@KafkaListener(topics = {"test"})
public void consumer(String message) {
System.out.println("test topic message : {}"+ message);
}
}
打开kafka消费端即可看到生产端生成的日期
以上即为简单的kafka消息队列的实现,更多高级功能参考spring-kafka