游戏电视苹果数码历史美丽
投稿投诉
美丽时装
彩妆资讯
历史明星
乐活安卓
数码常识
驾车健康
苹果问答
网络发型
电视车载
室内电影
游戏科学
音乐整形

RocketMQ消息存储原理

  消息存储CommitLog
  1、消息内容和元数据都会存在CommitLogahrefhttps:www。bs178。comrizhitargetblankclassinfotextkey日志a文件中2、消息内容不是定长的3、单个文件大小默认1G文件名长度为20位左边补零剩余为起始偏移量比如第一个文件名是00000000000000000000起始偏移量为0文件大小为1G1073741824当第一个文件写满了第二个文件为00000000001073741824起始偏移量为1073741824ConsumeQueue(消息消费队列)
  主要是为了提高消息消费的性能
  消费者通过消息消费队列ConsumeQueue(作为索引)来查找消费的消息
  消费队列ConsumeQueue(索引)内容
  ConsumeQueue(逻辑消费队列)作为消费消息的索引保存了指定Topic下的队列消息在CommitLog中的起始物理偏移量offset(8个字节)消息大小size和(4个字节)消息Tag的HashCode值(8个字节)每个条目定长20个字节单个文件有30W个条目可以像数组一样随机访问每个条目每个ConsumeQueue文件大约5。72M
  consumequeue文件夹的组织方式topicqueuefile三层组织结构
  具体存储路径HOMEstoreconsumequeue{topic}{queueId}{fileName}IndexFile(索引文件)
  通过key或时间区间来查询消息1、存储位置HOMEstoreindex{fileName}2、文件名以创建时的时间戳命名的3、文件大小单个文件约为400M可以存储2000W个索引存储结构
  Broker是混合型存储结构
  单个broker所有队列共用一个ahrefhttps:www。bs178。comrizhitargetblankclassinfotextkey日志a文件
  索引和数据分离的存储结构
  生产者和消费者使用索引和数据相分离的存储结构
  整体流程
  1、Producer发送消息至Broker端
  2、Broker端使用同步或者异步的方式对消息刷盘持久化
  保存至CommitLog中
  3、Consumer拉取消息
  4、服务端也支持长轮询模式
  Broker允许等待30s的时间
  只要这段时间内有新消息到达
  将直接返回给消费端
  页缓存和内存映射页缓存(PageCache)是OS对文件的缓存
  用于加速对文件的读写
  程序对文件进行顺序读写的速度几乎接近于内存的读写速度
  主要原因就是由于OS使用PageCache机制对读写访问操作进行了性能优化
  将一部分的内存用作PageCache
  对于数据的写入
  OS会先写入至Cache内
  随后通过异步的方式由pdflush内核线程将Cache内的数据刷盘至物理磁盘上
  对于数据的读取如果一次读取文件时出现未命中PageCache的情况OS从物理磁盘上访问读取文件的同时会顺序对其他相邻块的数据文件进行预读取
  消费队列的读性能几乎接近读内存的原因
  在消息堆积的情况下也不会影响性能存储的数据较少pagecache机制预读取顺序读取
  消息存储的日志数据文件CommitLog的读取会严重影响性能
  读取消息内容会产生较多的随机访问读取
  如何提升随机读性能在块存储采用SSD的话选择合适的系统IO调度算法比如Deadline算法随机读的性能会有所提升文件的读写操作传统的IO方式
  传统的IO方式
  用户态空间的进程要读写磁盘文件
  需要经过内核空间
  用户进程访问内核空间的缓存
  如果没有的话则读取磁盘文件
  用户进程写入文件先写入内核空间的socket缓存
  再通过网卡写入到磁盘
  经过2次DMA拷贝2次CPU拷贝
  4次上下文切换
  RocketMQmmapwrite
  1、页缓存是对磁盘数据的缓存2、用户先读取页缓存如果没有数据则读取磁盘根据局部性原理将相邻磁盘块读入页缓存3、用户将数据写入页缓存异步线程将小的写入操作合并成大的写入然后刷入磁盘4、顺序写入磁盘磁头几乎不用换道5、异步刷盘容易丢失数据a、可以同步刷盘但性能低b、一般采用多副本机制保证消息的可靠6、数据追加到ahrefhttps:www。bs178。comrizhitargetblankclassinfotextkey日志a文件的尾部老的消息无法更改
  mmap利用内存映射文件来避免拷贝
  用户空间可以通过映射地址加偏移量的方式直接操作内核空间的页缓存避免了内核态再拷贝到用户态
  rocketmq采用mmapwrite方式实现文件读写操作
  产生2次DMA拷贝1次CPU拷贝4次上下文切换通过内存映射减少了一次CPU拷贝可以减少内存使用适合大文件的传输对比Kafafasendfile
  sendfile
  1、用户进程通过sendfile()方法向操作系统发起调用上下文从用户态转向内核态2、DMA控制器把数据从硬盘中拷贝到读缓冲区3、CPU将读缓冲区中数据拷贝到socket缓冲区DMA控制器把数据从socket缓冲区拷贝到网卡上下文从内核态切换回用户态sendfile调用返回2次用户态和内核态的上下文切换3次拷贝sendfile方法IO数据对用户空间完全不可见所以只能适用于完全不需要用户空间处理的情况比如静态文件服务器
  sendfileDMAgather
  1、用户进程通过sendfile()方法向操作系统发起调用
  上下文从用户态转向内核态
  2、DMA控制器利用scatter把数据从硬盘中拷贝到读缓冲区离散存储
  3、CPU把读缓冲区中的文件描述符和数据长度发送到socket缓冲区
  4、DMA控制器根据文件描述符和数据长度
  使用scattergather把数据从内核缓冲区拷贝到网卡
  5、sendfile()调用返回,上下文从内核态切换回用户态
  DMAgather和sendfile一样数据对用户空间不可见
  而且需要硬件支持
  同时输入文件描述符只能是文件
  但是过程中完全没有CPU拷贝过程
  极大提升了性能
  产生2次DMA拷贝
  没有CPU拷贝
  而且也只有2次上下文切换

