曲玬号 - 给广大网友解决创业的问题
已解决

kafka是什么(kafka入门原理教程及实践作用详解)

来自网友kafka的作用和实践应用场景及优缺点提问 提问时间:2022-03-19 08:23:56阅读次数:7

最佳答案

大家好,筱雅来为大家解答以上问题。kafka是什么(kafka入门原理教程及实践作用详解)很多人还不知道,现在让我们一起来看看吧!

想必大家现在对于kafka是什么干什么用的方面的信息都是比较想了解的吧,那么针对于kafka的作用和实践应用场景及优缺点方面的信息,筱雅自然是收集了一些相关方面的信息,那么如果您感兴趣的话,可以看下下面筱雅为大家收集到与kafka是什么(kafka入门原理教程及实践作用详解)相关的信息吧。

Kafka的原理、基础架构、以及使用场景详解

一:Kafka简介

Apache Kafka是分布式发布-订阅消息系统,在 kafka官网上对 kafka 的定义:一个分布式发布-订阅消息传递系统。

Kafka最初由LinkedIn公司开发,Linkedin于2010年贡献给了Apache基金会并成为开源项目。主要应用场景有:日志收集系统和消息系统。

Kafka的原理、基础架构、以及使用场景详解

二:Kafka基本架构

它的架构包括以下组件:

Kafka的原理、基础架构、以及使用场景详解

1、话题(Topic):是特定类型的消息流。消息是字节的有效负载(Payload),话题是消息的分类名;

2、生产者(Producer):是能够发布消息到话题的任何对象;

3、服务代理(Broker):已发布的消息保存在一组服务器中,它们被称为代理(Broker)或Kafka集群;

4、消费者(Consumer):可以订阅一个或多个话题,并从Broker拉数据,从而消费这些已发布的消息;

上图中可以看出,生产者将数据发送到Broker代理,Broker代理有多个话题topic,消费者从Broker获取数据。

三:Kafka基本原理

我们将消息的发布(publish)称作 producer,将消息的订阅(subscribe)表述为 consumer,将中间的存储阵列称作 broker(代理),这样就可以大致描绘出这样一个场面:

Kafka的原理、基础架构、以及使用场景详解

生产者将数据生产出来,交给 broker 进行存储,消费者需要消费数据了,就从broker中去拿出数据来,然后完成一系列对数据的处理操作。

Kafka的原理、基础架构、以及使用场景详解

多个 broker 协同合作,producer 和 consumer 部署在各个业务逻辑中被频繁的调用,三者通过 zookeeper管理协调请求和转发,这样一个高性能的分布式消息发布订阅系统就完成了。

图上有个细节需要注意,producer 到 broker 的过程是 push,也就是有数据就推送到 broker,而 consumer 到 broker 的过程是 pull,是通过 consumer 主动去拉数据的。

四:Zookeeper在kafka的作用

Kafka的原理、基础架构、以及使用场景详解

(1)无论是kafka集群,还是producer和consumer都依赖于zookeeper来保证系统可用性集群保存一些meta信息。

(2)Kafka使用zookeeper作为其分布式协调框架,很好的将消息生产、消息存储、消息消费的过程结合在一起。

(3)同时借助zookeeper,kafka能够生产者、消费者和broker在内的所以组件在无状态的情况下,建立起生产者和消费者的订阅关系,并实现生产者与消费者的负载均衡。

五:Kafka的特性

1.高吞吐量、低延迟

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

2.可扩展性

kafka集群支持热扩展

3.持久性、可靠性

消息被持久化到本地磁盘,并且支持数据备份防止数据丢失

4.容错性

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

5.高并发

支持数千个客户端同时读写

六:Kafka的应用场景

Kafka的原理、基础架构、以及使用场景详解

1.日志收集

一个公司可以用Kafka可以收集各种服务的log,通过kafka以统一接口服务的方式给各种consumer,例如hadoop、Hbase、Solr等。

2.消息系统

解耦和生产者和消费者、缓存消息等。

3.用户活动

Kafka经常被用来记录web用户或者app用户的各种活动,如浏览网页、搜索、点击等活动,这些活动信息被各个服务器发布到kafka的topic中,然后订阅者通过订阅这些topic来做实时的监控分析,或者装载到hadoop、数据仓库中做离线分析和挖掘。

4.运营指标

Kafka也经常用来记录运营监控数据。包括收集各种分布式应用的数据,生产各种操作的集中反馈,比如和报告。

5.流式处理

比如spark streing和storm

其他答案:

kafka是什么干什么用的(kafka的作用和实践应用场景及优缺点)

kafka的作用和实践应用场景及优缺点_作用

版权申明

本文"kafka是什么(kafka入门原理教程及实践作用详解) ":http://www.qudanhao.com/n/5081.html 内容来自互联网,请自行判断内容的正确性。若本站收录的信息无意侵犯了贵司版权,请给我们来信(19581529@qq.com),我们会及时处理和回复