一种分布式系统的内存资源清理方法及装置制造方法及图纸

技术编号:21798694 阅读:21 留言:0更新日期:2019-08-07 10:24
本发明专利技术实施例公开了一种分布式系统的内存资源清理方法及装置,方法包括:获取分布式系统中各分布式任务的保持事件数量和各分布式任务对应进程的已使用内存;若根据所述保持事件数量和所述已使用内存判断需要执行内存资源占用清理,则获取删除事件策略;根据所述删除事件策略对有序时间槽内存储的内存资源进行清理操作。本发明专利技术实施例通过保持事件数量和已使用内存来判断是否需要执行内存资源占用清理,需要清理时,根据删除事件策略对有序时间槽内存储的内存资源进行清理操作,能够及时对分布式系统内占用的内存资源进行清理,保证分布式系统的性能。

A Memory Resource Cleaning Method and Device for Distributed System

【技术实现步骤摘要】
一种分布式系统的内存资源清理方法及装置
本专利技术实施例涉及计算机
,具体涉及一种分布式系统的内存资源清理方法及装置。
技术介绍
现有系统中各任务的内存资源清理均是通过单机实现。但是,随着数据量逐渐增大,单机系统无法满足需求,需要采用分布式系统。然而,在应用越来越广泛的分布式系统中,各“分布式任务”运行在分布式系统的多台计算机的多个进程中,随着分布式系统的运行时间越来越长,分布式任务也越来越多,需要对部分任务的事件进行清理,否则将导致分布式系统的性能越来越低。现有的单机内存资源清理方式无法对分布式系统的事件进行清理,从而导致分布式系统的性能越来越低。
技术实现思路
由于现有方法存在上述问题,本专利技术实施例提出一种分布式系统的内存资源清理方法及装置。第一方面,本专利技术实施例提出一种分布式系统的内存资源清理方法,包括:获取分布式系统中各分布式任务的保持事件数量和各分布式任务对应进程的已使用内存;若根据所述保持事件数量和所述已使用内存判断需要执行内存资源占用清理,则获取删除事件策略;根据所述删除事件策略对有序时间槽内存储的内存资源进行清理操作。第二方面,本专利技术实施例还提出一种分布式系统的内存资源清理装置,包括:数据获取模块,用于获取分布式系统中各分布式任务的保持事件数量和各分布式任务对应进程的已使用内存;策略获取模块,用于若根据所述保持事件数量和所述已使用内存判断需要执行内存资源占用清理,则获取删除事件策略;资源清理模块,用于根据所述删除事件策略对有序时间槽内存储的内存资源进行清理操作。第三方面,本专利技术实施例还提出一种电子设备,包括:至少一个处理器;以及与所述处理器通信连接的至少一个存储器,其中:所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行上述方法。第四方面,本专利技术实施例还提出一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机程序,所述计算机程序使所述计算机执行上述方法。由上述技术方案可知,本专利技术实施例通过保持事件数量和已使用内存来判断是否需要执行内存资源占用清理,需要清理时,根据删除事件策略对有序时间槽内存储的内存资源进行清理操作,能够及时对分布式系统内占用的内存资源进行清理,保证分布式系统的性能。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些图获得其他的附图。图1为本专利技术一实施例提供的一种分布式系统的内存资源清理方法的流程示意图;图2为本专利技术一实施例提供的一种内存资源占用采集的流程示意图;图3为本专利技术一实施例提供的一种内存资源占用清理的流程示意图;图4为本专利技术一实施例提供的一种分布式系统的内存资源清理装置的结构示意图;图5为本专利技术一实施例提供的电子设备的逻辑框图。具体实施方式下面结合附图,对本专利技术的具体实施方式作进一步描述。以下实施例仅用于更加清楚地说明本专利技术的技术方案,而不能以此来限制本专利技术的保护范围。图1示出了本实施例提供的一种分布式系统的内存资源清理方法的流程示意图,包括:S101、获取分布式系统中各分布式任务的保持事件数量和各分布式任务对应进程的已使用内存。其中,在当前的分布式系统中,各分布式任务运行在多台计算机的多个进程中。每个分布式任务均有唯一的任务标识,以区别于分布式系统中的其它分布式任务,且各个分布式任务的计算性能的保护相互独立,即按照分布式任务为单位进行计算性能的保护。所述保持事件数量为有序时间槽内当前运行的分布式任务的事件数量。所述已使用内存有序时间槽内当前运行的分布式任务对应的进程使用的内存。S102、若根据所述保持事件数量和所述已使用内存判断需要执行内存资源占用清理,则获取删除事件策略。其中,删除事件策略drop.events.strategy用于配置保持事件数量和已使用内存均满足特定标准时,删除有序时间槽内存储的内存资源的计算事件的策略,可以配置为oldest或latest。oldest表示删除最旧任务计算事件,latest表示删除最新任务计算事件。S103、根据所述删除事件策略对有序时间槽内存储的内存资源进行清理操作。其中,所述有序时间槽为存储所有内存资源的单元。需要说明的是,本实施例中的分布式任务仅包含保持事件集合的窗口任务,因为窗口任务按照“有序时间槽”存储事件集合;对于处理流式数据(单一事件)的分布式任务,本实施例不作讨论。本实施例通过保持事件数量和已使用内存来判断是否需要执行内存资源占用清理,需要清理时,根据删除事件策略对有序时间槽内存储的内存资源进行清理操作,能够及时对分布式系统内占用的内存资源进行清理,保证分布式系统的性能。进一步地,在上述方法实施例的基础上,S102中所述根据所述保持事件数量和所述已使用内存判断需要执行内存资源占用清理,具体包括:若所述保持事件数量大于事件数量阈值,或,所述已使用内存大于内存阈值,则确定需要执行内存资源占用清理。其中,所述事件数量阈值用于配置有序时间槽内的窗口任务的保持事件数量的最大值,单位是个,如100000000个。当窗口任务的保持事件数量达到此值,说明此任务是热点任务。所述内存阈值用于配置执行内存资源占用清理时,内存资源需达到的最小内存大小,单位是字节(B),如1073741824B。当窗口任务占用内存大小达到此值,说明此任务是热点任务。举例来说,事件数量阈值为100000000个,内存阈值为1073741824B:若有序时间槽内的窗口任务的保持事件数量为200000000个,内存阈值为73741824B,则需要执行内存资源占用清理;若有序时间槽内的窗口任务的保持事件数量为20000000个,内存阈值为1173741824B,则需要执行内存资源占用清理;若有序时间槽内的窗口任务的保持事件数量为200000000个,内存阈值为1173741824B,则需要执行内存资源占用清理;若有序时间槽内的窗口任务的保持事件数量为20000000个,内存阈值为73741824B,则不需要执行内存资源占用清理。通过实时采集分布式任务的内存资源使用情况,即各分布式任务的保持事件数量和各分布式任务对应进程的已使用内存,并根据保持事件数量和已使用内存进行实时判断,能够在满足阈值条件时,立刻执行内存资源占用清理,优雅降级热点分布式任务的计算性能,保证系统的正常运行。进一步地,在上述方法实施例的基础上,S103具体包括:S1031、获取所述有序时间槽内的事件总数,并根据所述删除事件比例和所述事件总数计算得到删除事件数量。S1032、若所述删除事件策略为删除最旧任务计算事件,则对所述有序时间槽内最旧的所述删除事件数量的事件进行清理操作。S1033、若所述删除事件策略为删除最新任务计算事件,则对所述有序时间槽内最新的所述删除事件数量的事件进行清理操作。其中,删除事件比例drop.events.ratio用于配置保持事件数量和已使用内存均满足特定标准时,所删除的有序时间槽内存储的内存资源的任务计算事件的比例,如0.1。在具体执行本实施例的过程中,通过内存资源保护配置、内存资源占用采集、内存资源占用清理三本文档来自技高网...

