kafka(一)快速入门

本文介绍了ApacheKafka,一个分布式、分区的多副本消息系统,用于日志收集、消息传递和数据处理。重点讲解了Broker、Topic、Producer、Consumer、ConsumerGroup和Partition等基本概念,以及消费类型、副本和消费顺序的实现机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、kafka(一)是什么?

        kafka是一个分布式、支持分区、多副本,基于zookeeper协调的分布式消息系统;

二、应用场景

        日志收集:一个公司可以用Kafka收集各种服务的log,通过kafka推送到各种存储系统;


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

        数据收集:将数据推送到kafka中,订阅者消费处理分析;

三、kafka的基本概念

        Broker:消息中间处理节点;

        Topic:kafka根据topic对详细进行归类,发布到kafka的每一条消息都要指定topic;

        Producer:生产者,向Broker推送消息的客户端;

        Consumer:消费者,从Broker读取消息的客户端;

        ConsumerGroup:每个Consumer属于一个特定的Consumer Group,一条消息可以被多个不同的Consumer Group消费,但是一个Consumer Group中只能有一个Consumer消费;

        Partition:物理概念,一个Topic可分为多个partition,每个partition内部消息是有序的;

        

kafka所有消息存储在文件上,消费完不会删除;(默认保持一周)

四、消费类型

        普通消费:消费最新消息

        消费多主题消息:同一个消费者可以监听多个topic进行消费;

        单播消费:一条消息在一组消费者中只能有一个消费者消费;

        多播消费:消费者指定不同的消费组,每个消费组下的消费者都可以消费同一消息;

kafka是如何做到单播消费与多播消费的?

kafka的消费是以组为单位,组内只有一个消费者可以消费成功,组内会记录消费消息的偏移量与未消费数量;

五、副本

       一个topic可以指定多个分区,每个分区可以指定多个副本;

六、消费顺序

        一个partition同一时刻在一个Consumer group中只能有一个consumer 在消费,从而保证顺序;consumer group中的consumer 数量不能比一个topic中的partition数量多,否则多出来的消费不到消息;


       

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值