CN116301626A - 一种缓存资源管理方法、装置及设备 - Google Patents

一种缓存资源管理方法、装置及设备 Download PDF

Info

Publication number
CN116301626A
CN116301626A CN202310271469.8A CN202310271469A CN116301626A CN 116301626 A CN116301626 A CN 116301626A CN 202310271469 A CN202310271469 A CN 202310271469A CN 116301626 A CN116301626 A CN 116301626A
Authority
CN
China
Prior art keywords
cache
resource
target application
cache resource
resources
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310271469.8A
Other languages
English (en)
Inventor
尹呈
郑辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN202310271469.8A priority Critical patent/CN116301626A/zh
Publication of CN116301626A publication Critical patent/CN116301626A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • G06F3/0641De-duplication techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本说明书实施例中公开了一种缓存资源管理方法、装置及设备。该方案可以包括:根据获取到的目标应用处的资源访问记录信息,确定出所述目标应用的缓存资源使用指标,其中,所述缓存资源使用指标用于反映在预设历史时间段内针对所述目标应用处的缓存资源集合的整体使用情况;从而可以利用所述缓存资源使用指标,生成所述目标应用的缓存健康状况评估结果,进而可以基于所述缓存健康状况评估结果,对所述目标应用处的缓存资源进行管理。

Description

