CN109995863B - 一种动态资源下载方法、装置、电子设备及存储介质 - Google Patents

一种动态资源下载方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN109995863B
CN109995863B CN201910250656.1A CN201910250656A CN109995863B CN 109995863 B CN109995863 B CN 109995863B CN 201910250656 A CN201910250656 A CN 201910250656A CN 109995863 B CN109995863 B CN 109995863B
Authority
CN
China
Prior art keywords
dynamic resource
client
target
sent
downloading
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.)
Active
Application number
CN201910250656.1A
Other languages
English (en)
Other versions
CN109995863A (zh
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.)
Beijing Kingsoft Internet Security Software Co Ltd
Original Assignee
Beijing Kingsoft Internet Security Software 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 Beijing Kingsoft Internet Security Software Co Ltd filed Critical Beijing Kingsoft Internet Security Software Co Ltd
Priority to CN201910250656.1A priority Critical patent/CN109995863B/zh
Publication of CN109995863A publication Critical patent/CN109995863A/zh
Application granted granted Critical
Publication of CN109995863B publication Critical patent/CN109995863B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • H04L67/1085Resource delivery mechanisms involving dynamic management of active down- or uploading connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明实施例提供了一种动态资源下载方法、装置、电子设备及存储介质,其中,方法包括:步骤A,在当前检测周期中,从动态资源对象列表中确定当前待发送动态资源请求,获取客户端的目标参数;步骤B,基于目标参数,判断客户端是否有足够的资源支持当前待发送动态资源请求对应的目标动态资源的下载;步骤C,在客户端有足够的资源支持当前待发送动态资源请求对应的动态资源的下载,发送当前待发送动态资源请求,并接收服务端返回的目标动态资源;步骤D,重复执行步骤A‑步骤C,直至动态资源对象列表中各待发送动态资源请求均发送完成;步骤E,等待到下一检测周期,返回步骤A继续执行。本发明实现了充分利用网络带宽并减少下载出错。

Description