【技术保护点】
1.一种分布式系统的内存资源清理方法,其特征在于,包括:获取分布式系统中各分布式任务的保持事件数量和各分布式任务对应进程的已使用内存;若根据所述保持事件数量和所述已使用内存判断需要执行内存资源占用清理,则获取删除事件策略;根据所述删除事件策略对有序时间槽内存储的内存资源进行清理操作。

【技术特征摘要】
1.一种分布式系统的内存资源清理方法,其特征在于,包括:获取分布式系统中各分布式任务的保持事件数量和各分布式任务对应进程的已使用内存;若根据所述保持事件数量和所述已使用内存判断需要执行内存资源占用清理,则获取删除事件策略;根据所述删除事件策略对有序时间槽内存储的内存资源进行清理操作。2.根据权利要求1所述的方法,其特征在于,所述根据所述保持事件数量和所述已使用内存判断需要执行内存资源占用清理,具体包括:若所述保持事件数量大于事件数量阈值,或,所述已使用内存大于内存阈值,则确定需要执行内存资源占用清理。3.根据权利要求1所述的方法,其特征在于,所述删除事件策略包括删除最旧任务计算事件或删除最新任务计算事件。4.根据权利要求3所述的方法,其特征在于,所述根据所述删除事件策略对有序时间槽内存储的内存资源进行清理操作,具体包括:获取所述有序时间槽内的事件总数,并根据所述删除事件比例和所述事件总数计算得到删除事件数量;若所述删除事件策略为删除最旧任务计算事件,则对所述有序时间槽内最旧的所述删除事件数量的事件进行清理操作;若所述删除事件策略为删除最新任务计算事件,则对所述有序时间槽内最新的所述删除事件数量的事件进行清理操作。5.一种分布式系统的内存资源清理装置,其特征在于,包括:数据获取模块,用于获取分布式系统中各分布式任务的保持事件数量和各分布式任务对应进程的已使用内存;策略...

【专利技术属性】
技术研发人员:覃永靖程诗尧王彬
申请(专利权)人:北京奇安信科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1