1.建立生产者发送数据 (1)配置zookeeper属性信息props (2)通过 new KafkaProducer[KeyType,ValueType](props) 建立producer (3)通过 new ProducerRecord[KeyType,ValueType](topic,key,value) 封装消息message (4)通过 producer.send(message) 发送消息 package SparkDemo import java.util import org.…
启动zookeeper和Kafka之后,进入kafka目录(安装/启动kafka参考前面一章:https://www.cnblogs.com/cici20166/p/9425613.html) 1.创建Topic 1)运行命令: ./bin/kafka-topics.sh --create --zookeeper zk1:2181 --replication-factor 2 --partitions 3 --topic hello replication-factor:副本数,包含主节点,不能…
关于librdkafka库的介绍,可以参考kafka的c/c++高性能客户端librdkafka简介,本文使用librdkafka库来进行kafka的简单的生产.消费 一.producer librdkafka进行kafka生产操作的大致步骤如下: 1.创建kafka配置 rd_kafka_conf_t *rd_kafka_conf_new (void) 2.配置kafka各项参数 rd_kafka_conf_res_t rd_kafka_conf_set (rd_kafka_conf_t *c…
基于Python结合pykafka实现kafka生产及消费速率&主题分区偏移实时监控   By: 授客 QQ:1033553122   1.测试环境 python 3.4 zookeeper-3.4.13.tar.gz 下载地址1: http://zookeeper.apache.org/releases.html#download https://www.apache.org/dyn/closer.cgi/zookeeper/ https://mirrors.tuna.tsinghua.edu…
环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk1.8 scala-2.10.4(依赖jdk1.8) spark-1.6 从kafka消费消息的偏移量存储到ZK 或者 mysql 或者 hbase,进行主动管理. 以下举例通过ZK进行存储管理: package manageoffset; import java.util.Map; import kafka.common.TopicAndPartition;…
前言 在上一篇中讲述如何搭建kafka集群,本篇则讲述如何简单的使用 kafka .不过在使用kafka的时候,还是应该简单的了解下kafka. Kafka的介绍 Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据. Kafka 有如下特性: 以时间复杂度为O(1)的方式提供消息持久化能力,即使对TB级以上数据也能保证常数时间复杂度的访问性能. 高吞吐率.即使在非常廉价的商用机器上也能做到单机支持每秒100K条以上消息的传输. 支持Kafka Serv…
首先说明一点,像Confluent.Kafka这种开源的组件,三天两头的更新.在搜索引擎搜索到的结果往往用不了,浪费时间.建议以后遇到类似的情况直接看官网给的Demo. 因为搜索引擎搜到的文章,作者基本上都没有说明用的是哪个版本的dll.所以你nuget安装了后,不一定能使用. 截止目前,我用的Confluent.Kafka是最新版本:1.2.1. GitHub上源码地址:https://github.com/confluentinc/confluent-kafka-dotnet,上面附有生产和…
一.前述 SparkStreamin是流式问题的解决的代表,一般结合kafka使用,所以本文着重讲解sparkStreaming+kafka两种模式. 二.具体 1.Receiver模式    原理图:  receiver模式理解: 在SparkStreaming程序运行起来后,Executor中会有receiver tasks接收kafka推送过来的数据.数据会被持久化,默认级别为MEMORY_AND_DISK_SER_2,这个级别也可以修改.receiver task对接收过来的数据进行存储…
业务背景 技术选型 Kafka Producer SparkStreaming 接收Kafka数据流 基于Receiver接收数据 直连方式读取kafka数据 Direct连接示例 使用Zookeeper维护KafkaOffset示例 SparkStreaming 数据处理 调优 合理的批处理时间(batchDuration) 合理的Kafka拉取量(maxRatePerPartition重要) 缓存反复使用的Dstream(RDD) 设置合理的GC 设置合理的CPU资源数 设置合理的paral…
今天由于kafka集群搭建时的配置不当,由于一台主消费者挂掉(服务器崩了,需要维修),导致了所有新版消费者(新版的offset存储在kafka)都无法拉取消息. 由于是线上问题,所以是绝对不能影响用户的,使用老版客户端(offset存储在zk)进行消费,然后将kafka迁移到备用服务. 下面来说一下这次事故的具体处理思路 首先要确保获取到的消息不能丢失,所以老版消费者进行消费 线上服务通过均衡负载一台一台的进行切换kafka服务,当原生产者数据都消费完时,将消费者切换到备用服务 开始配置线上ka…