java kafka是什么,让我们一起了解一下?
kafka是由Scala和Java编写,Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据,这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。
kafka的简单应用有哪些?
Broker : Kafka集群包含一个或多个服务器,这种服务器被称为broker。
Topic : 每条发布到Kafka集群的消息都有一个类别,这个类别被称为Topic。(物理上不同Topic的消息分开存储,逻辑上一个Topic的消息虽然保存于一个或多个broker上但用户只需指定消息的Topic即可生产或消费数据而不必关心数据存于何处)
Partition : Partition是物理上的概念,每个Topic包含一个或多个Partition。
Producer : 负责发布消息到Kafka broker。
Consumer : 消息消费者,向Kafka broker读取消息的客户端。
Consumer Group : 每个Consumer属于一个特定的Consumer Group(可为每个Consumer指定group name,若不指定group name则属于默认的group)。
kafka如何应用?
通过对消费者项目的编写,案例代码操作如下:
package com.jbit.util; import org.apache.kafka.clients.consumer.ConsumerRecord; import org.springframework.kafka.annotation.KafkaListener; import org.springframework.stereotype.Component; import java.util.Optional; @Component public class MyKafkaListener { @KafkaListener(topics = {"message"}) public void listen(ConsumerRecord record) { Optional kafkaMessage = Optional.ofNullable(record.value()); if (kafkaMessage.isPresent()) { Object message = kafkaMessage.get(); System.out.println("数据接收完毕:"+message); } } }
以上就是小编今天的分享了,希望可以帮助到大家。