Kafka是一个类似于RabbitMQ的消息系统,它的主要功能是消息的发布和订阅、处理和存储。
1.它类似于一个消息系统,读写流式的数据。
2.编写可扩展的流应用处理程序,用于实时事件响应的场景。
3.安全的将流式的数据存储在一个分布式,有副本备份,容错的集群。
本篇博文主要介绍如何使用Java编写程序将数据写入到Kafka中,即Kafka生产者,并不涉及Kafka消费者。另外,像Spark,Storm等都有相应的程序从Kafka消费者中获取数据的方法,直接调用即可。
Kafka的运行需要Zookeeper的帮助,所以,需要先安装Zookeeper。
1.先启动Zookeeper
bin/zookeeper-server-start.sh config/zookeeper.properties
再启动Kafka服务器:
bin/kafka-server-start.sh config/server.properties
2.创建一个Topic:
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
显示topic
bin/kafka-topics.sh --list --zookeeper localhost:2181
也可以在程序中进行topic的创建。
3.发送消息:
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
4.接收消息