码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 【kafka】五、kafka工作流程


    kafka工作流程

    工作流程

    kafka中消息是以topic进行分类的,生产者生产消息,消费者消费消息,都是面向topic的。

    topic是逻辑上的概念,而partition是物理上的概念,每一个partition对应一个log文件,该log文件中存储的是producer生产的数据。producer生产的消息会被不断的追加到该log文件末端,且每条数据都有自己的offset。消费者组中的每个消费者,都会实时记录自己消费到了哪个offset,以便出错恢复时,可以从上次的位置继续消费。

    在这里插入图片描述

    进入到kafka的数据目录,再进入到对应的分区中就可以看到数据文件了:

    image-20220106213307978

    文件存储

    image-20220106213608766

    由于生产者生产的消息会不断的被追加到log文件末尾,为防止log文件过大导致的数据定位效率低下,kafka采用了分片和索引机制,将每个partition分为多个segment。每个segment对应两个文件——.log文件和.index文件,这些文件位于同一个文件夹(topic名称+分区序号)下。比如创建topic:first,共3个分区,则会在kafka配置的数据存储目录创建:first-0,first-1,first-2三个文件夹,且每个文件夹下都会有如图所示的文件数据:

    image-20220106213307978

    index和log文件是以当前segment的第一条消息的offset命名的。

    “.index"文件存储大量的索引信息,”.log"文件存储大量的数据,索引文件中的元数据指向对应数据中message的物理偏移地址。

    //todo 画个图 index和log详解,画的可能不太准确
    
    • 1

    image-20220117123727102

  • 相关阅读:
    ElasticSearch(ES)简单介绍
    2019年亚太杯APMCM数学建模大赛B题区域经济活力及其影响因素的分析与决策求解全过程文档及程序
    快速幂求逆元
    Linux定时任务配置
    JavaScript作用域链与预解析
    如何与 TENNECO 建立 EDI 连接?
    Ble Mesh的Heatbeat
    【机组组合】基于数据驱动的模型预测控制电力系统机组组合优化【IEEE24节点】(Matlab代码实现)
    9-AJAX-上-原理详解
    Spring Cloud Hystrix:服务容错保护
  • 原文地址:https://blog.csdn.net/sinat_33151213/article/details/128044240
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号