Kafka精华问答 | Kafka的主要应用场景有哪些?
Posted CSDN云计算
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Kafka精华问答 | Kafka的主要应用场景有哪些?相关的知识,希望对你有一定的参考价值。
Kafka是最初由Linkedin公司开发,具有高性能、持久化、多副本备份、横向扩展能力。今天,我们就看看看关于Kafka的精华问答吧。
Q:什么是Kafka?
A:Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写。Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。
Q:消息队列实现原理
A:
Q:kafka的总体数据流是什么样的?
A:
Q:kafka 架构
A:
1)producer:消息生产者,就是向kafka broker发消息的客户端
2)consumer:消息消费者,就是向 kafka broker 获取消息的客户端
3)topic:消息类别,也可以理解为一个队列
4)consumer group(CG):这是 kafka 用来实现一个 topic 下的消息的广播语义(发给所有的 consumer)和单播语义(发给任意一个 consumer)的手段。一个 topic 可以有多个 consumer group。topic 下的消息会复制给 consumer。**如果需要实现广播,那么只要每个 consumer 有一个独立的 consumer group。要实现单播,只要所有的 consumer 在同一个 consumer group。**consumer group 还可以将 consumer 进行自由的分组,而不需要多次发送消息到不同的 topic。
5)broker:一台 kafka 服务器就是一个 broker。一个集群由多个 broker 组成。一个broker 可以容纳多个 topic。
6)partition:为了实现扩展性,一个非常大的 topic 可以分布到多个 broker(即服务器)上,一个 topic 可以分为多个 partition,每个 partition 是一个有序的队列。partition 中的每条消息都会被分配一个有序的 id(offset)。kafka 只保证按一个 partition 中的顺序将消息发给 consumer,不保证一个 topic 的整体(多个partition间)的顺序。
7)offset:kafka 的存储文件都是按照 offset.kafka 来命名,用 offset 做名字的好处是方便查找。例如你想找位于 2049 的位置,只要找到 2048.kafk a的文件即可。当然t he first offset 就是00000000000.kafka。
Q:主要功能有哪些?
A:根据官网的介绍,ApacheKafka®是一个分布式流媒体平台,它主要有3种功能:发布和订阅消息流,这个功能类似于消息队列,这也是kafka归类为消息队列框架的原因;以容错的方式记录消息流,kafka以文件的方式来存储消息流;可以再消息发布的时候进行处理。
小伙伴们冲鸭,后台留言区等着你!
关于Kafka,今天你学到了什么?还有哪些不懂的?除此还对哪些话题感兴趣?快来留言区打卡啦!留言方式:打开第XX天,答:……
同时欢迎大家搜集更多问题,投稿给我们!风里雨里留言区里等你~
福利
1、扫描添加小编微信,备注“姓名+公司职位”,加入【云计算学习交流群】,和志同道合的朋友们共同打卡学习!
推荐阅读:
以上是关于Kafka精华问答 | Kafka的主要应用场景有哪些?的主要内容,如果未能解决你的问题,请参考以下文章