kafka(2)

来源:互联网 发布:炒股软件免费下载 编辑:程序博客网 时间:2024/06/06 03:38

安装

安装Kafka首先要安装配置zookeeper。

配置

server.properties
配置项:
broker.id                                                    broker在集群中唯一的标识,要求是正数。
num.network.threads=4                         broker处理消息的最大线程数,一般情况下数量为cpu核数
num.io.threads=8                                    broker处理磁盘IO的线程数,数值为cpu核数的2倍
message.max.bytes                                消息体的最大字节
zookeeper.connect=localhost:2181    zookeeper集群地址,可以是多个,用逗号分割。hostname1:port1,hostname2:port2
num.partitions=1                                     每个topic的分区个数
http://blog.csdn.net/lizhitao/article/details/25667831

命令

启动服务
bin/kafka-server-start.sh   config/server.properties

创建topic,正常情况下,每个broker上两个partition最好。
bin/kafka-topics.sh --create --zookeeper localhost:2181  --replication-factor 1 --partitions 1 --topic xxx

列出所有的topic
bin/kafka-topics.sh  --list  --zookeeper  localhost:2181

producer发送消息
bin/kafka-console-producer.sh  --broker-list  localhost:9002 --topic xxx

consumer接收消息
bin/kafka-console-consumer.sh  --zookeeper  localhost:2181  --topic  xxx   --from-beginning


程序

1.创建topic
 (1)开启自动创建topic配置:auto.create.topics.enable=true
 (2)使用程序直接往kafka相应的topic发送数据,如果topic不存在就会按默认配置进行创建。

2.consumer接收消息
//指定topic和partition num
streams[] =Consumer.createMessageStreams ("topic1",1)
//迭代读取消息,如果没有消息,会阻塞直到有新的消息发布
for(message : streams[0]) {
bytes=message.payload();
        //do with  bytes
}

3.producer发布消息
producer =new Producer();
message = new Message("xxx".getBytes());
//消息集set,批量发布
set =new MessageSet(message);
//指定topic
producer.send("topic",set)





0 0
原创粉丝点击