首页 > 其他分享 >kafka高性能的相关设计(2):

kafka高性能的相关设计(2):

时间:2022-08-19 23:11:37浏览次数:55  
标签:index 0000 log 文件 kafka 高性能 设计 拷贝

 

1.kafka 存储再文件系统上   顺序写磁盘 效率比随机写内存还要高,这是kafka高吞吐率的一个重要的保证。   缓存页 pageCache   数据传输的零拷贝   读写数据的批量batch处理以及压缩传输   零拷贝:   消除cpu拷贝,减少上下文切换。 Kafka 在这里采用的方案是通过 NIO 的 transferTo/transferFrom 调用操作系统的 sendfile 实现零拷贝。 总共发生 2 次内核数据拷贝、2 次上 下文切换和一次系统调用,消除了 CPU 数据拷贝。   2. kafka 中的 底层存储设计      partitio 均分为多个 segment File,由 index file 和 data file 组成  .index索引文件 和 .log数据文件   Segment 是 Kafka 文件存储的最小单位。存储的message消息   seament由.index索引文件和.log数据文件组成。数值最大为 64 位 long 大小,19 位数字字符长度,长度不够数字用0填充。   如 0000 0000 0000 0036 8769.index 和 0000 0000 0000 0036 8769.log。 partition 全局第一个segment是从0开始,后续的每一个segment文件为上一个文件的最后一条消息的offset值。 .index文件中元数据<1,5> 是数据文件中的第1个 message,在分区partition表示第 .index文件名称+1个消息 该消息的物理偏移量为5。

 

 

 

 

 

 

 

 

 

 

 

标签:index,0000,log,文件,kafka,高性能,设计,拷贝
From: https://www.cnblogs.com/dhdnm/p/16606473.html

相关文章

  • SpringBoot中调用Kafka
    Kafka实战——在SpringBoot中的应用官网文档链接1.pom引用 <dependency><groupId>org.springframework.kafka</groupId><artifactId>spri......
  • 我对DDD领域驱动设计的理解
    本片随笔仅记录自己目前对DDD的理解与实践,后续会持续关注DDD,持续更新1.DDD是什么DDD是领域驱动设计的简称,那什么是领域呢,领域就是业务,比如,制药领域,金融领域,电商领域等等......
  • 软件设计原则
    1开闭原则对扩展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码,实现一个热插拔的效果。简言之,是为了使程序的扩展性好,易于维护和升级。想要达到这样的......
  • 对保温系统与电梯系统进行架构设计
    一、 实验内容使用面向对象设计方法对保温系统与电梯系统进行架构设计。二、实验目的 学会如何分析一个系统的架构并进行设计,学会用面向对象方法实现架构设......
  • 10 继承模板 & inclution_tag & 文章的详情页设计 & 文章点赞 & 文章的评论
    模板继承即渲染:文章点赞或反对:跟评论和子评论:settings.pysettings.pyUSE_TZ=False#转时区改为False编写url:urls.pyfromdjango.urlsimportre_pat......
  • 基于 Impala 的高性能数仓建设实践之虚拟数仓
    导读:本文主要介绍网易数帆NDH在Impala上实现的虚拟数仓特性,包括资源分组、水平扩展、混合分组和分时复用等功能,可以灵活配置集群资源、均衡节点负载、提高查询并发,并充......
  • 轻松设计流程图的Mac软件
    NCHClickChartsProMac是一款可以轻松设计流程图和图表的软件。NCHClickCharts可以快速创建组织,流程,思维导图,UML图表等的强大视觉效果。映射您的价值流和数据流。找出流......
  • 从技术转项目经理关于设计方案的第一次思考
         夜深人静,思绪万千。到新公司担任项目经理已有半年时间,算来自己手头上的一个项目也进行了半年,却目前几乎没有一个流程能走通的,是谁之过?     静心......
  • 设计模式-单例模式
    单例模式:简单地说就是一个实例即一个对象,全局只用这一个对象。如何保证一个对象呐?私有的构造函数,保证外界不能直接new一个对象,那么就保证了单一性;但......
  • 千兆以太网_发送模块设计_udp_rgmii_tx
    功能:在FPGA开发板上,用户数据存于FIFO,经过UDP,IP,MAC封装,通过RGMII接口发送出去。完整的以太网应该包括收发功能,这里介绍发送模块。实现:序列机过程:发送顺序:  MAC帧头—......