[kafka]kafka是什么

什么是kakfa?

先看官网是怎么描述的:

kafka

Apache Kafka 是一个开源分布式事件流平台,被数千家公司用于高性能数据管道、流分析、数据集成和关键任务应用程序。

在旧的版本里面,Kafka是基于Zookeeper建立的一个分布式消息系统,但最新版,zookeeper已经被淘汰了。

同时,Kafka最强大的优势便是高吞吐量、高性能、实时性、高可靠。

削峰填谷

在大型的高并发场景中,往往要对数据进行计算、分析,在一个大数据的系统中,从外部收集到的数据是很难实时响应的,这个时候需要一个系统先去承载这部分数据量,Kafka就可以充当一个消息系统的角色,并且由于这个中间层的存在,可以让应用之间的通信变的灵活,原则上是解耦的。

分布式

来看一个消息队列的对比表格:

特点 ActiceMQ RabbitMQ RocketMQ Kafka
单机吞吐量 万级 万级 10W级 10W级,吞吐量高。一般配合大数据系统进行实时数据计算、日志采集等
topic数量对吞吐量的影响 topic可以达到几百、几千个级别,吞吐量会有小幅度的下降 topic到达几百个后吞吐会明显下降
时效性 ms级 微妙级别,这是RabbitMQ的最大特点,延时最低 ms级 ms以内
可用性 非常高,适合大型分布式结构 非常高,kafka是分布式的,一个数据多个副本,少数机器宕机,不会丢失数据,不会导致不可用
消息可靠性 有较低的概率丢失 经过参数配置,可以做到0丢失 经过参数配置,可以做到0丢失
核心特点 MQ领域的功能及其完备 基于erlang语言开发,并发强、性能好、延时低 阿里巴巴开源的MQ组件,支持分布式、高可用 功能较为简单,主要支持简单的MQ功能,在大数据领域的实时计算以及数据采集被大规模使用

Client

Topic

Topic是一个虚拟的概念,由1到N个Partitions组成.
类似于消息队列中的Queue.
比如说我们现在需要做一个计算积分的任务,那么就可以定义一个“积分”的主题,去进行消息传递

Producer

消息生产者,生产者负责向主题中发生消息

Consumer

消息消费者,消费者负责消费主题中的消息。在Kafka中,对点对点模型引入了消费组概念,即多个消费者实例共同消费一个TOPIC中的消息。这样可以增加消息消费的速率,一个进程或者一个线程都可以是一个消费者实例。

消费者之间可以协同消费那些失败的消息,比如A,B是一组,A无法消费,这个消息就会到达B,这个过程称为Rebalance.

Consumer Offset

每个消费者单独记录消息的位移,即消费后+N;

Server

Broker

Kafka的服务端被称为Broker服务进程,那么多个Kafka则组成一个集群,也就是多个Broker.
通常在生产环境中,不同的Broker部署在不同的机器中,来保证kafka集群的高可用,一旦有单节点出现故障,其他的Broker仍然可以提供服务

Replica

副本,kafka会把同一份数据拷贝到多个机器上,这些数据统一称为副本。在副本中,还区分LeaderFollower,顾名思义,Leader负责写入,Follower负责备份。但是这里跟普通的master和slave不同,kafka中的Follower是不提供对外服务的.

Partition

实际消息存储单位.分区解决了分布式系统中伸缩性的问题,如果一个Broker中的Topic接收了太多的消息,导致单台机器无法容纳了,那么就会造成故障。kafka的思想是,将topic进行分区,然后再结合副本分别保存在不同的节点上。这跟es中的分片也是异曲同工之妙。
分区从0开始编号.

Offset

位移,每条消息在分区中都有属于自己的位置,这就是位移,如果往分区中写入了10条,那么这些数据的顺序是0,1,2,3....在某些场景下,可以根据位移实现顺序性.

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,732评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,496评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,264评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,807评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,806评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,675评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,029评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,683评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,704评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,666评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,773评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,413评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,016评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,978评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,204评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,083评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,503评论 2 343

推荐阅读更多精彩内容

  • 一、kafka集群搭建 注意的地方: log.Dirs 这个配置,是存储真实数据的,不是log日志。 delete...
    Java进程序猿xx阅读 323评论 0 0
  • Kafka简介 Kafka最初由Linkedin公司开发,是一个分布式、支持分区的(partition)、多副本的...
    Aurora_Twinkle阅读 329评论 0 0
  • Kafka是当前分布式系统中最流行的消息中间件之一,凭借着其高吞吐量的设计,在日志收集系统和消息系统的应用场景中深...
    Dali王阅读 410评论 0 0
  • Kafka Kafka是最初由Linkedin公司开发,是一个分布式、支持分区的(partition)、多副本的(...
    redleaf阅读 337评论 0 2
  • 姓名:周小蓬 16019110037 转载自:http://blog.csdn.net/YChenFeng/art...
    aeytifiw阅读 34,701评论 13 425