一种缓存资源管理方法、装置及设备
技术领域
本申请涉及缓存资源管理技术领域,尤其涉及一种缓存资源管理方法、装置及设备。
背景技术
用户通过终端设备处的应用程序访问图片、视频等网络资源时,常会碰到加载慢、播放卡顿、白屏过长等问题,为优化用户体验,常用手段就是将用户即将访问或已访问的网络资源缓存至本地磁盘中,当用户真正访问或再次访问资源时就可以直接从本地加载,从而消除网络因素带来的不佳体验。但由于终端设备处的磁盘的存储空间有限,因此,需要对已缓存到磁盘中的资源进行选择性淘汰,以腾出存储空间来存放新的需要进行缓存的资源。
基于此,如何提升缓存资源管理的准确性及有效性成为了亟待解决的技术问题。
发明内容
本说明书实施例提供的一种缓存资源管理方法、装置及设备,可以从全局考虑,基于目标应用的缓存资源集合的整体使用情况,对所述目标应用处的缓存资源进行管理,可以提升缓存资源管理的准确性及有效性,进而减少缓存资源及网络资源的浪费。
为解决上述技术问题,本说明书实施例是这样实现的:
本说明书实施例提供的一种缓存资源管理方法,包括:
获取目标应用处的资源访问记录信息;
根据所述资源访问记录信息,确定所述目标应用的缓存资源使用指标;所述缓存资源使用指标用于反映在预设历史时间段内针对所述目标应用处的缓存资源集合的整体使用情况;
利用所述缓存资源使用指标,生成所述目标应用的缓存健康状况评估结果;
基于所述缓存健康状况评估结果,对所述目标应用处的缓存资源进行管理。
本说明书实施例提供的一种缓存资源管理装置,包括:
信息获取模块,用于获取目标应用处的资源访问记录信息;
指标确定模块,用于根据所述资源访问记录信息,确定所述目标应用的缓存资源使用指标;所述缓存资源使用指标用于反映在预设历史时间段内针对所述目标应用处的缓存资源集合的整体使用情况;
结果生成模块,用于利用所述缓存资源使用指标,生成所述目标应用的缓存健康状况评估结果;
资源管理模块,用于基于所述缓存健康状况评估结果,对所述目标应用处的缓存资源进行管理。
本说明书实施例提供的一种缓存资源管理设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
获取目标应用处的资源访问记录信息;
根据所述资源访问记录信息,确定所述目标应用的缓存资源使用指标;所述缓存资源使用指标用于反映在预设历史时间段内针对所述目标应用处的缓存资源集合的整体使用情况;
利用所述缓存资源使用指标,生成所述目标应用的缓存健康状况评估结果;
基于所述缓存健康状况评估结果,对所述目标应用处的缓存资源进行管理。
本说明书中提供的至少一个实施例能够实现以下有益效果:
目标应用基于其存储的缓存资源集合的整体使用情况,综合计算出缓存资源使用指标,再根据这些缓存资源使用指标得到针对目标应用的缓存健康状况评估结果,以基于缓存健康状况评估结果,对目标应用处的缓存资源进行管理。通过在缓存资源管理过程中,结合目标应用的缓存资源集合的整体使用情况,去进行全局考虑,有利于提升缓存资源管理的准确性及有效性。
除此之外,在对目标应用处的缓存资源进行管理时,不仅可以通过删除已有缓存资源,以释放缓存空间,还可以根据计算出的缓存资源使用指标来调整目标应用的缓存容量阈值,使得目标应用的缓存容量阈值更加合理,另外,还可以根据目标应用的缓存资源使用指标或缓存健康状况评估结果去参与资源缓存前的决策,减少无用资源的下载缓存,从而有利于减少缓存资源及网络资源的浪费。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书实施例提供的一种缓存资源管理方法的流程示意图;
图2为本说明书实施例提供的对应于图1中的一种缓存资源管理方法的泳道流程示意图;
图3为本说明书实施例提供的对应于图1的一种缓存资源管理装置的结构示意图;
图4为本说明书实施例提供的对应于图1的一种缓存资源管理设备的结构示意图。
具体实施方式
为使本说明书一个或多个实施例的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书一个或多个实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书一个或多个实施例保护的范围。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
现有技术中,对目标应用处的缓存资源进行管理时,主要依据的是目标应用的缓存容量阈值以及单一缓存资源自身的使用情况。例如,当目标应用处的缓存资源集合的资源总量大于目标应用的缓存容量阈值时,就选出最近一段时间内被使用频率较低的缓存资源,执行删除操作。这种缓存资源管理方案中,当目标应用的缓存容量阈值设置的不合理时,往往会导致闲置资源长期占用缓存空间的问题,或者,导致使用频率较高的资源也被频繁删除,而需要频繁下载这些资源的问题,影响缓存资源管理方案的准确性及有效性,也容易产生缓存资源及网络资源的浪费。
为了解决现有技术中的缺陷,本方案给出了以下实施例:
图1为本说明书实施例提供的一种缓存资源管理方法的流程示意图。从程序角度而言,该流程的执行主体可以为用户设备,或者,用户设备处搭载的目标应用处的应用程序。如图1所示,该流程可以包括以下步骤:
步骤102:获取目标应用处的资源访问记录信息。
在本说明书实施例中,目标应用可以是搭载在用户设备上的任意应用程序,对此不作具体限定。目标应用可以将用户即将访问或已访问的网络资源缓存至用户设备的存储空间,使这些网络资源成为目标应用处的缓存资源,以供用户使用。目标应用还可以预先将资源推荐信息对应的资源缓存下来,作为预推资源,以便用户想要访问这些预推资源时,可以直接从目标应用处的缓存资源中调取并使用。预推资源可以是用户在使用目标应用时,由该目标应用的服务端向用户推荐的一些网络资源。在实际应用中,用户不一定真的会去访问这些预推资源,只是相比于未推荐给用户的资源而言,用户对于这些预推资源的访问概率一般要更大一些。
在本说明书实施例中,资源访问记录信息可以用于反映用户对目标应用处的缓存资源集合中的各个资源的访问情况。所述资源访问记录信息可以包括由用户设备的操作系统、安全审计功能以及目标应用等,所记录和分析得到的用户对于目标应用处的缓存资源的操作记录及相关信息资料。例如,所述资源访问记录信息可以包括:针对目标应用处的缓存资源的资源标识、访问人员、访问设备、访问时间、操作记录等信息。通常情况下,用户每访问一次目标应用处的缓存资源,目标应用处的资源访问记录信息就可以更新一次。
在本说明书实施例中,获取目标应用处的资源访问记录信息的时间间隔可以根据实际需求进行设置和调整,例如,目标应用处的资源访问记录信息每更新一次就自动获取一次,也可以是每进行一次目标应用的缓存健康状况评估就获取一次,还可以是根据预设的时间间隔去获取(比如,每隔24小时获取一次),对此不作具体限定。
步骤104:根据所述资源访问记录信息,确定所述目标应用的缓存资源使用指标;所述缓存资源使用指标用于反映在预设历史时间段内针对所述目标应用处的缓存资源集合的整体使用情况。
在本说明书实施例中,所述目标应用的缓存资源使用指标可以包括:目标应用处的缓存资源访问率、所述目标应用处的新增缓存资源闲置率、所述目标应用处的历史缓存资源闲置率、所述目标应用处的缓存资源命中率、所述目标应用处的缓存资源集合的资源总量中的至少一种。可知,这些缓存资源使用指标反映的是目标应用处的缓存资源集合的整体使用情况。由于后续会对各个缓存资源使用指标的含义及生成原理进行解释,在此不作赘述。
在本说明书实施例中,所述预设历史时间段可以是从早于当前时间预设时长的时间点到当前时间之间的时间段。在实际应用中,预设历史时间段的时长可以根据实际需求设置,例如,可以设定为12小时、24小时、36小时等,对此不作具体限定。
在本说明书实施例中,目标应用处的缓存资源集合可以是目标应用处当前存储的所有缓存资源的集合,在这个集合中,可以根据缓存资源是否在所述预设历史时间段内被使用,而将缓存资源分为两种:一种是在预设历史时间段内被使用过的缓存资源,另一种是在预设历史时间段内未被使用过的缓存资源;除此之外,还可以根据缓存资源被存储的时间点,而将缓存资源分为两种:一种是在预设历史时间段之前被存储至目标应用处的缓存资源,一种是在预设历史时间段之内被存储至目标应用处的缓存资源。
在本说明书实施例中,由于是根据资源访问记录信息来确定的目标应用的缓存资源使用指标,而缓存资源使用指标反映的是在预设历史时间段内针对目标应用处的缓存资源集合的整体使用情况,所以,主要可以去获取在预设历史时间段内生成的资源访问记录信息,以计算出目标应用的缓存资源使用指标,从而有利于提升指标计算效率。
步骤106:利用所述缓存资源使用指标,生成所述目标应用的缓存健康状况评估结果。
在本说明书实施例中,目标应用的缓存健康状况可以反映目标应用的缓存资源对存储空间占用的合理性。目标应用的缓存健康状况评估结果可以通过缓存健康分的形式呈现,而缓存健康分的指示范围可以根据需求设置,例如,缓存健康分可以是百分制,也可以是十分制,还可以是千分制,对此不作具体限定。目标应用的缓存健康分在指示范围内越高,通常可以表示目标应用的缓存健康状况越好。例如,假定缓存健康分采用百分制,应用程序A的缓存健康分为95分,应用程序B的缓存健康分为70分,则通常可以说明应用程序A的缓存健康状况比应用程序B的缓存健康状况好,应用程序A的缓存资源对存储空间占用情况相较于应用程序B的缓存资源对存储空间占用情况的合理性要更高一些。
在本说明书实施例中,利用缓存资源使用指标,生成目标应用的缓存健康状况评估结果可以有两种实现方式,一种可以是利用聚类模型,将缓存资源使用指标作为聚类模型的输入,以得到聚类模型输出的对应的聚类结果,再基于聚类模型输出的聚类结果得到目标应用的缓存健康分,另一种可以是根据预先针对各个缓存资源使用指标设置的预设权重,去计算得到目标应用的缓存健康分,对此将在后续实施例中进一步进行解释,在此不作赘述。
步骤108:基于所述缓存健康状况评估结果,对所述目标应用处的缓存资源进行管理。
在本说明书实施例中,在得到目标应用的缓存健康分后,则可以对目标应用处的缓存资源进行管理。例如,可以对将要缓存至目标应用处的预推资源进行管理,或者,还可以对目标应用处已缓存的资源进行淘汰管理等。从而既能减少从资源推荐信息对应的预推资源中实际缓存至目标应用处的资源的资源量,以从源头治理缓存问题,又能减少目标应用处已有的缓存资源对存储空间的占用,从而释放出利用率较低的缓存资源所浪费的存储资源。
图1中的方法,目标应用基于其存储的缓存资源集合的整体使用情况,综合计算出缓存资源使用指标,再根据这些缓存资源使用指标得到针对目标应用的缓存健康状况评估结果,再基于缓存健康状况评估结果,对目标应用处的缓存资源进行管理,提升了缓存资源管理的有效性和准确性。
基于图1中的方法,本说明书实施例还提供了该方法的一些具体实施方案,下面进行说明。
在本说明书实施例中,缓存资源使用指标中的缓存资源访问率、新增缓存资源闲置率、历史缓存资源闲置率、缓存资源命中率等指标都可以根据资源访问记录信息计算得到。
对应的,图1中的方法,步骤104中,所述根据所述资源访问记录信息,确定所述目标应用的缓存资源使用指标,具体可以包括:
根据所述资源访问记录信息,计算所述目标应用处的缓存资源访问率;所述缓存资源访问率为所述缓存资源集合中的第一缓存资源的资源量与所述缓存资源集合的资源总量之商,所述第一缓存资源为所述缓存资源集合中的在所述预设历史时间段内被使用过的缓存资源。
和/或,根据所述资源访问记录信息,计算所述目标应用处的新增缓存资源闲置率;所述新增缓存资源闲置率为所述缓存资源集合中的第二缓存资源的资源量与所述缓存资源集合的资源总量之商,所述第二缓存资源为所述缓存资源集合中的在所述预设历史时间段内被存储至所述目标应用处且未被使用过的缓存资源。
和/或,根据所述资源访问记录信息,计算所述目标应用处的历史缓存资源闲置率;所述历史缓存资源闲置率为所述缓存资源集合中的第三缓存资源的资源量与所述缓存资源集合的资源总量之商,所述第三缓存资源为所述缓存资源集合中的在所述预设历史时间段之前被存储至所述目标应用处,且在所述预设历史时间段内未被使用过的缓存资源。
和/或,根据所述资源访问记录信息,计算所述目标应用处的缓存资源命中率。所述缓存资源命中率可以表示用户访问资源时命中缓存资源的次数与用户访问资源的总次数的比值,其中,用户访问某资源时,如果该资源已经被缓存在本地的存储空间,可以直接通过缓存获取到此资源,则可以叫做命中了缓存资源。通常来讲,缓存资源命中率越高则表示使用缓存资源带来的收益越高,目标应用的性能通常会越好(例如,响应时间越短、吞吐量越高等),抗并发的能力也会越强。
在本说明书实施例中,缓存资源集合的资源总量这个指标同样是一项重要的缓存资源使用指标,并且缓存资源访问率、新增缓存资源闲置率等指标的计算也都用到了缓存资源集合的资源总量这个指标。
基于此,图1中的方法,步骤104中,所述目标应用的缓存资源使用指标还可以包括:所述缓存资源集合的资源总量。
在本说明书实施例中,缓存资源集合的资源总量可以从资源访问记录信息中获取,也可以通过其他的渠道获取,对此不作具体限定。具体的,所述目标应用的缓存资源集合的资源总量可以通过目标应用处的所有缓存资源占用的存储空间来表示,例如,若应用程序A的所有缓存资源占用的存储空间为500MB,则应用程序A的缓存资源集合的资源总量可以为500MB。
在本说明书实施例中,在计算出目标应用处的缓存资源访问率以及历史缓存资源闲置率后,可以根据这两个指标调整目标应用的缓存容量阈值,以使得目标应用的缓存容量阈值更合理,除此之外,还可以根据计算出的目标应用处的新增缓存资源闲置率去参与预推资源缓存前的决策,以从源头去减少将利用率较低的资源缓存至本地。
基于此,图1中的方法,步骤104中,所述根据所述资源访问记录信息,确定所述目标应用的缓存资源使用指标之后,还可以包括:
若计算得到所述目标应用处的缓存资源访问率,则判断所述缓存资源访问率是否大于第一阈值,得到第一判断结果。
若所述第一判断结果表示所述缓存资源访问率大于第一阈值,则生成第一指令;所述第一指令用于指示增大所述目标应用的缓存容量阈值。
若所述第一判断结果表示所述缓存资源访问率小于等于第一阈值,则禁止生成第一指令。
若计算得到所述目标应用处的新增缓存资源闲置率,则判断所述新增缓存资源闲置率是否大于第二阈值,得到第二判断结果。
若所述第二判断结果表示所述新增缓存资源闲置率大于第二阈值,则生成第二指令;所述第二指令用于指示减小允许从资源推荐信息所对应的资源中缓存至所述目标应用处的资源的资源量阈值。
若所述第二判断结果表示所述新增缓存资源闲置率小于等于第二阈值,则禁止生成第二指令。
若计算得到所述目标应用处的历史缓存资源闲置率,则判断所述历史缓存资源闲置率是否大于第三阈值,得到第三判断结果。
若所述第三判断结果表示所述历史缓存资源闲置率大于第三阈值,则生成第三指令;所述第三指令用于指示减小所述目标应用的缓存容量阈值。
若所述第三判断结果表示所述历史缓存资源闲置率小于等于第三阈值,则禁止生成第三指令。
在本说明书实施例中,第一阈值、第二阈值以及第三阈值都并非是一成不变的,可以根据实际需要对第一阈值、第二阈值以及第三阈值进行设置和调整,并且,这三个阈值之间互不影响,这三个阈值可以相同,也可以不同,对此不作具体限定。
在本说明书实施例中,若计算出的目标应用的缓存资源访问率大于第一阈值,则说明目标应用的缓存资源集合中的在预设历史时间段内被使用过的缓存资源,在缓存资源集合的资源总量中的占比过大,这种情况可能是目标应用的缓存容量阈值设置过小造成的,需要增大目标应用的缓存容量阈值。因此,若第一判断结果表示缓存资源访问率大于第一阈值,则可以生成用于指示增大目标应用的缓存容量阈值的第一指令。
在本说明书实施例中,若计算出的目标应用的新增缓存资源闲置率大于第二阈值,则说明目标应用的缓存资源集合中的在预设历史时间段内被存储至目标应用处且未被使用的缓存资源过多,这种情况可能是缓存的预推资源(资源推荐信息所对应的资源)的数量较大造成的,因此,需要抑制预推资源的缓存。基于此,若第二判断结果表示新增缓存资源闲置率大于第二阈值,则可以生成用于指示减小允许从资源推荐信息所对应的资源中缓存至所述目标应用处的资源的资源量阈值的第二指令。
在本说明书实施例中,若计算出的目标应用的历史缓存资源闲置率大于第三阈值,则说明目标应用的缓存资源集合中的在预设历史时间段之前被存储至目标应用处,且在预设历史时间段内未被使用过的缓存资源,在缓存资源集合的资源总量中的占比过大,这种情况可能是目标应用的缓存容量阈值设置过大造成的,需要减小目标应用的缓存容量阈值。因此,若第三判断结果表示历史缓存资源闲置率大于第三阈值,则可以生成用于指示减小目标应用的缓存容量阈值的第三指令。
在本说明书实施例中,在利用缓存资源使用指标,生成目标应用的缓存健康状况评估结果时,可以具有多种实现方式。其中,一种实现方式就是利用聚类模型去实现,而且为保证模型输出结果的准确性,所使用的聚类模型可以是预先利用训练样本训练过的。
基于此,图1中的方法,步骤106中,利用所述缓存资源使用指标,生成所述目标应用的缓存健康状况评估结果,具体可以包括:
利用训练后的聚类模型,对所述缓存资源使用指标进行处理,得到针对所述缓存资源使用指标的聚类结果;所述训练后的聚类模型是预先利用缓存资源使用指标样本集合对初始聚类模型进行无监督学习训练得到的。
从预先针对所述训练后的聚类模型的各个聚类中心点设置的预设缓存健康分中,确定出与所述聚类结果匹配的预设缓存健康分,得到所述目标应用的缓存健康分。
在本说明书实施例中,所述聚类模型可以是采用聚类算法搭建的模型,所谓的聚类可以是指将样本划分为由类似的对象组成的多个类的过程。聚类之后,就可以更加准确地在每个类中单独使用统计模型进行估计,分析或者预测,也可以研究不同类之间的差异。聚类算法常见的有K-means(K均值)聚类算法、系统聚类算法以及DBSCAN(density-basedspatial clustering ofapplications with noise,具有噪声的基于密度的聚类)算法等。
在本说明书实施例中,聚类模型可以采用K-means(K均值)聚类算法实现,或者,也可以采用其他聚类算法,对此不作具体限定。K-means(K均值)聚类算法是一种基于距离迭代求解的聚类分析算法,其步骤可以是:首先将样本集合中所有样本点分为K组,随机选取K个样本点作为初始的聚类中心点,然后计算每个样本点与各个聚类中心点之间的距离,最后把每个样本点分配给距离它最近的聚类中心点。其中,聚类中心点以及分配给它们的样本点就代表一个聚类。另外,每新分配一个样本点,聚类的聚类中心点就会根据聚类中现有的样本点被重新计算。
在本说明书实施例中,无监督学习可以是机器学习(Machine Learning)中的一种学习方式,无监督学习可以是指利用无标签的数据来学习数据的分布或者数据之间的关系,常用的无监督学习算法主要有聚类算法、等距映射算法、局部线性嵌入算法、拉普拉斯特征映射算法、局部切空间排列算法等。
在本说明书实施例中,将目标应用的缓存资源使用指标输入训练后的聚类模型后,聚类模型可以输出针对目标应用的缓存资源使用指标的聚类结果。聚类模型输出的每一类聚类结果都可以对应于一个聚类中心点,而预设缓存健康分则可以是预先针对聚类模型的各个聚类中心点设置的,从而聚类模型输出的每一类聚类结果都可以对应一个预设缓存健康分。例如,将应用程序A的缓存资源使用指标输入训练后的聚类模型后,模型输出的聚类结果是a,而聚类结果是a时,对应设置的预设缓存健康分为90分,则可以确定出应用程序A的缓存健康分为90分,从而可以将健康分为90分作为目标应用的缓存健康状况评估结果。
在本说明书实施例中,利用缓存资源使用指标,生成目标应用的缓存健康状况评估结果时,另一种实现方式可以是根据预先针对各个缓存资源使用指标设置的预设权重,计算得到目标应用的缓存健康分。
基于此,图1中的方法,步骤106中,利用所述缓存资源使用指标,生成所述目标应用的缓存健康状况评估结果,具体还可以包括:
根据预先针对各个所述缓存资源使用指标设置的预设权重,计算各个所述缓存资源使用指标的加权和,得到所述目标应用的缓存健康分。
在本说明书实施例中,预先针对各个缓存资源使用指标设置的预设权重可以根据经验值进行设置和调整,为计算各个缓存资源使用指标的加权和,得到目标应用的缓存健康分,可以构造如下函数:
F=x1*A+x2*B+x3*C+x4*D+x5*E
其中,F可以表示缓存健康分,A可以表示缓存资源访问率,x1可以表示缓存资源访问率的预设权重,B可以表示新增缓存资源闲置率,x2可以表示针对新增缓存资源闲置率的预设权重,C可以表示历史缓存资源闲置率,x3可以表示针对历史缓存资源闲置率的预设权重,D可以表示缓存资源命中率,x4可以表示针对缓存资源命中率的预设权重,E可以表示对缓存资源集合的资源总量做归一化处理得到的值,x5可以表示针对缓存资源集合的资源总量的预设权重。
在实际应用中,针对各个缓存资源使用指标设置的预设权重可以都设置为正值,这种情况下,由于缓存资源访问率以及缓存资源命中率通常均可以与缓存健康分具有正相关关系,而新增缓存资源闲置率、历史缓存资源闲置率以及缓存资源集合的资源总量通常均可以与缓存健康分具有负相关关系,因此,可以将:x1及x4设置为数值较大的正值,并将x2、x3以及x5设置为数值较小的正值,以保证缓存健康分计算的合理性。当然,也可以根据实际情况,将x1及x4设置为正值,并将x2、x3以及x5设置为负值,以令计算得到的缓存健康分的准确性较好,对此不作具体限定。
在实际应用中,对缓存资源集合的资源总量做归一化处理可以有多种实现方式。例如,可以先利用大数据统计一批样本用户在目标应用处的缓存资源集合的资源总量,从而得到目标应用处的缓存资源集合的资源总量的分布值域,进而可以将获取到当前用户的缓存资源集合的资源总量与分布值域的宽度之间的比值作为对缓存资源集合的资源总量做归一化处理得到的值。除此之外,还可以利用其他方法对缓存资源集合的资源总量做归一化处理,对此不作具体限定。
在实际应用中,目标应用的服务端可以根据全量用户对于小程序或者其他网络资源的访问率,而筛选出部分使用概率较高的小程序或者网络资源,从而向目标应用发送用于令目标应用预先下载这些小程序或者网络资源的资源推荐信息。目标应用接收到服务端发送的资源推荐信息后,通常会根据配置信息,将至少部分资源推荐信息对应的预推资源缓存至本地,以便于后续用户具有对于这些预推资源的访问需求时,可以直接从缓存处进行调用,从而提升应用响应效率。但是,由于目标应用处缓存的这些预推资源可能并不会真的被用户使用,这无疑会造成传输资源和存储资源的浪费。
基于此,图1中的方法,步骤108中,所述基于所述缓存健康状况评估结果,对所述目标应用处的缓存资源进行管理之前,还可以包括:
获取所述目标应用的服务端发送的资源推荐信息。
对应的,图1中的方法,步骤108中,所述基于所述缓存健康状况评估结果,对所述目标应用处的缓存资源进行管理,具体可以包括:
判断所述目标应用的缓存健康分是否小于第四阈值,得到第四判断结果。
若所述第四判断结果表示所述目标应用的缓存健康分小于第四阈值,则生成第四指令,所述第四指令用于指示减少所需从所述资源推荐信息对应的资源中缓存至所述目标应用处的资源的资源量。
若所述第四判断结果表示所述目标应用的缓存健康分大于等于第四阈值,则禁止生成第四指令。
在本说明书实施例中,第四阈值可以根据实际需要进行设置和调整,其值不受其他阈值影响。第四阈值与其他阈值可以相同,也可以不同,对此不作具体限定。
在本说明书实施例中,若目标应用缓存的资源推荐信息对应的资源过多时,可能导致目标应用处的缓存资源访问率较低,而目标应用处的新增缓存资源闲置率以及历史缓存资源闲置率较高,进而导致确定出的目标应用的缓存健康分较低。基于此,若目标应用的缓存健康分小于第四阈值,就可以生成用于指示减少所需从资源推荐信息对应的资源中缓存至目标应用处的资源的资源量的第四指令,从而减少无用资源的缓存,使目标应用处的缓存资源对存储空间的占用更加合理,节约传输资源和存储资源。
在本说明书实施例中,在得到目标应用的缓存健康分后,可以根据目标应用的缓存健康分对目标应用处的缓存资源进行管理,而对目标应用处的缓存资源进行管理可以包括对目标应用处已缓存的资源进行淘汰管理。
基于此,图1中的方法,步骤108中,所述基于所述缓存健康状况评估结果,对所述目标应用处的缓存资源进行管理,具体可以包括:
若获取到针对所述目标应用的缓存淘汰触发操作,则判断所述目标应用的缓存健康分是否小于第五阈值,得到第五判断结果。
若所述第五判断结果表示所述目标应用的缓存健康分小于第五阈值,则生成第五指令,所述第五指令用于指示删除所述目标应用处的缓存资源集合中的至少部分缓存资源。
在本说明书实施例中,针对目标应用的缓存淘汰触发操作可以是用户触发的,也可以是用户的终端设备在自动定期清理缓存时触发的,对此不作具体限定。第五阈值可以根据实际需要进行设置和调整,其值不受其他阈值影响。第五阈值与其他阈值可以相同,也可以不同,对此不作具体限定。
在本说明书实施例中,若第五判断结果表示目标应用的缓存健康分大于等于第五阈值,则可以进一步根据目标应用处缓存资源集合的资源总量与目标应用的缓存容量阈值之间的大小关系去决策是否删除部分缓存资源。
对应的,所述判断所述目标应用的缓存健康分是否小于第五阈值,得到第五判断结果之后,还可以包括:
若所述第五判断结果表示所述目标应用的缓存健康分大于等于第五阈值,则判断所述目标应用处的缓存资源集合的资源总量是否大于所述目标应用的缓存容量阈值,得到第六判断结果。
若所述第六判断结果表示所述目标应用处的缓存资源集合的资源总量大于所述目标应用的缓存容量阈值,则生成第六指令,所述第六指令用于指示删除所述目标应用处的缓存资源集合中的至少部分缓存资源。
若所述第六判断结果表示所述目标应用处的缓存资源集合的资源总量小于等于所述目标应用的缓存容量阈值,则禁止生成第六指令。
在本说明书实施例中,第六阈值可以根据实际需要进行设置和调整,其值不受其他阈值影响。第六阈值与其他阈值可以相同,也可以不同,对此不作具体限定。
在本说明书实施例中,当目标应用处的缓存资源集合的资源总量大于目标应用的缓存容量阈值后,目标应用就无法再缓存新的资源,所以即使目标应用的缓存健康分较高,也需要删除部分缓存资源。
在本说明书实施例中,对所述第五指令以及所述第六指令的响应过程中,可以按照目标应用处的缓存资源集合中的各个缓存资源的淘汰优先级去删除部分缓存资源。
对应的,所述生成第五指令之后,还可以包括:
响应于所述第五指令,按照所述目标应用处的缓存资源集合中的各个缓存资源的淘汰优先级由高到低的顺序,删除所述缓存资源集合中的至少部分缓存资源,直至所述目标应用的更新后的缓存健康分大于等于所述第五阈值。
对应的,所述生成第六指令之后,还可以包括:
响应于所述第六指令,按照所述目标应用处的缓存资源集合中的各个缓存资源的淘汰优先级由高到低的顺序,删除所述缓存资源集合中的至少部分缓存资源,直至所述目标应用处的缓存资源集合的更新后的资源总量小于等于所述缓存容量阈值。
在本说明书实施例中,目标应用处的缓存资源集合中的各个缓存资源的淘汰优先级可以根据各个缓存资源被存储至目标应用处的时间点以及在预设历史时间段内被使用的情况来确定。
对应的,所述缓存资源集合中的第一缓存资源、第二缓存资源及第三缓存资源的淘汰优先级可以依次升高,其中,所述第一缓存资源可以为所述缓存资源集合中的在所述预设历史时间段内被使用过的缓存资源;所述第二缓存资源可以为所述缓存资源集合中的在所述预设历史时间段内被存储至所述目标应用处且未被使用过的缓存资源;所述第三缓存资源可以为所述缓存资源集合中的在所述预设历史时间段之前被存储至所述目标应用处,且在所述预设历史时间段内未被使用过的缓存资源。
进一步的,第一缓存资源、第二缓存资源及第三缓存资源分别用于反映一类缓存资源,而第一缓存资源、第二缓存资源及第三缓存资源均可以包括多个缓存资源。在实际应用中,针对缓存资源集合中的每种类型的缓存资源,还可以根据缓存资源被使用的次数、被使用的时间间隔或者被使用的频率等来进一步区分各个缓存资源的淘汰优先级,对此不作具体限定。
在实际应用中,所述缓存资源集合中可以包含所述目标应用处存储的全部的小程序缓存资源,所述缓存资源集合中的任一缓存资源可以为所述目标应用处的任一小程序的全部缓存资源。
对应的,所述删除所述缓存资源集合中的至少部分缓存资源,具体可以包括:
删除所述目标应用处的至少部分小程序的全部缓存资源。
在实际应用中,任一小程序的全部缓存资源可以打包成一个缓存资源被目标应用存储,对应的,目标应用处缓存资源集合中的任一缓存资源可以为目标应用存储的任一小程序的全部缓存资源。基于此,可以方便针对小程序的缓存资源的管理,避免对于访问率较低的小程序资源进行删除操作时,无法彻底删除该小程序的全部缓存资源的问题,从而避免了存储空间的浪费。
在实际应用中,用户不光可以访问目标应用处的小程序,还可以访问目标应用处的图片、音频等类型的资源。因此,所述缓存资源集合中还可以包含所述目标应用处的全部的缓存资源,例如,目标应用处的全部的图片、音频等缓存资源,即所述缓存资源集合中的任一缓存资源也可以为任一图片、音频等类型的资源。
由于目标应用存储的任一图片、音频等资源都可以作为目标应用处缓存资源集合中的一个缓存资源,基于此,在使用本说明书实施例提供的缓存资源管理方案去进行缓存资源管理时,可以对目标应用存储的任一图片、音频等资源进行管理,从而有利于提高缓存资源管理的精准性。
图2为本说明书实施例提供的对应于图1中的一种缓存资源管理方法的泳道流程示意图。如图2所示,该缓存资源的管理流程可以涉及目标应用、用户设备的存储系统等执行主体。
在缓存健康状况确定阶段,目标应用可以获取目标应用处的资源访问记录信息并根据这些资源访问记录信息确定出目标应用的缓存资源使用指标,还可以基于这些缓存资源使用指标得到目标应用的缓存健康分。
在缓存资源管理阶段,目标应用可以判断目标应用的缓存健康分是否小于第四阈值,若判断结果表示目标应用的缓存健康分小于第四阈值,则生成第四指令;若判断结果表示目标应用的缓存健康分不小于第四阈值,则禁止生成第四指令。目标应用可以响应于第四指令,减少所需从资源推荐信息对应的资源中缓存至目标应用处的资源的资源量。
在缓存资源管理阶段,目标应用还可以判断目标应用的缓存健康分是否小于第五阈值,若判断结果表示目标应用的缓存健康分小于第五阈值,则生成第五指令并将生成的第五指令发送给用户设备的存储系统,对应的,用户设备的存储系统接收到目标应用程序发来的第五指令后,可以响应于第五指令,删除目标应用处的缓存资源集合中的至少部分缓存资源,直至目标应用更新后的缓存健康分大于等于第五阈值;若判断结果表示目标应用的缓存健康分不小于第五阈值,则可以进一步判断目标应用处的缓存资源集合的资源总量是否大于缓存容量阈值,若进一步判断结果表明目标应用处的缓存资源集合的资源总量大于缓存容量阈值,则生成第六指令并将生成的第六指令发送给用户设备的存储系统,对应的,用户设备的存储系统接收到目标应用发来的第六指令后,可以响应于第六指令,删除目标应用处的缓存资源集合中的至少部分缓存资源,直至目标应用处的缓存资源集合更新后的资源总量小于等于缓存容量阈值。
基于同样的思路,本说明书实施例还提供了上述方法对应的装置。图3为本说明书实施例提供的对应于图1的一种缓存资源管理装置的结构示意图。如图3所示,该装置可以包括:
信息获取模块302,用于获取目标应用处的资源访问记录信息。
指标确定模块304,用于根据所述资源访问记录信息,确定所述目标应用的缓存资源使用指标;所述缓存资源使用指标用于反映在预设历史时间段内针对所述目标应用处的缓存资源集合的整体使用情况。
结果生成模块306,用于利用所述缓存资源使用指标,生成所述目标应用的缓存健康状况评估结果。
资源管理模块308,用于基于所述缓存健康状况评估结果,对所述目标应用处的缓存资源进行管理。
基于图3中的装置,本说明书实施例还提供了该装置的一些具体实施方案,下面进行说明。
可选的,图3中的装置,所述指标确定模块304,具体可以包括:
缓存资源访问率确定单元,用于根据所述资源访问记录信息,计算所述目标应用处的缓存资源访问率;所述缓存资源访问率为所述缓存资源集合中的第一缓存资源的资源量与所述缓存资源集合的资源总量之商,所述第一缓存资源为所述缓存资源集合中的在所述预设历史时间段内被使用过的缓存资源。
和/或,新增缓存资源闲置率确定单元,用于根据所述资源访问记录信息,计算所述目标应用处的新增缓存资源闲置率;所述新增缓存资源闲置率为所述缓存资源集合中的第二缓存资源的资源量与所述缓存资源集合的资源总量之商,所述第二缓存资源为所述缓存资源集合中的在所述预设历史时间段内被存储至所述目标应用处且未被使用过的缓存资源。
和/或,历史缓存资源闲置率确定单元,用于根据所述资源访问记录信息,计算所述目标应用处的历史缓存资源闲置率;所述历史缓存资源闲置率为所述缓存资源集合中的第三缓存资源的资源量与所述缓存资源集合的资源总量之商,所述第三缓存资源为所述缓存资源集合中的在所述预设历史时间段之前被存储至所述目标应用处,且在所述预设历史时间段内未被使用过的缓存资源。
和/或,缓存资源命中率确定单元,用于根据所述资源访问记录信息,计算所述目标应用处的缓存资源命中率。
可选的,图3中的装置,所述指标确定模块304还可以包括:资源总量确定单元,用于确定所述缓存资源集合的资源总量。
可选的,图3中的装置,还可以包括:
第一判断模块,用于若计算得到所述目标应用处的缓存资源访问率,则判断所述缓存资源访问率是否大于第一阈值,得到第一判断结果。
第一指令生成模块,用于若所述第一判断结果表示所述缓存资源访问率大于第一阈值,则生成第一指令;所述第一指令用于指示增大所述目标应用的缓存容量阈值。
第二判断模块,用于若计算得到所述目标应用处的新增缓存资源闲置率,则判断所述新增缓存资源闲置率是否大于第二阈值,得到第二判断结果。
第二指令生成模块,用于若所述第二判断结果表示所述新增缓存资源闲置率大于第二阈值,则生成第二指令;所述第二指令用于指示减小允许从资源推荐信息所对应的资源中缓存至所述目标应用处的资源的资源量阈值。
第三判断模块,用于若计算得到所述目标应用处的历史缓存资源闲置率,则判断所述历史缓存资源闲置率是否大于第三阈值,得到第三判断结果。
第三指令生成模块,用于若所述第三判断结果表示所述历史缓存资源闲置率大于第三阈值,则生成第三指令;所述第三指令用于指示减小所述目标应用的缓存容量阈值。
可选的,图3中的装置,所述结果生成模块306,具体可以包括:
指标处理单元,用于利用训练后的聚类模型,对所述缓存资源使用指标进行处理,得到针对所述缓存资源使用指标的聚类结果;所述训练后的聚类模型是预先利用缓存资源使用指标样本集合对初始聚类模型进行无监督学习训练得到的。
健康分确定单元,用于从预先针对所述训练后的聚类模型的各个聚类中心点设置的预设缓存健康分中,确定出与所述聚类结果匹配的预设缓存健康分,得到所述目标应用的缓存健康分。
可选的,图3中的装置,所述结果生成模块306,具体可以包括:
健康分确定单元,还用于根据预先针对各个所述缓存资源使用指标设置的预设权重,计算各个所述缓存资源使用指标的加权和,得到所述目标应用的缓存健康分。
可选的,图3中的装置,还可以包括:
资源推荐信息获取模块,用于获取所述目标应用的服务端发送的资源推荐信息。
对应的,所述资源管理模块308,具体可以包括:
第一判断单元,用于判断所述目标应用的缓存健康分是否小于第四阈值,得到第四判断结果。
第一指令生成单元,用于若所述第四判断结果表示所述目标应用的缓存健康分小于第四阈值,则生成第四指令,所述第四指令用于指示减少所需从所述资源推荐信息对应的资源中缓存至所述目标应用处的资源的资源量。
可选的,图3中的装置,所述资源管理模块308,具体可以包括:
第二判断单元,用于若获取到针对所述目标应用的缓存淘汰触发操作,则判断所述目标应用的缓存健康分是否小于第五阈值,得到第五判断结果。
第二指令生成单元,用于若所述第五判断结果表示所述目标应用的缓存健康分小于第五阈值,则生成第五指令,所述第五指令用于指示删除所述目标应用处的缓存资源集合中的至少部分缓存资源。
可选的,图3中的装置,所述资源管理模块308,具体还可以包括:
第三判断单元,用于若所述第五判断结果表示所述目标应用的缓存健康分大于等于第五阈值,则判断所述目标应用处的缓存资源集合的资源总量是否大于所述目标应用的缓存容量阈值,得到第六判断结果。
第三指令生成单元,用于若所述第六判断结果表示所述目标应用处的缓存资源集合的资源总量大于所述目标应用的缓存容量阈值,则生成第六指令,所述第六指令用于指示删除所述目标应用处的缓存资源集合中的至少部分缓存资源。
可选的,图3中的装置,所述资源管理模块308,还可以包括:
资源删除单元,用于响应于所述第五指令,按照所述目标应用处的缓存资源集合中的各个缓存资源的淘汰优先级由高到低的顺序,删除所述缓存资源集合中的至少部分缓存资源,直至所述目标应用的更新后的缓存健康分大于等于所述第五阈值。
以及,响应于所述第六指令,按照所述目标应用处的缓存资源集合中的各个缓存资源的淘汰优先级由高到低的顺序,删除所述缓存资源集合中的至少部分缓存资源,直至所述目标应用处的缓存资源集合的更新后的资源总量小于等于所述缓存容量阈值。
可选的,图3中的装置,所述缓存资源集合中的第一缓存资源、第二缓存资源及第三缓存资源的淘汰优先级依次升高,其中,所述第一缓存资源为所述缓存资源集合中的在所述预设历史时间段内被使用过的缓存资源;所述第二缓存资源为所述缓存资源集合中的在所述预设历史时间段内被存储至所述目标应用处且未被使用过的缓存资源;所述第三缓存资源为所述缓存资源集合中的在所述预设历史时间段之前被存储至所述目标应用处,且在所述预设历史时间段内未被使用过的缓存资源。
可选的,图3中的装置,所述缓存资源集合中可以包含所述目标应用处存储的全部的小程序缓存资源,所述缓存资源集合中的任一缓存资源可以为所述目标应用处的任一小程序的全部缓存资源。
所述资源删除单元,具体用于:响应于所述第五指令,按照所述目标应用处的缓存资源集合中的各个缓存资源的淘汰优先级由高到低的顺序,删除所述目标应用处的至少部分小程序的全部缓存资源,直至所述目标应用的更新后的缓存健康分大于等于所述第五阈值。
以及,响应于所述第六指令,按照所述目标应用处的缓存资源集合中的各个缓存资源的淘汰优先级由高到低的顺序,删除所述目标应用处的至少部分小程序的全部缓存资源,直至所述目标应用处的缓存资源集合的更新后的资源总量小于等于所述缓存容量阈值。
基于同样的思路,本说明书实施例还提供了上述方法对应的设备。
图4为本说明书实施例提供的对应于图1的一种缓存资源管理设备的结构示意图。如图4所示,设备400可以包括:
至少一个处理器410;以及,
与所述至少一个处理器通信连接的存储器430;其中,
所述存储器430存储有可被所述至少一个处理器410执行的指令420,所述指令被所述至少一个处理器410执行,以使所述至少一个处理器410能够:
获取目标应用处的资源访问记录信息。
根据所述资源访问记录信息,确定所述目标应用的缓存资源使用指标;所述缓存资源使用指标用于反映在预设历史时间段内针对所述目标应用处的缓存资源集合的整体使用情况。
利用所述缓存资源使用指标,生成所述目标应用的缓存健康状况评估结果。
基于所述缓存健康状况评估结果,对所述目标应用处的缓存资源进行管理。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于图4所示的设备而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(FieldProgrammable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(AdvancedBoolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(JavaHardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby HardwareDescription Language)等,目前最普遍使用的是VHDL(Very-High-Speed IntegratedCircuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (24)

1.一种缓存资源管理方法,包括:
获取目标应用处的资源访问记录信息;
根据所述资源访问记录信息,确定所述目标应用的缓存资源使用指标;所述缓存资源使用指标用于反映在预设历史时间段内针对所述目标应用处的缓存资源集合的整体使用情况;
利用所述缓存资源使用指标,生成所述目标应用的缓存健康状况评估结果;
基于所述缓存健康状况评估结果,对所述目标应用处的缓存资源进行管理。
2.如权利要求1所述的方法,所述根据所述资源访问记录信息,确定所述目标应用的缓存资源使用指标,具体包括:
根据所述资源访问记录信息,计算所述目标应用处的缓存资源访问率;所述缓存资源访问率为所述缓存资源集合中的第一缓存资源的资源量与所述缓存资源集合的资源总量之商,所述第一缓存资源为所述缓存资源集合中的在所述预设历史时间段内被使用过的缓存资源;和/或,
根据所述资源访问记录信息,计算所述目标应用处的新增缓存资源闲置率;所述新增缓存资源闲置率为所述缓存资源集合中的第二缓存资源的资源量与所述缓存资源集合的资源总量之商,所述第二缓存资源为所述缓存资源集合中的在所述预设历史时间段内被存储至所述目标应用处且未被使用过的缓存资源;和/或,
根据所述资源访问记录信息,计算所述目标应用处的历史缓存资源闲置率;所述历史缓存资源闲置率为所述缓存资源集合中的第三缓存资源的资源量与所述缓存资源集合的资源总量之商,所述第三缓存资源为所述缓存资源集合中的在所述预设历史时间段之前被存储至所述目标应用处,且在所述预设历史时间段内未被使用过的缓存资源;和/或,
根据所述资源访问记录信息,计算所述目标应用处的缓存资源命中率。
3.如权利要求2所述的方法,所述目标应用的缓存资源使用指标还包括:所述缓存资源集合的资源总量。
4.如权利要求2所述的方法,所述根据所述资源访问记录信息,确定所述目标应用的缓存资源使用指标之后,还包括:
若计算得到所述目标应用处的缓存资源访问率,则判断所述缓存资源访问率是否大于第一阈值,得到第一判断结果;
若所述第一判断结果表示所述缓存资源访问率大于第一阈值,则生成第一指令;所述第一指令用于指示增大所述目标应用的缓存容量阈值;
若计算得到所述目标应用处的新增缓存资源闲置率,则判断所述新增缓存资源闲置率是否大于第二阈值,得到第二判断结果;
若所述第二判断结果表示所述新增缓存资源闲置率大于第二阈值,则生成第二指令;所述第二指令用于指示减小允许从资源推荐信息所对应的资源中缓存至所述目标应用处的资源的资源量阈值;
若计算得到所述目标应用处的历史缓存资源闲置率,则判断所述历史缓存资源闲置率是否大于第三阈值,得到第三判断结果;
若所述第三判断结果表示所述历史缓存资源闲置率大于第三阈值,则生成第三指令;所述第三指令用于指示减小所述目标应用的缓存容量阈值。
5.如权利要求1所述的方法,所述利用所述缓存资源使用指标,生成所述目标应用的缓存健康状况评估结果,具体包括:
利用训练后的聚类模型,对所述缓存资源使用指标进行处理,得到针对所述缓存资源使用指标的聚类结果;所述训练后的聚类模型是预先利用缓存资源使用指标样本集合对初始聚类模型进行无监督学习训练得到的;
从预先针对所述训练后的聚类模型的各个聚类中心点设置的预设缓存健康分中,确定出与所述聚类结果匹配的预设缓存健康分,得到所述目标应用的缓存健康分。
6.如权利要求1所述的方法,所述利用所述缓存资源使用指标,生成所述目标应用的缓存健康状况评估结果,具体包括:
根据预先针对各个所述缓存资源使用指标设置的预设权重,计算各个所述缓存资源使用指标的加权和,得到所述目标应用的缓存健康分。
7.如权利要求5或6所述的方法,所述基于所述缓存健康状况评估结果,对所述目标应用处的缓存资源进行管理之前,还包括:
获取所述目标应用的服务端发送的资源推荐信息;
所述基于所述缓存健康状况评估结果,对所述目标应用处的缓存资源进行管理,具体包括:
判断所述目标应用的缓存健康分是否小于第四阈值,得到第四判断结果;
若所述第四判断结果表示所述目标应用的缓存健康分小于第四阈值,则生成第四指令,所述第四指令用于指示减少所需从所述资源推荐信息对应的资源中缓存至所述目标应用处的资源的资源量。
8.如权利要求5或6所述的方法,所述基于所述缓存健康状况评估结果,对所述目标应用处的缓存资源进行管理,具体包括:
若获取到针对所述目标应用的缓存淘汰触发操作,则判断所述目标应用的缓存健康分是否小于第五阈值,得到第五判断结果;
若所述第五判断结果表示所述目标应用的缓存健康分小于第五阈值,则生成第五指令,所述第五指令用于指示删除所述目标应用处的缓存资源集合中的至少部分缓存资源。
9.如权利要求8所述的方法,所述判断所述目标应用的缓存健康分是否小于第五阈值,得到第五判断结果之后,还包括:
若所述第五判断结果表示所述目标应用的缓存健康分大于等于第五阈值,则判断所述目标应用处的缓存资源集合的资源总量是否大于所述目标应用的缓存容量阈值,得到第六判断结果;
若所述第六判断结果表示所述目标应用处的缓存资源集合的资源总量大于所述目标应用的缓存容量阈值,则生成第六指令,所述第六指令用于指示删除所述目标应用处的缓存资源集合中的至少部分缓存资源。
10.如权利要求9所述的方法,所述生成第五指令之后,还包括:
响应于所述第五指令,按照所述目标应用处的缓存资源集合中的各个缓存资源的淘汰优先级由高到低的顺序,删除所述缓存资源集合中的至少部分缓存资源,直至所述目标应用的更新后的缓存健康分大于等于所述第五阈值;
所述生成第六指令之后,还包括:
响应于所述第六指令,按照所述目标应用处的缓存资源集合中的各个缓存资源的淘汰优先级由高到低的顺序,删除所述缓存资源集合中的至少部分缓存资源,直至所述目标应用处的缓存资源集合的更新后的资源总量小于等于所述缓存容量阈值。
11.如权利要求10所述的方法,所述缓存资源集合中的第一缓存资源、第二缓存资源及第三缓存资源的淘汰优先级依次升高,其中,所述第一缓存资源为所述缓存资源集合中的在所述预设历史时间段内被使用过的缓存资源;所述第二缓存资源为所述缓存资源集合中的在所述预设历史时间段内被存储至所述目标应用处且未被使用过的缓存资源;所述第三缓存资源为所述缓存资源集合中的在所述预设历史时间段之前被存储至所述目标应用处,且在所述预设历史时间段内未被使用过的缓存资源。
12.如权利要求10所述的方法,所述缓存资源集合中包含所述目标应用处存储的全部的小程序缓存资源,所述缓存资源集合中的任一缓存资源为所述目标应用处的任一小程序的全部缓存资源;
所述删除所述缓存资源集合中的至少部分缓存资源,具体包括:
删除所述目标应用处的至少部分小程序的全部缓存资源。
13.一种缓存资源管理装置,包括:
信息获取模块,用于获取目标应用处的资源访问记录信息;
指标确定模块,用于根据所述资源访问记录信息,确定所述目标应用的缓存资源使用指标;所述缓存资源使用指标用于反映在预设历史时间段内针对所述目标应用处的缓存资源集合的整体使用情况;
结果生成模块,用于利用所述缓存资源使用指标,生成所述目标应用的缓存健康状况评估结果;
资源管理模块,用于基于所述缓存健康状况评估结果,对所述目标应用处的缓存资源进行管理。
14.如权利要求13所述的装置,所述指标确定模块,具体包括:
缓存资源访问率确定单元,用于根据所述资源访问记录信息,计算所述目标应用处的缓存资源访问率;所述缓存资源访问率为所述缓存资源集合中的第一缓存资源的资源量与所述缓存资源集合的资源总量之商,所述第一缓存资源为所述缓存资源集合中的在所述预设历史时间段内被使用过的缓存资源;和/或,
新增缓存资源闲置率确定单元,用于根据所述资源访问记录信息,计算所述目标应用处的新增缓存资源闲置率;所述新增缓存资源闲置率为所述缓存资源集合中的第二缓存资源的资源量与所述缓存资源集合的资源总量之商,所述第二缓存资源为所述缓存资源集合中的在所述预设历史时间段内被存储至所述目标应用处且未被使用过的缓存资源;和/或,
历史缓存资源闲置率确定单元,用于根据所述资源访问记录信息,计算所述目标应用处的历史缓存资源闲置率;所述历史缓存资源闲置率为所述缓存资源集合中的第三缓存资源的资源量与所述缓存资源集合的资源总量之商,所述第三缓存资源为所述缓存资源集合中的在所述预设历史时间段之前被存储至所述目标应用处,且在所述预设历史时间段内未被使用过的缓存资源;和/或,
缓存资源命中率确定单元,用于根据所述资源访问记录信息,计算所述目标应用处的缓存资源命中率。
15.如权利要求14所述的装置,所述指标确定模块还包括:资源总量确定单元,用于确定所述缓存资源集合的资源总量。
16.如权利要求14所述的装置,所述装置还包括:
第一判断模块,用于若计算得到所述目标应用处的缓存资源访问率,则判断所述缓存资源访问率是否大于第一阈值,得到第一判断结果;
第一指令生成模块,用于若所述第一判断结果表示所述缓存资源访问率大于第一阈值,则生成第一指令;所述第一指令用于指示增大所述目标应用的缓存容量阈值;
第二判断模块,用于若计算得到所述目标应用处的新增缓存资源闲置率,则判断所述新增缓存资源闲置率是否大于第二阈值,得到第二判断结果;
第二指令生成模块,用于若所述第二判断结果表示所述新增缓存资源闲置率大于第二阈值,则生成第二指令;所述第二指令用于指示减小允许从资源推荐信息所对应的资源中缓存至所述目标应用处的资源的资源量阈值;
第三判断模块,用于若计算得到所述目标应用处的历史缓存资源闲置率,则判断所述历史缓存资源闲置率是否大于第三阈值,得到第三判断结果;
第三指令生成模块,用于若所述第三判断结果表示所述历史缓存资源闲置率大于第三阈值,则生成第三指令;所述第三指令用于指示减小所述目标应用的缓存容量阈值。
17.如权利要求13所述的装置,所述结果生成模块,具体包括:
指标处理单元,用于利用训练后的聚类模型,对所述缓存资源使用指标进行处理,得到针对所述缓存资源使用指标的聚类结果;所述训练后的聚类模型是预先利用缓存资源使用指标样本集合对初始聚类模型进行无监督学习训练得到的;
健康分确定单元,用于从预先针对所述训练后的聚类模型的各个聚类中心点设置的预设缓存健康分中,确定出与所述聚类结果匹配的预设缓存健康分,得到所述目标应用的缓存健康分。
18.如权利要求13所述的装置,所述结果生成模块,具体包括:
健康分确定单元,还用于根据预先针对各个所述缓存资源使用指标设置的预设权重,计算各个所述缓存资源使用指标的加权和,得到所述目标应用的缓存健康分。
19.如权利要求17或18所述的装置,所述装置还包括:
资源推荐信息获取模块,用于获取所述目标应用的服务端发送的资源推荐信息;
所述资源管理模块,具体包括:
第一判断单元,用于判断所述目标应用的缓存健康分是否小于第四阈值,得到第四判断结果;
第一指令生成单元,用于若所述第四判断结果表示所述目标应用的缓存健康分小于第四阈值,则生成第四指令,所述第四指令用于指示减少所需从所述资源推荐信息对应的资源中缓存至所述目标应用处的资源的资源量。
20.如权利要求17或18所述的装置,所述资源管理模块,具体包括:
第二判断单元,用于若获取到针对所述目标应用的缓存淘汰触发操作,则判断所述目标应用的缓存健康分是否小于第五阈值,得到第五判断结果;
第二指令生成单元,用于若所述第五判断结果表示所述目标应用的缓存健康分小于第五阈值,则生成第五指令,所述第五指令用于指示删除所述目标应用处的缓存资源集合中的至少部分缓存资源。
21.如权利要求20所述的装置,所述资源管理模块,还包括:
第三判断单元,用于若所述第五判断结果表示所述目标应用的缓存健康分大于等于第五阈值,则判断所述目标应用处的缓存资源集合的资源总量是否大于所述目标应用的缓存容量阈值,得到第六判断结果;
第三指令生成单元,用于若所述第六判断结果表示所述目标应用处的缓存资源集合的资源总量大于所述目标应用的缓存容量阈值,则生成第六指令,所述第六指令用于指示删除所述目标应用处的缓存资源集合中的至少部分缓存资源。
22.如权利要求21所述的装置,所述资源管理模块,还包括:
资源删除单元,用于响应于所述第五指令,按照所述目标应用处的缓存资源集合中的各个缓存资源的淘汰优先级由高到低的顺序,删除所述缓存资源集合中的至少部分缓存资源,直至所述目标应用的更新后的缓存健康分大于等于所述第五阈值;以及,
响应于所述第六指令,按照所述目标应用处的缓存资源集合中的各个缓存资源的淘汰优先级由高到低的顺序,删除所述缓存资源集合中的至少部分缓存资源,直至所述目标应用处的缓存资源集合的更新后的资源总量小于等于所述缓存容量阈值。
23.如权利要求22所述的装置,所述缓存资源集合中包含所述目标应用处存储的全部的小程序缓存资源,所述缓存资源集合中的任一缓存资源为所述目标应用处的任一小程序的全部缓存资源;
所述资源删除单元,具体用于:响应于所述第五指令,按照所述目标应用处的缓存资源集合中的各个缓存资源的淘汰优先级由高到低的顺序,删除所述目标应用处的至少部分小程序的全部缓存资源,直至所述目标应用的更新后的缓存健康分大于等于所述第五阈值;以及,
响应于所述第六指令,按照所述目标应用处的缓存资源集合中的各个缓存资源的淘汰优先级由高到低的顺序,删除所述目标应用处的至少部分小程序的全部缓存资源,直至所述目标应用处的缓存资源集合的更新后的资源总量小于等于所述缓存容量阈值。
24.一种缓存资源管理设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
获取目标应用处的资源访问记录信息;
根据所述资源访问记录信息,确定所述目标应用的缓存资源使用指标;所述缓存资源使用指标用于反映在预设历史时间段内针对所述目标应用处的缓存资源集合的整体使用情况;
利用所述缓存资源使用指标,生成所述目标应用的缓存健康状况评估结果;
基于所述缓存健康状况评估结果,对所述目标应用处的缓存资源进行管理。
CN202310271469.8A 2023-03-14 2023-03-14 一种缓存资源管理方法、装置及设备 Pending CN116301626A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310271469.8A CN116301626A (zh) 2023-03-14 2023-03-14 一种缓存资源管理方法、装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310271469.8A CN116301626A (zh) 2023-03-14 2023-03-14 一种缓存资源管理方法、装置及设备

Publications (1)

Publication Number Publication Date
CN116301626A true CN116301626A (zh) 2023-06-23

Family

ID=86818288

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310271469.8A Pending CN116301626A (zh) 2023-03-14 2023-03-14 一种缓存资源管理方法、装置及设备

Country Status (1)

Country Link
CN (1) CN116301626A (zh)

Similar Documents

Publication Publication Date Title
CN110163417B (zh) 一种业务量的预测方法、装置及设备
EP3252609A1 (en) Cache data determination method and device
CN111324533B (zh) A/b测试方法、装置及电子设备
CN108243032B (zh) 一种服务等级信息的获取方法、装置及设备
CN117312394B (zh) 一种数据访问方法、装置、存储介质及电子设备
CN116432778B (zh) 一种数据处理的方法、装置、存储介质及电子设备
CN111176565A (zh) 确定应用的存储负载的方法和设备
US11144538B2 (en) Predictive database index modification
CN116822657B (zh) 一种模型训练加速的方法、装置、存储介质及电子设备
CN116382599B (zh) 一种面向分布式集群的任务执行方法、装置、介质及设备
CN117113174A (zh) 一种模型训练的方法、装置、存储介质及电子设备
CN116301626A (zh) 一种缓存资源管理方法、装置及设备
US20160253591A1 (en) Method and apparatus for managing performance of database
CN110309257B (zh) 一种文件读写打开方法及装置
CN107368281B (zh) 一种数据处理方法及装置
CN110780820A (zh) 一种连续存储空间确定方法、装置及电子设备和存储介质
CN116384505A (zh) 一种数据处理的方法、装置、存储介质及电子设备
CN113010551A (zh) 一种资源缓存方法及装置
CN114207570A (zh) 用于通过对环境上下文的主动适配识别信息空间的段的技术
CN112612415B (zh) 一种数据处理方法、装置、电子设备及存储介质
CN116109008B (zh) 一种业务执行的方法、装置、存储介质及电子设备
CN117555697B (zh) 一种面向分布式训练的缓存加载系统、方法、装置及设备
CN111104979B (zh) 一种用户行为价值评估模型的生成方法、装置及设备
CN117909371B (zh) 一种模型训练方法、装置、存储介质及电子设备
CN115545938B (zh) 一种执行风险识别业务的方法、装置、存储介质及设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination