【技术实现步骤摘要】
一种资源调整策略确定方法和装置
本申请涉及网络
,特别是涉及一种资源调整策略确定方法和装置。
技术介绍
消息中间件是基于队列与消息传递,在网络中提供同步或异步、可靠的消息传输的支撑性软件系统。例如,Kafka(卡夫卡)集群是一种支持分区和多副本的消息中间件,且支持基于Zookeeper协调的分布式消息系统,其可以运行在一台或者多台服务器上,并基于主题(Topic)对存储的数据进行分类。Kafka集群的节点(Broker)可以以消息队列的方式存储消息,一个消息队列对应主题的一个分区(Partition)。生产者可以将消息发送至分区中,相应的,消费者则可以从分区中获取消息进行处理。在实际应用中,针对Kafka集群,可以开启多个消费任务,并为每一消费任务分配资源(例如,内存,CPU),每一消费任务对应一个主题的所有分区,也就是说,该消费任务可以基于分配的资源从对应的主题的分区中获取消息,并进行处理。
技术实现思路
本申请实施例的目的在于提供一种资源调整策略确定方法和装置,能够有效地调整目标 ...
【技术保护点】
1.一种资源调整策略确定方法,其特征在于,所述方法包括:/n确定目标消费任务在目标集群中对应的分区,作为目标分区;/n针对预设的每一统计周期,确定该统计周期内所述目标分区中所述目标消费任务最后处理的消息的偏移量,作为处理偏移量;/n计算该统计周期的处理偏移量与前一统计周期的处理偏移量之间的差值,作为偏移量差值;/n计算所述偏移量差值与该统计周期的时长的比值,作为该统计周期内所述目标消费任务处理消息的消息处理速度;/n基于所述消息处理速度,确定用于调整所述目标消费任务所占用的资源的资源调整策略。/n
【技术特征摘要】
1.一种资源调整策略确定方法,其特征在于,所述方法包括:
确定目标消费任务在目标集群中对应的分区,作为目标分区;
针对预设的每一统计周期,确定该统计周期内所述目标分区中所述目标消费任务最后处理的消息的偏移量,作为处理偏移量;
计算该统计周期的处理偏移量与前一统计周期的处理偏移量之间的差值,作为偏移量差值;
计算所述偏移量差值与该统计周期的时长的比值,作为该统计周期内所述目标消费任务处理消息的消息处理速度;
基于所述消息处理速度,确定用于调整所述目标消费任务所占用的资源的资源调整策略。
2.根据权利要求1所述的方法,其特征在于,在基于所述消息处理速度,确定用于调整所述目标消费任务所占用的资源的资源调整策略之前,所述方法还包括:
获取该统计周期内所述目标分区中最后写入的消息的偏移量,作为写入偏移量;
所述基于所述消息处理速度,确定用于调整所述目标消费任务所占用的资源的资源调整策略,包括:
基于所述处理偏移量、所述写入偏移量和所述消息处理速度,计算当前统计周期内所述目标消费任务的平衡时延,其中,一个统计周期内的平衡时延表示:基于该统计周期内所述目标分区的消息写入速度和消息处理速度,所述目标消费任务达到处理瓶颈的时长;
如果当前统计周期内的平衡时延为0,且当前统计周期之前的第一历史时间段内所述目标消费任务提交的消息的偏移量不变,则确定基于第一资源调整策略调整所述目标消费任务所占用的资源,其中,所述第一资源调整策略包括:按照第一预设比值释放已为所述目标消费任务分配的资源。
3.根据权利要求2所述的方法,其特征在于,在获取该统计周期内所述目标分区中最后写入的消息的偏移量,作为写入偏移量之后,所述方法还包括:
基于所述处理偏移量、所述写入偏移量和所述消息处理速度,计算当前统计周期内所述目标消费任务的处理时延,其中,一个统计周期内的处理时延表示:所述目标消费任务以该统计周期内的消息处理速度处理完所述目标分区中的待处理消息所需的时长;
如果当前统计周期内的平衡时延与所述目标分区中消息的生命周期的比值,大于第二预设比值,且当前统计周期内的处理时延不大于所述生命周期,则确定基于第二资源调整策略调整所述目标消费任务所占用的资源;其中,所述第二资源调整策略包括:保持已为所述目标消费任务分配的资源不变。
4.根据权利要求3所述的方法,其特征在于,在基于所述处理偏移量、所述写入偏移量和所述消息处理速度,计算当前统计周期内所述目标消费任务的处理时延之后,所述方法还包括:
基于所述消息处理速度,计算各个统计周期内所述目标消费任务的处理加速比;其中,一个统计周期内的处理加速比表示:该统计周期内所述目标消费任务的消息处理速度,相对于前一统计周期内所述目标消费任务的消息处理速度的变化率;
如果满足第一预设条件,则确定基于第三资源调整策略调整所述目标消费任务所占用的资源;其中,所述第三资源调整策略包括:按照第三预设比值释放已为所述目标消费任务分配的资源;
所述第一预设条件包括以下任一项:
当前统计周期内的平衡时延小于第一时长阈值,且当前统计周期内的处理时延大于第二时长阈值,所述第二时长阈值大于所第一时长阈值;
当前统计周期内的平衡时延小于第一时长阈值、当前统计周期内所述目标消费任务处理的消息的数量小于预设数目,且当前统计周期之前的第二历史时间段内的处理加速比逐渐降低至-1;
当前统计周期内的平衡时延小于第一时长阈值、当前统计周期内所述目标消费任务处理的消息的数量小于预设数目、当前统计周期之前的第二历史时间段内的处理加速比逐渐减小,且当前统计周期之前的第三历史时间段内的处理加速比在[-1,0]的范围内振荡变化,其中,所述第三历史时间段晚于所述第二历史时间段,且与所述第二历史时间段相邻。
5.根据权利要求4所述的方法,其特征在于,在基于所述消息处理速度,计算各个统计周期内所述目标消费任务的处理加速比之后,所述方法还包括:
判断是否满足第二预设条件,所述第二预设条件包括以下任一项:
当前统计周期之前的第四历史时间段内的处理加速比不小于0;当前统计周期之前的第四历史时间段内的处理加速比在[-M,M]的范围内振荡变化;当前统计周期内的消息处理速度与目标消息处理速度的差值不小于速度阈值,其中,所述目标消息处理速度为:除当前统计周期外的其他统计周期内的消息处理速度的最大值;
如果满足第二预设条件,则在当前统计周期内的处理时延小于第三时长阈值,且在当前统计周期之前的第四历史时间段内的平衡时延与所述生命周期的比值,小于第四预设比值的情况下,确定基于第四资源调整策略调整所述目标消费任务所占用的资源和/或显示第一提醒消息,以提醒用户提高所述目标分区的消息写入速度;其中,所述第四资源调整策略包括:按照第五预设比值释放已为所述目标消费任务分配的资源;所述第四预设比值小于所述第二预设比值;
如果满足第二预设条件,则在当前统计周期内的平衡时延小于0,且在当前统计周期之前的第四历史时间段内,处理时延逐渐增大,且平衡时延逐渐减小的情况下,确定基于第五资源调整策略调整所述目标消费任务所占用的资源;其中,所述第五资源调整策略包括:按照预设倍数增加为所述目标消费任务分配的资源。
6.根据权利要求2所述的方法,其特征在于,在获取该统计周期内所述目标分区中最后写入的消息的偏移量,作为写入偏移量之后,所述方法还包括:
针对每一统计周期,获取该统计周期内所述目标分区中有效消息的起始偏移量;其中,所述有效消息表示未达到生命周期的消息;
基于所述起始偏移量和所述写入偏移量,计算该统计周期所述目标分区的有效消息量;
在所述目标分区中存储的消息不存在生命周期的情况下,基于各个统计周期的有效消息量的变化情况,确定有效消息量保持不变的第五历史时间段,并显示包含所述第五历史时间段的第二提醒消息;
在所述目标分区中存储的消息存在生命周期的情况下,基于各个统计周期的有效消息量的变化情况,确定有效消息量的变化率大于预设变化率的第六历史时间段,并显示包含所述第六历史时间段的第三提醒消息。
7.一种资源调整策略确定装置,其特征在于,所述装置包括:
目标分区确定模块,用于确定目标消费任务在目标集群中对应的分区,作为目标分区;
处理偏移量确定模块,用于针对预设的每一统计周期,确定该统计周期内所述目标分区中所述目标消费任务最后处理的消息的偏移量,作为处理偏移量;
偏移量差值计算模块,用于计算该统计周期的处理偏移量与前一统计周期的处理偏移量之间的差值,作为偏移量差值;
消息处理...
【专利技术属性】
技术研发人员:宋尧,
申请(专利权)人:新华三大数据技术有限公司,
类型:发明
国别省市:河南;41
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。