kafka入门

文章目录

主题

kafka中的消息存在topic中,也就是主题,类似于数据库中的表,通常我们将相同类型的消息存放在一个主题中。数据库的表是结构化,而topic是半结构化,某些情况下我们也可以将不同类型的消息存放在同一个topic中。

分区

主题可以包含多个分区,kafka是分布式的消息系统,可以将不同的分区存到不同的服务器上,这样就使得kafka具有拓展性。可调整分区的数量和kafka节点的数量来进行拓展。

分区是线性增长的,当消息存到kafka分区里,就不可变更,kafka会为每个消息分配一个偏移量,也就是offset,offset会记录每条消息的位置,kafka可通过偏移量对消息进行提取,但没法对消息的内容进行检索和查询。偏移量在每个分区中是唯一的,不可重复,递增的。不同的分区之间偏移量可以重复。

kafka中的消息 record是以键值对的形式进行存储的,不指定key,那key的值就是空。

key值为空,kafka会以轮询的方式讲消息写到不同的分区中。

如果我们指定了key,那么相同key的消息会被写入相同的分区。

副本

kafka通过副本机制来保证消息的可靠性。

消息代理

Broker负责消息的读写请求,并将数据写入到磁盘中。

相关推荐
小北方城市网4 小时前
分布式锁实战指南:从选型到落地,避开 90% 的坑
java·数据库·redis·分布式·python·缓存
范桂飓6 小时前
大模型分布式训练框架 Megatron-LM
人工智能·分布式
oMcLin10 小时前
如何在Debian 11上通过配置MySQL 8.0的分布式架构,提升跨区域数据同步的效率与延迟?
分布式·mysql·debian
一条咸鱼_SaltyFish10 小时前
[Day15] 若依框架二次开发改造记录:定制化之旅 contract-security-ruoyi
java·大数据·经验分享·分布式·微服务·架构·ai编程
IT 行者12 小时前
Spring Security 7 OAuth2 授权码分布式存储之Redis存储方案
redis·分布式·spring
潇凝子潇12 小时前
kafka之监控告警
分布式·kafka
Light6013 小时前
从“报告”到“能力”——构建智能化、可审计的数据治理闭环——领码 SPARK 数据质量平台白皮书
大数据·分布式·spark
maozexijr14 小时前
RabbitMQ Exchange Headers类型存在的意义?
分布式·rabbitmq
还在忙碌的吴小二14 小时前
XXL-SSO 分布式单点登录框架
分布式
独自破碎E14 小时前
RabbitMQ的消息确认机制是怎么工作的?
分布式·rabbitmq