一种动态资源下载方法、装置、电子设备及存储介质
技术领域
本发明涉及计算机技术领域,特别是涉及一种动态资源下载方法、装置、电子设备及存储介质。
背景技术
随着计算机技术的快速发展,网络游戏也得到了快速发展。由于越来越丰富的游戏资源及越来越逼真的游戏体验,使得网络游戏吸引越来越多的用户使用。
游戏资源可分为游戏本身的安装包资源及可以不放置在安装包内的支持动态加载的动态资源,动态资源一般为通过服务器实时加载的资源。现有用户在进行游戏时,需要动态资源时,直接向服务器发送请求,从服务器端下载对应的动态资源。
发明人发现,现有一次性从服务器端下载的动态资源过多时,可能会导致客户端本地内存溢出的情况,导致下载出错。因此,如何充分利用网络带宽减少下载出错,仍然是亟待解决的技术问题。
发明内容
本发明实施例的目的在于提供一种动态资源下载方法、装置、电子设备及存储介质,以实现充分利用网络带宽并减少下载出错。具体技术方案如下:
第一方面,本发明实施例公开了一种动态资源下载方法,所述方法包括:
步骤A,在当前检测周期中,从动态资源对象列表中确定当前待发送动态资源请求,获取客户端的目标参数,所述目标参数表征所述客户端当前的剩余下载资源;所述动态资源对象列表包含所述客户端各待发送动态资源请求;
步骤B,基于所述目标参数,判断所述客户端是否有足够的资源支持当前待发送动态资源请求对应的目标动态资源的下载;
步骤C,在所述客户端有足够的资源支持当前待发送动态资源请求对应的动态资源的下载,发送所述当前待发送动态资源请求,并接收服务端返回的目标动态资源;
步骤D,重复执行步骤A-步骤C,直至所述动态资源对象列表中各待发送动态资源请求均发送完成,或者所述客户端没有足够的资源支持待发送动态资源请求对应的目标动态资源的下载;
步骤E,等待到下一检测周期,返回步骤A继续执行。
可选地,创建所述动态资源对象列表的方法包括:
向服务器发送所述客户端的客户端版本号和本地动态资源版本号;
接收所述服务器基于所述客户端版本号和所述本地动态资源版本号确定的所述客户端待下载的各目标动态资源信息,所述目标动态资源信息包括目标动态资源的文件名、md5编码及文件大小;
基于各所述目标动态资源信息的目标动态资源的文件名、md5编码及文件大小结合本地存储,创建各待发送动态资源请求,形成所述动态资源对象列表。
可选地,所述目标参数包括所述述客户端的当前剩余下载任务数目及当前剩余内存,所述基于所述目标参数,判断所述客户端是否有足够的资源支持当前待发送动态资源请求对应的动态资源的下载,包括:
判断所述当前剩余下载任务数目是否大于零;
当所述当前剩余下载任务数目大于零时,判断所述当前剩余内存是否大于或等于所述动态资源对象列表中记录的所述当前待发送动态资源请求对应的目标动态资源的文件大小。
可选地,当所述动态资源对象列表以队列的形式存储信息时,所述客户端没有足够的资源支持待发送动态资源请求对应的目标动态资源的下载,包括:
所述客户端没有足够的资源支持所述动态资源对象列表中当前动态资源请求对应的目标动态资源的下载。
可选地,当所述动态资源对象列表以表格的形式存储信息时,所述客户端没有足够的资源支持待发送动态资源请求对应的目标动态资源的下载,包括:
所述客户端没有足够的资源支持所述动态资源对象列表中任一动态资源请求对应的目标动态资源的下载。
第二方面,本发明实施例公开了一种动态资源下载装置,所述装置包括:
目标参数获取模块,用于在当前检测周期中,从动态资源对象列表中确定当前待发送动态资源请求,获取客户端的目标参数,所述目标参数表征所述客户端当前的剩余下载资源;所述动态资源对象列表包含所述客户端各待发送动态资源请求;
下载判断模块,用于基于所述目标参数,判断所述客户端是否有足够的资源支持当前待发送动态资源请求对应的动态资源的下载;
目标动态资源接收模块,用于在所述客户端有足够的资源支持当前待发送动态资源请求对应的动态资源的下载,发送所述当前待发送动态资源请求,并接收服务端返回的目标动态资源;
终止判断模块,用于重复执行上述步骤,直至所述动态资源对象列表中各待发送动态资源请求均发送完成,或者所述客户端没有足够的资源支持待发送动态资源请求对应的目标动态资源的下载;
检测周期确定模块,用于等待到下一检测周期,返回在当前检测周期中,从动态资源对象列表中确定当前待发送动态资源请求,获取客户端的目标参数的步骤继续执行。
可选地,所述装置还包括:
版本信息发送模块,用于向服务器发送所述客户端的客户端版本号和本地动态资源版本号;
目标动态资源信息接收模块,用于接收所述服务器基于所述客户端版本号和所述本地动态资源版本号确定的所述客户端待下载的各目标动态资源信息,所述目标动态资源信息包括目标动态资源的文件名、md5编码及文件大小;
动态资源对象列表确定模块,用于基于各所述目标动态资源信息的目标动态资源的文件名、md5编码及文件大小结合本地存储,创建各待发送动态资源请求,形成所述动态资源对象列表。
可选地,所述目标参数包括所述述客户端的当前剩余下载任务数目及当前剩余内存,所述下载判断模块,包括:
下载任务数目判断子模块,用于判断所述客户端的当前剩余下载任务数目是否大于零;
文件大小判断子模块,用于当所述客户端的当前剩余下载任务数目大于零时,判断所述客户端的当前剩余内存是否大于或等于所述动态资源对象列表中记录的、所述当前待发送动态资源请求对应的目标动态资源的文件大小。
第三方面,本发明实施例公开了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口、所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序时,实现上述动态资源下载方法中任一方法步骤。
第四方面,本发明实施例公开了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时,实现上述动态资源下载方法中任一方法步骤。
在本发明实施例提供的一种动态资源下载方法、装置、电子设备及存储介质中,通过设置表征客户端当前的剩余下载资源的目标参数作为判断条件,在检测周期内,自动判断目标参数下客户端当前能够处理的待发送动态资源请求,实现按照客户端真实设备性能创建目标动态资源下载任务,并且实现了充分利用客户端真实设备的剩余下载资源创建并行的下载任务。另外,考虑了客户端真实设备的性能,有效避免了客户端本地内存溢出的情况,因此减少下载出错。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本发明实施例的一种动态资源下载方法流程图;
图2为本发明实施例的一种动态资源下载方法中创建的动态资源对象列表的方法流程图;
图3为本发明实施例的一种动态资源下载装置结构示意图;
图4为本发明实施例的一种电子设备结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
第一方面,本发明实施例公开了一种动态资源下载方法,如图1所示。图1为本发明实施例的一种动态资源下载方法流程图,方法包括:
步骤A,在当前检测周期中,从动态资源对象列表中确定当前待发送动态资源请求,获取客户端的目标参数,目标参数表征客户端当前的剩余下载资源;动态资源对象列表包含客户端各待发送动态资源请求。
本发明实施例的执行主体可为在该客户端的应用软件的预先创建的下载管理进程,该应用软件可为游戏软件。该下载管理进程用来处理目标动态资源的下载,以及对于下载过程中的网络连接问题和存储空间不足等问题,在该应用软件的用户界面显示提示信息。以及通过该下载管理进程动态的对动态资源对象列表中的待发送动态资源请求进行保存、更新和释放。
本步骤中,可给该下载管理进程设置检测周期,让该下载管理进程周期性的获取该游戏应用软件需要下载的目标待发送动态资源请求,及客户端的目标参数。该检测周期具体可为2s、0.5秒等较小时间粒度的用户自定义时间段,保证可以在较短的时间周期内获取该客户端的游戏应用软件当前待发送动态资源请求,实现动态资源的下载。
本发明实施例中可预先建立客户端各待发送动态资源请求的动态资源对象列表,该动态资源对象列表也可周期性的更新。具体建立过程以下实施例中详细说明。
步骤B,基于目标参数,判断客户端是否有足够的资源支持当前待发送动态资源请求对应的目标动态资源的下载。
本步骤中,为了保证充分利用客户端下载资源,另外还要保证客户端下载过程避免本地内存溢出,导致下载出错的情况,可通过目标参数,判断客户端是否有足够的资源支持当前待发送动态资源请求对应的目标动态资源的下载。
可选地,目标参数包括述客户端的当前剩余下载任务数目及当前剩余内存,上述步骤B中基于目标参数,判断客户端是否有足够的资源支持当前待发送动态资源请求对应的动态资源的下载,包括:
步骤一,判断当前剩余下载任务数目是否大于零;
步骤二,当当前剩余下载任务数目大于零时,判断当前剩余内存是否大于或等于动态资源对象列表中记录的当前待发送动态资源请求对应的目标动态资源的文件大小。
步骤C,在客户端有足够的资源支持当前待发送动态资源请求对应的动态资源的下载,发送当前待发送动态资源请求,并接收服务端返回的目标动态资源。
本步骤中,可按照动态资源对象列表中记录的目标动态资源的存储位置,将接收的目标动态资源存储到本地指定可读写磁盘。便于用户从本地指定可读写磁盘加载目标动态资源。
步骤D,重复执行步骤A-步骤C,直至动态资源对象列表中各待发送动态资源请求均发送完成,或者客户端没有足够的资源支持待发送动态资源请求对应的目标动态资源的下载。
本步骤中,重复执行步骤A-步骤C,依次下载动态资源对象列表中各待发送动态资源请求对应的各目标动态资源。其中在判断客户端没有足够的资源支持待发送动态资源请求对应的目标动态资源的下载,可等待正在下载的目标动态资源下载完成保存到本地可读写磁盘,将下载完成的目标动态资源占用的内存释放。等到客户端有足够的资源支持该待发送动态资源请求对应的动态资源的下载时,在进行下载,一直到所有文件下载完成。
本步骤中,在待发送动态资源请求发送完成后,可将动态资源对象列表中关于该待发送动态资源请求的信息清除,以实现释放该动态资源对象列表的空间,保证有新的待发送动态资源请求添加到该动态资源对象列表中。另外,对于下载过程中的网络连接问题和存储空间不足等问题,可直接在该应用软件的用户界面显示提示信息。
步骤E,等待到下一检测周期,返回步骤A继续执行。
在本发明实施例提供的一种动态资源下载方法中,通过设置表征客户端当前的剩余下载资源的目标参数作为判断条件,在检测周期内,自动判断目标参数下客户端当前能够处理的待发送动态资源请求,实现按照客户端真实设备性能创建目标动态资源下载任务,并且实现了充分利用客户端真实设备的剩余下载资源创建并行的下载任务。另外,考虑了客户端真实设备的性能,有效避免了客户端本地内存溢出的情况,因此减少下载出错。
可选地,在本发明的动态资源下载方法的一种实施例中,创建动态资源对象列表的方法,可如图2所示。图2为本发明实施例的一种动态资源下载方法中创建的动态资源对象列表的方法流程图,包括:
S201,向服务器发送客户端的客户端版本号和本地动态资源版本号。
本发明实施例的客户端版本号为该客户端的应用软件的版本号,本地动态资源版本号为该客户端已有的该应用软件的动态资源版本号。
S202,接收服务器基于客户端版本号和本地动态资源版本号确定的客户端待下载的各目标动态资源信息,目标动态资源信息包括目标动态资源的文件名、md5编码及文件大小。
本步骤中,将该客户端的客户端版本号和本地动态资源版本号发送给服务器。服务器首先通过客户端版本号确定服务器端对应的最新的动态资源版本号,其次,对比最新的动态资源版本号中包含的各动态资源标识与本地动态资源版本号中包含的各动态资源标识,确定本地动态资源版本号中动态资源标识与最新的动态资源版本号中包含的各动态资源标识不同的动态资源标识。该不同动态资源标识对应的动态资源即为客户端待下载的各目标动态资源。具体可对比动态资源的md5(Message-Digest Algorithm 5,信息-摘要算法5)编码。将各目标动态资源的文件名、md5编码及文件大小,以索引信息的形式即为本发明实施例的目标动态资源信息,发送给该客户端。
客户端接收各目标动态资源信息,目标动态资源信息包括目标动态资源的文件名、md5编码及文件大小。
S203,基于各目标动态资源信息的目标动态资源的文件名、md5编码及文件大小结合本地存储,创建各待发送动态资源请求,形成动态资源对象列表。
本步骤中,获取本地存储目标动态资源的可读写磁盘地址,将目标动态资源信息的目标动态资源的文件名、md5编码及文件大小结合本地存储以及本地存储,建立每个目标动态资源的索引信息,并且添加HTTP(HyperText Transfer Protocol,超文本传输协议)下载链接,生成每个目标动态资源对应的各待发送动态资源请求。
针对各待发送动态资源请求,对该目标动态资源对应的待发送动态资源请求、目标动态资源的文件名、md5编码及文件大小以表格的形式进行存储,形成动态资源对象列表。
另外,本发明实施例中还可按照获取目标动态资源信息的顺序,针对各待发送动态资源请求,对该目标动态资源对应的待发送动态资源请求、目标动态资源的文件名、md5编码及文件大小以队列的形式进行存储,形成动态资源对象列表。
可见,通过本发明实施例,可实现预先建立存储各待发送动态资源请求的动态资源对象列表,方便直接从该动态资源对象列表中获取当前待发送动态资源请求。另外,该动态资源对象列表还存储了目标动态资源的文件名、md5编码及文件大小,便于后期通过文件大小判断客户端当前是否能够下载待发送动态资源请求对应的目标动态资源。
可选地,在本发明的动态资源下载方法的一种实施例中,当动态资源对象列表以队列的形式存储信息时,客户端没有足够的资源支持待发送动态资源请求对应的目标动态资源的下载,包括:
客户端没有足够的资源支持动态资源对象列表中当前动态资源请求对应的目标动态资源的下载。
本实施例中,在动态资源对象列表以队列的形式存储信息时,待发送动态资源请求为该动态资源对象列表中当前第一个动态资源请求。
即为本步骤判断客户端没有足够的资源、支持该动态资源对象列表的当前第一个待发送动态资源请求对应的目标动态资源下载。说明该动态资源对象列表中当前第一个待发送动态资源请求对应的目标动态资源大于剩余内存,此时等到正在下载的目标动态资源下载完成后,可继续从该当前第一个动态资源请求继续判断下载。
通过本实施例,可实现按照队列的形式,等待当前下载完成的目标动态资源释放内存后,继续从该动态资源对象列表中当前第一个待发送动态资源请求判断下载。这种顺序的处理动态资源对象列表中各待发送动态资源请求,避免了先要处理的文件数据大的目标动态资源被放到后面处理,保证了文件数据大的目标动态资源的顺序处理。
可选地,在本发明的动态资源下载方法的一种实施例中,当动态资源对象列表以表格的形式存储信息时,客户端没有足够的资源支持待发送动态资源请求对应的目标动态资源的下载,包括:
本实施例中,在动态资源对象列表以表格的形式存储信息时,待发送动态资源请求为该动态资源对象列表中任一个动态资源请求。
即为本步骤判断客户端没有足够的资源、支持该动态资源对象列表的任何一个待发送动态资源请求对应的目标动态资源下载,说明该动态资源对象列表中每个待发送动态资源请求对应的目标动态资源的内存都大于剩余内存。此时等到正在下载的目标动态资源下载完成后,可从该动态资源对象列表的待发送动态资源请求对应的目标动态资源最小的请求继续判断下载。
通过本实施例,可实现按照文件大小的形式,等待当前下载完成的目标动态资源释放内存后,便于从该动态资源对象列表中目标动态资源最小的待发送动态资源请求判断下载。这种按照资源占用大小处理动态资源对象列表中各待发送动态资源请求,能够更加充分的利用下载资源。
第二方面,本发明实施例公开了一种动态资源下载装置,如图3所示。图3为本发明实施例的一种动态资源下载装置结构示意图,装置包括:
目标参数获取模块301,用于在当前检测周期中,从动态资源对象列表中确定当前待发送动态资源请求,获取客户端的目标参数,目标参数表征客户端当前的剩余下载资源;动态资源对象列表包含客户端各待发送动态资源请求;
下载判断模块302,用于基于目标参数,判断客户端是否有足够的资源支持当前待发送动态资源请求对应的动态资源的下载;
目标动态资源接收模块303,用于在客户端有足够的资源支持当前待发送动态资源请求对应的动态资源的下载,发送当前待发送动态资源请求,并接收服务端返回的目标动态资源;
终止判断模块304,用于重复执行,直至动态资源对象列表中各待发送动态资源请求均发送完成,或者客户端没有足够的资源支持待发送动态资源请求对应的目标动态资源的下载;
检测周期确定模块305,用于等待到下一检测周期,返回在当前检测周期中,从动态资源对象列表中确定当前待发送动态资源请求,获取客户端的目标参数的步骤继续执行。
在本发明实施例提供的一种动态资源下载装置中,通过设置表征客户端当前的剩余下载资源的目标参数作为判断条件,在检测周期内,自动判断目标参数下客户端当前能够处理的待发送动态资源请求,实现按照客户端真实设备性能创建目标动态资源下载任务,并且实现了充分利用客户端真实设备的剩余下载资源创建并行的下载任务。另外,考虑了客户端真实设备的性能,有效避免了客户端本地内存溢出的情况,因此减少下载出错。
可选地,在本发明的动态资源下载装置的一种实施例中,装置还包括:
版本信息发送模块,用于向服务器发送客户端的客户端版本号和本地动态资源版本号;
目标动态资源信息接收模块,用于接收服务器基于客户端版本号和本地动态资源版本号确定的客户端待下载的各目标动态资源信息,目标动态资源信息包括目标动态资源的文件名、md5编码及文件大小;
动态资源对象列表确定模块,用于基于各目标动态资源信息的目标动态资源的文件名、md5编码及文件大小结合本地存储,创建各待发送动态资源请求,形成动态资源对象列表。
可选地,在本发明的动态资源下载装置的一种实施例中,目标参数包括述客户端的当前剩余下载任务数目及当前剩余内存,下载判断模块302,包括:
下载任务数目判断子模块,用于判断客户端的当前剩余下载任务数目是否大于零;
文件大小判断子模块,用于当客户端的当前剩余下载任务数目大于零时,判断客户端的当前剩余内存是否大于或等于动态资源对象列表中记录的、当前待发送动态资源请求对应的目标动态资源的文件大小。
第三方面,本发明实施例公开了一种电子设备,如图4所示。图4为本发明实施例的一种电子设备结构示意图,包括处理器401、通信接口402、存储器403和通信总线404,其中,处理器401、通信接口402、存储器403通过通信总线404完成相互间的通信;
存储器403,用于存放计算机程序;
处理器401,用于执行存储器403上所存放的程序时,实现以下方法步骤:
步骤A,在当前检测周期中,从动态资源对象列表中确定当前待发送动态资源请求,获取客户端的目标参数,目标参数表征客户端当前的剩余下载资源;动态资源对象列表包含客户端各待发送动态资源请求;
步骤B,基于目标参数,判断客户端是否有足够的资源支持当前待发送动态资源请求对应的目标动态资源的下载;
步骤C,在客户端有足够的资源支持当前待发送动态资源请求对应的动态资源的下载,发送当前待发送动态资源请求,并接收服务端返回的目标动态资源;
步骤D,重复执行步骤A-步骤C,直至动态资源对象列表中各待发送动态资源请求均发送完成,或者客户端没有足够的资源支持待发送动态资源请求对应的目标动态资源的下载;
步骤E,等待到下一检测周期,返回步骤A继续执行。
上述电子设备提到的通信总线404可以是外设部件互连标准(PeripheralComponent Interconnect,简称PCI)总线或扩展工业标准结构(Extended IndustryStandard Architecture,简称EISA)总线等。该通信总线404可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口402用于上述电子设备与其他设备之间的通信。
存储器403可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器403还可以是至少一个位于远离前述处理器401的存储装置。
上述的处理器401可以是通用处理器,包括中央处理器(Central ProcessingUnit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明实施例提供的一种电子设备中,通过设置表征客户端当前的剩余下载资源的目标参数作为判断条件,在检测周期内,自动判断目标参数下客户端当前能够处理的待发送动态资源请求,实现按照客户端真实设备性能创建目标动态资源下载任务,并且实现了充分利用客户端真实设备的剩余下载资源创建并行的下载任务。另外,考虑了客户端真实设备的性能,有效避免了客户端本地内存溢出的情况,因此减少下载出错。
第四方面,本发明实施例公开了一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时,实现上述动态资源下载方法中任一方法步骤。
在本发明实施例提供的一种计算机可读存储介质中,通过设置表征客户端当前的剩余下载资源的目标参数作为判断条件,在检测周期内,自动判断目标参数下客户端当前能够处理的待发送动态资源请求,实现按照客户端真实设备性能创建目标动态资源下载任务,并且实现了充分利用客户端真实设备的剩余下载资源创建并行的下载任务。另外,考虑了客户端真实设备的性能,有效避免了客户端本地内存溢出的情况,因此减少下载出错。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (10)

1.一种动态资源下载方法,其特征在于,所述方法包括:
步骤A,在当前检测周期中,从动态资源对象列表中确定当前待发送动态资源请求,获取客户端的目标参数,所述目标参数包括所述述客户端的当前剩余下载任务数目及当前剩余内存,所述目标参数表征所述客户端当前的剩余下载资源;所述动态资源对象列表包含所述客户端各待发送动态资源请求;
步骤B,基于所述目标参数,判断所述客户端是否有足够的资源支持当前待发送动态资源请求对应的目标动态资源的下载;
步骤C,在所述客户端有足够的资源支持当前待发送动态资源请求对应的动态资源的下载,发送所述当前待发送动态资源请求,并接收服务端返回的目标动态资源;
步骤D,重复执行步骤A-步骤C,直至所述动态资源对象列表中各待发送动态资源请求均发送完成,或者所述客户端没有足够的资源支持待发送动态资源请求对应的目标动态资源的下载;
步骤E,等待到下一检测周期,返回步骤A继续执行。
2.根据权利要求1所述的动态资源下载方法,其特征在于,创建所述动态资源对象列表的方法包括:
向服务器发送所述客户端的客户端版本号和本地动态资源版本号;
接收所述服务器基于所述客户端版本号和所述本地动态资源版本号确定的所述客户端待下载的各目标动态资源信息,所述目标动态资源信息包括目标动态资源的文件名、md5编码及文件大小;
基于各所述目标动态资源信息的目标动态资源的文件名、md5编码及文件大小结合本地存储,创建各待发送动态资源请求,形成所述动态资源对象列表。
3.根据权利要求2所述的动态资源下载方法,其特征在于,所述目标参数包括所述述客户端的当前剩余下载任务数目及当前剩余内存,所述基于所述目标参数,判断所述客户端是否有足够的资源支持当前待发送动态资源请求对应的动态资源的下载,包括:
判断所述当前剩余下载任务数目是否大于零;
当所述当前剩余下载任务数目大于零时,判断所述当前剩余内存是否大于或等于所述动态资源对象列表中记录的所述当前待发送动态资源请求对应的目标动态资源的文件大小。
4.根据权利要求2所述的动态资源下载方法,其特征在于,当所述动态资源对象列表以队列的形式存储信息时,所述客户端没有足够的资源支持待发送动态资源请求对应的目标动态资源的下载,包括:
所述客户端没有足够的资源支持所述动态资源对象列表中当前动态资源请求对应的目标动态资源的下载。
5.根据权利要求2所述的动态资源下载方法,其特征在于,当所述动态资源对象列表以表格的形式存储信息时,所述客户端没有足够的资源支持待发送动态资源请求对应的目标动态资源的下载,包括:
所述客户端没有足够的资源支持所述动态资源对象列表中任一动态资源请求对应的目标动态资源的下载。
6.一种动态资源下载装置,其特征在于,所述装置包括:
目标参数获取模块,用于在当前检测周期中,从动态资源对象列表中确定当前待发送动态资源请求,获取客户端的目标参数,所述目标参数包括所述述客户端的当前剩余下载任务数目及当前剩余内存,所述目标参数表征所述客户端当前的剩余下载资源;所述动态资源对象列表包含所述客户端各待发送动态资源请求;
下载判断模块,用于基于所述目标参数,判断所述客户端是否有足够的资源支持当前待发送动态资源请求对应的动态资源的下载;
目标动态资源接收模块,用于在所述客户端有足够的资源支持当前待发送动态资源请求对应的动态资源的下载,发送所述当前待发送动态资源请求,并接收服务端返回的目标动态资源;
终止判断模块,用于重复执行,直至所述动态资源对象列表中各待发送动态资源请求均发送完成,或者所述客户端没有足够的资源支持待发送动态资源请求对应的目标动态资源的下载;
检测周期确定模块,用于等待到下一检测周期,返回在当前检测周期中,从动态资源对象列表中确定当前待发送动态资源请求,获取客户端的目标参数的步骤继续执行。
7.根据权利要求6所述的动态资源下载装置,其特征在于,所述装置还包括:
版本信息发送模块,用于向服务器发送所述客户端的客户端版本号和本地动态资源版本号;
目标动态资源信息接收模块,用于接收所述服务器基于所述客户端版本号和所述本地动态资源版本号确定的所述客户端待下载的各目标动态资源信息,所述目标动态资源信息包括目标动态资源的文件名、md5编码及文件大小;
动态资源对象列表确定模块,用于基于各所述目标动态资源信息的目标动态资源的文件名、md5编码及文件大小结合本地存储,创建各待发送动态资源请求,形成所述动态资源对象列表。
8.根据权利要求7所述的动态资源下载装置,其特征在于,所述目标参数包括所述述客户端的当前剩余下载任务数目及当前剩余内存,所述下载判断模块,包括:
下载任务数目判断子模块,用于判断所述客户端的当前剩余下载任务数目是否大于零;
文件大小判断子模块,用于当所述客户端的当前剩余下载任务数目大于零时,判断所述客户端的当前剩余内存是否大于或等于所述动态资源对象列表中记录的、所述当前待发送动态资源请求对应的目标动态资源的文件大小。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口、所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序时,实现权利要求1-5任一所述的方法步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时,实现权利要求1-5任一所述的方法步骤。
CN201910250656.1A 2019-03-29 2019-03-29 一种动态资源下载方法、装置、电子设备及存储介质 Active CN109995863B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910250656.1A CN109995863B (zh) 2019-03-29 2019-03-29 一种动态资源下载方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910250656.1A CN109995863B (zh) 2019-03-29 2019-03-29 一种动态资源下载方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN109995863A CN109995863A (zh) 2019-07-09
CN109995863B true CN109995863B (zh) 2022-04-22

Family

ID=67132033

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910250656.1A Active CN109995863B (zh) 2019-03-29 2019-03-29 一种动态资源下载方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN109995863B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111586170B (zh) * 2020-05-07 2023-05-23 广州博冠信息科技有限公司 资源下载方法、装置、设备及计算机可读存储介质
CN111641705A (zh) * 2020-05-28 2020-09-08 浪潮电子信息产业股份有限公司 一种请求处理方法、装置、设备及可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105808714A (zh) * 2016-03-07 2016-07-27 北京金山安全软件有限公司 一种获取网络文件资源的方法、装置及电子设备
CN106686069A (zh) * 2016-12-13 2017-05-17 天津逐帜科技发展有限公司 提供设备资源的方法和设备资源管理装置
CN107147806A (zh) * 2017-06-26 2017-09-08 北京金山安全软件有限公司 应用资源提供方法、设备及系统
CN107205057A (zh) * 2017-08-02 2017-09-26 无锡江南影视传播有限公司 一种游戏资源更新方法、装置及客户端
CN109522041A (zh) * 2018-10-15 2019-03-26 网易(杭州)网络有限公司 客户端资源更新方法、装置、处理器、服务器及终端

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103677942B (zh) * 2013-12-30 2017-09-05 Tcl集团股份有限公司 一种移动终端浏览网络图片的方法和装置
CN105988836B (zh) * 2015-02-12 2020-07-10 Oppo广东移动通信有限公司 一种应用推荐方法及装置
WO2018083622A1 (en) * 2016-11-02 2018-05-11 Gamesys Ltd Loader and method for processing a resource bundle

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105808714A (zh) * 2016-03-07 2016-07-27 北京金山安全软件有限公司 一种获取网络文件资源的方法、装置及电子设备
CN106686069A (zh) * 2016-12-13 2017-05-17 天津逐帜科技发展有限公司 提供设备资源的方法和设备资源管理装置
CN107147806A (zh) * 2017-06-26 2017-09-08 北京金山安全软件有限公司 应用资源提供方法、设备及系统
CN107205057A (zh) * 2017-08-02 2017-09-26 无锡江南影视传播有限公司 一种游戏资源更新方法、装置及客户端
CN109522041A (zh) * 2018-10-15 2019-03-26 网易(杭州)网络有限公司 客户端资源更新方法、装置、处理器、服务器及终端

Also Published As

Publication number Publication date
CN109995863A (zh) 2019-07-09

Similar Documents

Publication Publication Date Title
CN108897628B (zh) 一种分布式锁的实现方法、装置及电子设备
CN110247985B (zh) 一种资源下载方法、装置、电子设备及介质
CN109391673B (zh) 一种管理更新文件的方法、系统及终端设备
CN109743411B (zh) 一种在分布式环境下动态调度ip代理池的方法、装置及存储介质
CN109995863B (zh) 一种动态资源下载方法、装置、电子设备及存储介质
CN110650209B (zh) 实现负载均衡的方法和装置
CN113591068B (zh) 一种在线登录设备管理方法、装置及电子设备
CN111258726B (zh) 任务调度方法和装置
CN108900627B (zh) 一种网络请求方法、终端装置及存储介质
CN112115049B (zh) 应用程序测试方法、装置、设备和计算机可读存储介质
CN112104731A (zh) 请求处理方法、装置、电子设备和存储介质
CN109756533B (zh) 一种镜像加速方法、装置及服务器
WO2016116013A1 (zh) 软件升级方法和系统
CN113220433A (zh) 一种代理程序运行管理方法及系统
CN113687858A (zh) 配置文件的检查方法、装置、电子设备及存储介质
CN113342419B (zh) 一种推送系统加载方法、装置、电子设备及存储介质
CN111694639A (zh) 进程容器地址的更新方法、装置和电子设备
CN109032693B (zh) 一种加载展示信息方法、装置、电子设备及可读存储介质
CN109873731B (zh) 测试方法、装置和系统
CN111698281B (zh) 一种资源下载方法、装置、电子设备及存储介质
CN111147585B (zh) 设备升级方法、装置、存储介质及系统
CN110955460B (zh) 一种服务进程启动方法、装置、电子设备和存储介质
CN113360815A (zh) 一种请求重试方法和装置
CN110309028B (zh) 监控信息获取方法、服务监控方法、装置及系统
CN107045452B (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
GR01 Patent grant
GR01 Patent grant