Kafka
对kafka知识点进行总结,并通过实例展现其用法
行者小朱
stay hungry,stay foolish
展开
-
Kafka知识点总结一
之前学习过kafka,但在项目中用的时候,发现还有一些点特别需要注意,这里全部总结一下:1、Kafka是一个【消息订阅-发布系统】 由消息生产者(Producer)和消息消费者(Consumer)组成,Producer将消息推送(Push)到Kafka集群,Consumer从Kafka集群中将消息拉取(Pull)下来。客户端和服务端通过TCP协议进行通信。...原创 2017-10-18 10:15:34 · 1853 阅读 · 1 评论 -
Kafka知识点总结二
上一节从各概念入手总结了Kafka的知识,这里从系统结构展开,进一步总结Kafka的知识点。 Kafka以集群的方式部署,集群由多个服务器(Broker)组成,每个Broker的Kafka由哪些层组成呢?答案是:SocketServer(Socket服务层)、KafkaRequestHandlerPool(请求转发层)、Kafka api(业务逻辑层)、Control(集群状态控原创 2017-10-23 15:28:51 · 882 阅读 · 0 评论 -
Kafka---数据持久化
今天在学习Kafka(参考文献)的时候,看到由于Kafka是基于JVM的,而Java对象占用空间差不多是数据的两倍并且随着堆中数据量的增加垃圾回收越来越困难,因此如果把数据缓存在内存中会带来严重的GC性能影响。 对磁盘的随机读写速度是100k/s,但采用6块7200转的SATA RAID-5磁盘阵列的线性写速度差不多是600MB/s,加上操作系统read-ahead(读的时候成块转载 2017-07-28 11:03:48 · 2149 阅读 · 0 评论 -
windows下搭建Kafka运行环境
一、安装JDK1.JDK下载路径 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html2.按照网上参考步骤,依次配置JAVA_HOME、Classpath和Path,然后打开cmd,运行java -version成功,则JDK配置成功;二、安装Zookeeper原创 2017-07-28 18:23:33 · 19043 阅读 · 2 评论 -
Linux下搭建Kafka运行环境
在前面的章节讲述了Windows下Kafka的运行,以及Kafka知识点总结一、知识点总结二。这里通过搭建服务器,实践编程的角度,进一步理解Kafka原理。一、安装配置JDK 参见http://www.cnblogs.com/a2211009/p/4265225.html,笔者以第一种方式安装,便于后面通过 apt-get upgrade 方式方便获得jdk的升级//添加原创 2017-11-02 17:57:32 · 2494 阅读 · 1 评论 -
Kafka实战
从搭建Windows下的Kafka运行环境和搭建Linux下的Kafka运行环境可以看出,环境一旦搭建完成,执行以下逻辑程序是固定的顺序,与环境无关:启动Zookeeper启动Kafka创建Topic启动生产者Producer发消息启动消费者Consumer消费消息 因此,这里以Windows下的运行环境为例(windows环境搭建可以参见笔者之前的...原创 2017-11-03 11:51:27 · 1393 阅读 · 3 评论 -
Kafka的高级消费者与低级消费者
在Kafka实战章节,我们写的例子都是Kafka的高级消费实例,可以看到在消息消费者的程序中,我们只需要指定zookeeper、及消费群组的groupId即可实现从消息队列中消费消息,屏蔽了大量的底层细节:如消息的偏移量等信息都不在程序中维护。Kafka的高级消费实例,满足以下几点规则:(1)同一个消费群组中,如果线程数大于Topic分区数,那么一些线程永远接收不到消息;(2)同一个消原创 2017-11-20 12:08:03 · 6870 阅读 · 0 评论 -
Kafka中的消息是否会丢失和重复消费
在之前的基础上,基本搞清楚了Kafka的机制及如何运用。这里思考一下:Kafka中的消息会不会丢失或重复消费呢?为什么呢? 要确定Kafka的消息是否丢失或重复,从两个方面分析入手:消息发送和消息消费 1、消息发送 Kafka消息发送有两种方式:同步(sync)和异步(async),默认是同步方式,可通过producer.type属性进行配置原创 2017-11-21 16:10:26 · 30313 阅读 · 3 评论