服务器环境搭建

前面我们已经介绍了如何搭建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