首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Kafka 整体介绍

Kafka 整体介绍

作者头像
Freedom123
发布2024-03-29 08:59:35
发布2024-03-29 08:59:35
2410
举报
文章被收录于专栏:DevOpsDevOps

简述:     Kafka是一个消息中间件,一个分布式的流平台,    是Spark生态中重要的组件,支持分布式,高可用,高吞吐,多副本     是一个分布式、分区的、多副本的、多订阅者,基于zookeeper协调的分布式日志系统     Kafka的目的是通过Hadoop的并行加载机制来统一线上和离线的消息处理,也是为了通过集群来提供实时的消息。 能力:     1. 发布和订阅流数据,类似消息队列或消息系统     2. 高容错存储流数据     3. 支持处理数据流 Kafka能解决什么问题:     1. 日志收集:一个公司可以用Kafka可以收集各种服务的log,通过kafka以统一接口服务的方式开放给各种consumer,例如hadoop、Hbase、Solr等。     2. 消息系统:解耦和生产者和消费者、缓存消息等。     3. 用户活动跟踪:Kafka经常被用来记录web用户或者app用户的各种活动,如浏览网页、搜索、点击等活动,这些活动信息被各个服务器发布到kafka的topic中,然后订阅者通过订阅这些topic来做实时的监控分析,或者装载到hadoop、数据仓库中做离线分析和挖掘。    4. 运营指标:Kafka也经常用来记录运营监控数据。包括收集各种分布式应用的数据,生产各种操作的集中反馈,比如报警和报告。    5. 流式处理:比如spark streaming和storm

重要概念:     Broker:Kafka集群包含一个或多个服务器,这种服务器被称为broker     Topic:每条发布到Kafka集群的消息都有一个类别,这个类别被称为Topic。(物理上不同Topic的消息分开存储,逻辑上一个Topic的消息虽然保存于一个或多个broker上但用户只需指定消息的Topic即可生产或消费数据而不必关心数据存于何处)     Producer:负责发布消息到Kafka broker     Consumer:消息消费者,向Kafka broker读取消息的客户端。     Consumer Group:每个Consumer属于一个特定的Consumer Group(可为每个Consumer指定group name,若不指定group name则属于默认的group)。     Partition: Partition是物理上的概念,每个Topic包含一个或多个Partition.     Leader:每个partition有多个副本,其中有且仅有一个作为Leader,Leader是当前负责数据的读写的partition。     Follower:Follower跟随Leader,所有写请求都通过Leader路由,数据变更会广播给所有Follower,Follower与Leader保持数据同步。如果Leader失效,则从Follower中选举出一个新的Leader。 Kafka特性:     1. 支持Hadoop并行数据加载     2. 高吞吐量 [2]  :即使是非常普通的硬件Kafka也可以支持每秒数百万 [2]  的消息     3. 通过O(1)的磁盘数据结构提供消息的持久化,这种结构对于即使数以TB的消息存储也能够保持长时间的稳定性能。     4. 支持Kafka Server间的消息分区,及分布式消费,同时保证每个partition内的消息顺序传输。     5. 同时支持离线数据处理和实时数据处理。 俩种模式:     1. 发布订阅消息传输模式     2. 点对点消息队列传输模式

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-03-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档