Kafka精华问答 | Kafka有哪些使用场景?「建议收藏」

Kafka精华问答 | Kafka有哪些使用场景?「建议收藏」它提供了类似于JMS的特性,但是在设计实现上完全不同,此外它并不是JMS规范的实现。kafka只能使用作为"常规"的消息系统

大家好,欢迎来到IT知识分享网。Kafka精华问答 | Kafka有哪些使用场景?「建议收藏」

Kafka is a distributed,partitioned,replicated commit logservice。它提供了类似于JMS的特性,但是在设计实现上完全不同,此外它并不是JMS规范的实现。今天就让我们一起来看看关于Kafka 的精华问答吧。

1

Q:Kafka的使用场景

A: 1、Messaging

对于一些常规的消息系统,kafka是个不错的选择;partitons/replication和容错,可以使kafka具有良好的扩展性和性能优势.不过到目前为止,我们应该很清楚认识到,kafka并没有提供JMS中的”事务性””消息传输担保(消息确认机制)””消息分组”等企业级特性;kafka只能使用作为”常规”的消息系统,在一定程度上,尚未确保消息的发送与接收绝对可靠(比如,消息重发,消息发送丢失等)

2、Websit activity tracking

kafka可以作为”网站活性跟踪”的最佳工具;可以将网页/用户操作等信息发送到kafka中.并实时监控,或者离线统计分析等

3、Log Aggregation

kafka的特性决定它非常适合作为”日志收集中心”;application可以将操作日志”批量””异步”的发送到kafka集群中,而不是保存在本地或者DB中;kafka可以批量提交消息/压缩消息等,这对producer端而言,几乎感觉不到性能的开支.此时consumer端可以使hadoop等其他系统化的存储和分析系统.

2

Q:Kafka有哪些特性?

A:– 高吞吐量、低延迟:kafka每秒可以处理几十万条消息,它的延迟最低只有几毫秒,每个topic可以分多个partition, consumer group 对partition进行consume操作。

– 可扩展性:kafka集群支持热扩展

– 持久性、可靠性:消息被持久化到本地磁盘,并且支持数据备份防止数据丢失

– 容错性:允许集群中节点失败(若副本数量为n,则允许n-1个节点失败)

– 高并发:支持数千个客户端同时读写

3

Q:Kafka存在哪些组件?

A:一个MQ需要哪些部分?生产、消费、消息类别、存储等等。

对于kafka而言,kafka服务就像是一个大的水池。不断的生产、存储、消费着各种类别的消息。那么kafka由何组成呢?

> Kafka服务:

> Topic:主题,Kafka处理的消息的不同分类。

> Broker:消息代理,Kafka集群中的一个kafka服务节点称为一个broker,主要存储消息数据。存在硬盘中。每个topic都是有分区的。

> Partition:Topic物理上的分组,一个topic在broker中被分为1个或者多个partition,分区在创建topic的时候指定。

> Message:消息,是通信的基本单位,每个消息都属于一个partition

> Kafka服务相关

> Producer:消息和数据的生产者,向Kafka的一个topic发布消息。

> Consumer:消息和数据的消费者,定于topic并处理其发布的消息。

> Zookeeper:协调kafka的正常运行。

4

Q:Kafka的主要功能有哪些?

A:根据官网的介绍,ApacheKafka®是一个分布式流媒体平台,它主要有3种功能:

1:It lets you publish and subscribe to streams of records.发布和订阅消息流,这个功能类似于消息队列,这也是kafka归类为消息队列框架的原因

2:It lets you store streams of records in a fault-tolerant way.以容错的方式记录消息流,kafka以文件的方式来存储消息流

3:It lets you process streams of records as they occur.可以再消息发布的时候进行处理

5

Q:Kafka存储策略

A:1)kafka以topic来进行消息管理,每个topic包含多个partition,每个partition对应一个逻辑log,有多个segment组成。

2)每个segment中存储多条消息(见下图),消息id由其逻辑位置决定,即从消息id可直接定位到消息的存储位置,避免id到位置的额外映射。

3)每个part在内存中对应一个index,记录每个segment中的第一条消息偏移。

4)发布者发到某个topic的消息会被均匀的分布到多个partition上(或根据用户指定的路由规则进行分布),broker收到发布消息往对应partition的最后一个segment上添加该消息,当某个segment上的消息条数达到配置值或消息发布时间超过阈值时,segment上的消息会被flush到磁盘,只有flush到磁盘上的消息订阅者才能订阅到,segment达到一定的大小后将不会再往该segment写数据,broker会创建新的segment。

Kafka精华问答 | Kafka有哪些使用场景?「建议收藏」

小伙伴们冲鸭,后台留言区等着你!

关于kafka,今天你学到了什么?还有哪些不懂的?除此还对哪些话题感兴趣?快来留言区打卡啦!留言方式:打开第XX天,答:……

同时欢迎大家搜集更多问题,投稿给我们!风里雨里留言区里等你~

福利

1、扫描添加小编微信,备注“姓名+公司职位”,加入【云计算学习交流群】,和志同道合的朋友们共同打卡学习!

Kafka精华问答 | Kafka有哪些使用场景?「建议收藏」

2、公众号后台回复:白皮书,获取IDC最新数据白皮书整理资料!

推荐阅读:

  • 在线公开课 | 从理论走向实践,多角度详解Cloud Native

  • 苹果春季发布会:库克绝不玩别人玩剩下的!

  • 中国区块链职业发展现状: 30岁前不做开发; 平均薪资仅38.4万; 跳槽薪资涨三成 (附完整报告下载资源)

  • 库克谈“唱衰苹果”:一派胡言!

  • 上海交大CV博导微信群辱骂学生,已停止教学

  • 李沐团队新作Gluon,复现CV经典模型到BERT,简单好用 | 强烈推荐

  • 日本乐天要求员工学编程,AI 进中小学课堂,全民编程时代来了!

Kafka精华问答 | Kafka有哪些使用场景?「建议收藏」

喜欢就点击“在看”吧

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/6390.html

(0)
上一篇 2022-12-16 19:20
下一篇 2022-12-16 19:40

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信