![](https://img-blog.csdnimg.cn/20190918140012416.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
kafka
文章平均质量分 83
炼气散人
等儿子高考后,或许会回来
展开
-
kafka基本介绍
1 卡夫卡消息队列简介1.1 消息队列1.1.1 基本特性可扩展在不需要下线的情况下进行扩容数据流分区(partition)存储在多个机器上高性能单个broker就能服务上千客户端单个broker每秒种读/写可达每秒几百兆字节多个brokers组成的集群将达到非常强的吞吐能力性能稳定,无论数据多大持久存储存储在磁盘上冗余备份到其他服务器上以防止丢失1.1.2 消息格式一个topic对应一种消息格式原创 2015-09-02 11:29:30 · 8257 阅读 · 0 评论 -
rdkafka 保存offset到本地文件
为了支持断点续传功能,需要将offset保存在一个地方,下次重这个offset开始。librdkafka提供了本地文件保存的方式。下面的代码演示了1. 要用topic config对象设置 offset.store.path和offset.store.method2. start函数接受参数OFFSET_STORED std::unique_ptr consumer(RdKafka::Consu原创 2016-06-05 18:40:45 · 10834 阅读 · 2 评论 -
kafka集群启动遇到LeaderNotAvailableException错误
解决方法很简单,用zookeeper client删除下面的路径/brokers/topic/${topic-name}kafka 0.8.1自带的zookeeper-shell.sh程序很麻烦,需要一点点删除delete /brokers/topics/test/partitions/0delete /brokers/topics/test/partitionsdelete /brokers原创 2016-06-04 18:13:24 · 11323 阅读 · 1 评论 -
读取zookeeper保存的topic元数据
读取zookeeper保存的topic元数据Table of Contents1. 有以下问题2. 解决方法3. 代码3.1. KafkaHelper类3.2. main.cc完整代码1 有以下问题需要使用producer才能获得元数据当producer和consumer共用一些对象时会出现无法读取数据的问题2 解决方法用独立的类封装获取元数据的代码,避免共用变量3 代码3.1 KafkaHelp原创 2016-05-02 13:09:02 · 9713 阅读 · 0 评论 -
使用zookeeper获取brokers的信息
使用zookeeper获取brokers的信息Table of Contents1. 在ArchLinux上安装libzookeeper2. include 头文件3. 现在编写代码4. 运行程序5. 后续要解决1 在ArchLinux上安装libzookeeperyaourt -S libzookeeper这样会安装最新版本3.4.7-1, 由于 3.4客户端兼容3.3 server,所以应该原创 2016-05-02 11:07:08 · 9448 阅读 · 0 评论 -
读取Kafka集群的消息
读取Kafka集群的消息Table of Contents1. 先启动zookeeper2. 本地启动多个brokers3. producer产生多个消息,分布在一个topic的2个partition中3.1. 创建一个test2 topic3.2. 查看下topic信息3.3. 写入消息4. consumer读取所有brokers的指定topic的所有消息1 先启动zookeeperkafka安原创 2016-05-01 21:43:51 · 8678 阅读 · 0 评论 -
简单的Kafka0.8消费者程序
简单的Kafka0.8消费者程序Table of Contents1. 建立连接2. 基本功能3. 后续解决3.1. run变量3.2. 读取多个broker3.3. 断点续读3.4. 和zookeeper交互读取元数据1 建立连接建立和kafka的连接,需要以下几个基本信息:brokers IP 和 端口号topic名称2 基本功能读取数据需要以下信息partition id开始的offset下原创 2016-05-01 17:41:15 · 10421 阅读 · 3 评论 -
在ArchLinux上安装单机版本kafka
在ArchLinux上安装单机版本kafkaTable of Contents1. 下载2. 启动zookeeper3. 测试zookeeper4. 启动kafka服务5. 测试kafka服务5.1. 创建topic test5.2. 发送测试消息5.3. 接收测试消息1 下载wget https://archive.apache.org/dist/kafka/0.8.1/kafka_2.10-0原创 2016-04-29 16:51:09 · 7229 阅读 · 1 评论 -
ArchLinux上安装librdkafka
ArchLinux上安装librdkafkaTable of Contents1. 下载github代码2. 编译3. 安装1 下载github代码git clone https://github.com/edenhill/librdkafka.git2 编译确保在master branch中,然后运行命令[dean@dell_xps_13 librdkafka]$ ./configure c原创 2016-04-29 14:52:53 · 10244 阅读 · 1 评论 -
kafka无法关闭的解决方法
kafka提供了关闭脚本,但是我运行的时候报错:# ./bin/kafka-server-stop.sh usage: kill [ -s signal | -p ] [ -a ] pid ... kill -l [ signal ]先查看一下运行的Java进程,用ps -def | grep java命令吧。然后 /proc/进程ID目录,确认果然是kafka的进程ll /pr原创 2015-09-23 23:45:20 · 21649 阅读 · 3 评论 -
kafka部署二
现在来测试一下,使用kafka内置的命令行工具发送数据,结果出现问题bin/kafka-console-producer.sh --broker-list 10.149.11.151:9092 --topic vehicle_test[2015-09-05 14:18:50,877] WARN Property topic is not valid (kafka.utils.Verifiable原创 2015-09-05 16:50:23 · 23297 阅读 · 1 评论 -
kafka部署一
集群版本部署介绍原创 2015-09-04 23:11:27 · 2781 阅读 · 0 评论 -
测试librdkafka
测试librdkafkaTable of Contents1. 版本匹配问题2. 重新编译0.8版本3. 进入tests目录1 版本匹配问题经过尝试,librdkafka 0.9 不向前兼容kafka 0.8.1, 因此,当使用kafka0.8.1 server的时候,需要使用对应的librdkafka版本。2 重新编译0.8版本首先切换到librdkafka代码的0.8 branch 然后重新编原创 2016-04-30 15:49:17 · 10703 阅读 · 2 评论