中华上下五千年女娲造人补天据说盘古去世之后,天地间一直是空荡荡的,一个人也没有。后来经过了许多年,才出现了一个人类的始祖,名叫女娲。这个女娲是个女的,她一个人孤独地生活在天地之间,感到太寂寞了,就想造出……初入职场如何选本?6千价位就选惠普VICTUS光影精灵8惠普VICTUS光影精灵8作为一款无界游戏本,在简约时尚的外观设计下,还拥有高能硬件配置组合,足以满足剪辑、建模和日常游戏的需求。最重要的是,这款游戏本还是一个极具性价比的选择……法新社大量发射卫星造成严重光污染天文学家没法正常工作了中国小康网03月21日讯老马周一,天文学家警告说,绕地球运行的卫星数量激增造成的光污染对全球自然构成了前所未有的威胁。卫星划过夜空法新社报道,自2019年以来,低地……悲壮的红五军团,两任军团长和三个军的首任首长为何都没获得军衔长征出发时,红一方面军曾下辖五个军团,分别是红一、红三、红五、红八和红九五个军团,其中红五军团堪称是最悲壮的一个军团,一直在执行最艰巨的殿后任务,而且在红军到达陕北后,由红五军……哈姆我们大部分时间都打得很好,我让球员牢记这种痛苦今日,湖人121125客场加时不敌凯尔特人。赛后,湖人主帅达尔文哈姆接受了采访。谈到常规时间最后一攻勒布朗詹姆斯被打手犯规未吹,哈姆说:我只能代表我自己说话,尽管你尽量不……隋唐时代的她们在临终前都留下了什么遗言生前怕水,归葬路中不要过河;儿子还年幼,希望丈夫能将他好好养大;因为信佛,不与丈夫合葬隋唐共326年,兰州大学历史文化学院副教授么振华从纷繁的史料中梳理出236条上至皇帝……定都天京后,手握实权的杨秀清,为何斗不过洪秀全?杨秀清斗不过洪秀全主要有三方面原因:一是洪秀全是天王,二是杨秀清轻视洪秀全,三是洪秀全有外援。接下来,我们一起来看看当时的具体情况。其一,洪秀全是天王。太平天……天眼早新闻2月20日头条又降温了!小雪中雪大雪雨夹雪冻雨未来三天一定要注意据贵州省气象台预计,未来三天冻雨、雨夹雪、小雪、中雪、大雪活跃在全省大部分地区,注意添衣保暖!冬奥……从歌姬逆袭成一国之母,却给太监生下两个儿子,走进赵姬传奇一生一个靠取悦男人谋生的歌姬,最后却成为了一国之母,她的地位虽然无比高贵,但是却同时侍奉三个男人,其中竟然还有着一个太监,他的儿子贵为千古一帝,却永远不知道自己的亲生父亲是谁,他就……毛主席曾总结说,我党存在四个问题,每一个都振聋发聩1927年4月12日,蒋介石发动了反革命政变,无数共产党人死于屠刀之下,轰轰烈烈的大革命失败了。这些血的教训,警醒了共产党人,如果没有自己的武装,天真地寄希望于反动势力占……第一次护法运动11913年,二次革命失败后,因受到袁世凯的通缉,孙中山再次流亡日本,这时,孙中山在想好好的二次革命,国民党怎么会如此焕散呢?对革命怎么进行得如此不彻底呢?于是,在1914年6月……不得不说周士第黄埔军校第一期的学生,最先脱颖而出的并不是胡宗南,也不是黄埔三杰中的蒋先云、贺衷寒、陈赓,而是李之龙和周士第。李之龙好像流星一般,划过一道耀眼的光芒,便迅速地消失在历史的……
气血不足的人容易白发丛生?常吃5种食物或有助补气养血导语:现在社会中有很多人因为压力大,年纪轻轻就长出了白头发,看起来既显老,也会大大折损形象,而且长出白头发也表明了身体健康出现问题,需要及时补充营养。长出白头发的原因有多……怎样做到按需哺乳?在宝宝饥饿时进行哺乳观察宝宝,宝宝出现饥饿性啼哭或者小嘴表现出吮吸动作,四处寻找乳头,迫不及待地想要吃奶时喂奶。这里需要注意的是,宝宝哭泣不一定是饿了,还有可能是不……荷兰本土牛栏奶粉,怎么样?国行版诺优能,配方好不好?问:更建议买荷兰本土版牛栏还是国行版诺优能?荷兰牛栏奶粉属于达能集团旗下产品,有100多年的历史,占据荷兰婴儿奶粉市场74市场份额,从未出现过任何奶粉质量问题,也是荷兰最……不同年龄段,生娃有什么影响?20多岁生孩子和30多岁生孩子有什么区别?事实上,有四个主要区别。第一次生育的女年龄在2024岁一年内怀孕的概率在85左右30岁甚至35岁之后,概率明显下降甚至达到50左右第二……最大续航240公里!2款很能跑的电动车,速度特别快,回头率很一辆电动车,你是在乎车的速度,还是在乎续航里程?还是更在意外观颜值?可以肯定地说,大部分人对这三个方面都在乎。但一辆电动车不可能那么完美,多少都有一些缺陷,要么是续航里程远,但……太阳系中的另一个地球,存在海洋和降雨,未来可能出现生命地球上的生命多种多样,不同的环境促使生物进化出了不同的生存策略,特别是一些极端环境中生物的能力会超乎人类的想象,比如赤道周围和地球的两极气候十分极端,生活在这里的动物竞争压力很……飞机突然颠簸下坠,持续十几分钟!有乘客边哭边写遗言来源:【昆明日报掌上春城】近日,两个从西藏拉萨出发的国内航班均出现较强烈的颠簸和下坠,乘客在高空中纷纷发出尖叫,有人拍下视频事后发到网上,引起网友关注。12日,一位历经了……突破151亿!阿里的好印象在回归,人民日报的提醒奏效了?2022生机大会突破151亿!阿里的好印象在回归,人民日报的提醒奏效了?为了有效的刺激经济增长点,在过去的20年时间里,互联网产业迎来了野蛮发展,缺乏相对应的管控,……武陵源最美农村路激活乡村旅游插园公路火爆出圈,超20万人网络围观武陵源最美农村路激活乡村旅游华声在线9月27日讯(全媒体记者田育才通讯员李鹏飞吴勇兵)一条彩虹公路蜿蜒于乡村山野间,充电设施、休……不喜欢iPhone烦人半屏!教你3个步骤关闭它iPhone的确有很多功能让果粉赞不绝口,但也有一些功能让大家觉得有点烦或不会经常用它,就像每次只要在屏幕下拉就会出现半屏,其实是可以这样关闭掉哦!iPhone的半屏功能……春养肝,夏养心,春季养肝要做到这几点中医讲究春养肝、夏养心、秋养肺、冬养肾,顺应四季的变化,对身体保健。春天万物复苏,此时养生应从冬季的冬藏转变为春生,春季人体的新陈代谢比较旺盛,阳气升发,与春之阳气相应。……军事要地之东京汴梁开封开封市,简称汴,古称汴州、汴梁、汴京,河南省辖地级市,国务院批复确定的中国中原城市群核心区的中心城市之一、文化旅游城市。开封市地处中国华中地区、河南东部、中原腹地、黄河之……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网