当前位置:主页 > 科技论文 > 计算机论文 >

面向云服务的分布式消息系统负载均衡策略

发布时间:2024-03-16 01:23
  针对云服务下分布式消息系统存在的节点间负载倾斜问题,提出基于副本角色的动态负载均衡策略,并将算法应用于Apache Kafka分布式流平台中。基于消息系统的主要功能为读写及存储消息,算法以CPU、磁盘、网络读写流量为节点的主要负载因素,并根据不同的负载类型提出相应的首领角色迁移策略和副本迁移策略。从时间代价、空间代价、服务可用性等多个角度论证该算法的可行性,并讨论算法中涉及参数对算法执行效果的影响。经实验验证,所提算法能够实现集群中各节点的资源使用量均不大于规定阈值,并且与缺省系统相比,集群CPU占用率均方差下降72.1%,磁盘占用率均方差下降86.1%,网络流入速度均方差下降79.2%,网络流出速度均方差下降63.9%,优化效果显著。

【文章页数】:7 页

【部分图文】:

图1Kafka的架构

图1Kafka的架构

如图1所示,Kafka的架构主要由4部分组成:生产者、代理(Broker)、消费者,以及通过Zookeeper[16]集群来维护部分元数据信息。生产者主动(push)发布消息到代理节点,消费者主动从代理节点中拉取(pull)消息进行消费。每一条消息都会属于一个主题,一个主题实际就....


图2Kafka的多副本机制

图2Kafka的多副本机制

图1Kafka的架构Kafka原生的负载均衡策略使用静态的轮询(Round-Robin)算法,即轮询所有分区,将每个分区的所有副本分配在不同的代理节点上。设代理节点总数为N,具体算法如下:


图3负载均衡算法流程图

图3负载均衡算法流程图

负载均衡算法的流程图如图3所示。一个集群能够被判定为负载均衡,应同时满足以下两个目标。


图4原策略下各代理节点的负载情况

图4原策略下各代理节点的负载情况

如图3(a)所示,原系统使用的分区轮询策略对磁盘占用率不均衡的问题的影响较为明显。其中,Broker1的磁盘负载最高,P1-P10时刻Broker1的磁盘占用率均大于70%,且在P4时刻Broker1的磁盘占用量大于阈值80%,而负载较低的Broker5和Broker6在P1-P....



本文编号:3928903

资料下载
论文发表

本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/3928903.html


Copyright(c)文论论文网All Rights Reserved | 网站地图

版权申明:资料由用户291af***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱[email protected]