CN113422800B - 资源处理方法、装置、系统、电子设备及存储介质 - Google Patents
资源处理方法、装置、系统、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113422800B CN113422800B CN202110515486.2A CN202110515486A CN113422800B CN 113422800 B CN113422800 B CN 113422800B CN 202110515486 A CN202110515486 A CN 202110515486A CN 113422800 B CN113422800 B CN 113422800B
- Authority
- CN
- China
- Prior art keywords
- target resource
- fragment
- target
- terminal
- resource
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Abstract
本公开提供了一种资源处理方法、装置、系统、电子设备及存储介质,属于网络技术领域。本公开实施例中,可以获取目标资源的部分资源分片,以作为目标资源分片,其中,目标资源包括多个资源分片,基于分片服务将目标资源分片存储至分片服务对应的指定内存空间,基于指定内存空间中的目标资源分片,向第二终端发送目标资源分片。这样,通过将指定内存空间中的目标资源分片发送给第二终端,可以避免发送资源分片的过程中,对第一终端的磁盘进行频繁读写的问题,进而一定程度上可以降低磁盘占用率,确保第一终端的磁盘可以正常工作。
Description
技术领域
本公开属于网络技术领域,特别是涉及一种资源处理方法、装置、系统、电子设备及存储介质。
背景技术
随着网络技术的不断发展,用户经常需要从网络中下载资源。因此,如何高效的获取资源成为人们广泛的问题。
相关技术中,往往是资源处理系统中的各个终端从中心节点获取部分资源分片并存储至磁盘中,进一步地,各个终端将存储在磁盘中的资源分片共享给其他终端,以供其他终端下载。这种方式中,在多个终端同时下载时,即,其他终端较多的情况下,需要频繁读写磁盘,进而会导致磁盘占用率较高,导致磁盘无法正常工作。
发明内容
为克服相关技术中存在的问题,本公开提供一种资源处理方法、装置、系统、电子设备及存储介质。
依据本公开的第一方面,提供了一种资源处理方法,应用于第一终端,所述第一终端中运行有预设的分片服务,该方法包括:
获取目标资源的部分资源分片,以作为目标资源分片;其中,所述目标资源包括多个资源分片;
基于所述分片服务将所述目标资源分片存储至所述分片服务对应的指定内存空间;
基于所述指定内存空间中的目标资源分片,向第二终端发送所述目标资源分片。
可选的,所述基于所述指定内存空间中的目标资源分片,向第二终端发送所述目标资源分片之前,所述方法还包括:
向预设的中心节点上报所述目标资源分片的地址信息;
所述基于所述指定内存空间中的目标资源分片,向第二终端发送所述目标资源分片,包括:
接收所述第二终端发送的下载请求;所述下载请求是根据所述目标资源分片的地址信息发送的,所述地址信息是所述中心节点分配给所述第二终端的;
响应于所述下载请求,基于所述分片服务向所述第二终端返回存储于目标地址的所述目标资源分片;所述目标地址为所述地址信息指示的地址。
可选的,所述获取目标资源的部分资源分片,以作为目标资源分片之后,所述方法还包括:
将所述目标资源分片写入所述第一终端的磁盘。
可选的,所述分片服务关联有目标队列,所述目标队列与所述指定内存空间对应;
所述基于所述分片服务将所述目标资源分片存储至所述分片服务对应的指定内存空间,包括:
将各个所述目标资源分片作为所述目标队列的队列成员,并分别写入所述目标队列,以在所述指定内存空间中存储所述目标资源分片。
可选的,所述基于所述分片服务将所述目标资源分片存储至所述分片服务对应的指定内存空间之后,所述方法还包括:
记录所述目标资源分片的资源数据量;
根据记录的各个所述目标资源分片的资源数据量,确定所述指定内存空间中已写入的目标资源分片的总数据量;
在所述目标资源分片的总数据量不小于预设数据量阈值的情况下,对所述指定内存空间中的目标资源分片进行清理,以使所述目标资源分片的总数据量小于所述预设数据量阈值。
可选的,所述基于所述分片服务将所述目标资源分片存储至所述分片服务对应的指定内存空间之后,所述方法还包括:
对于所述指定内存空间中的任一所述目标资源分片,按照预设检测周期,检测所述目标资源分片的最近使用时间与当前时间之间的间隔时长是否大于预设时长阈值;
若是,则将所述目标资源分片确定为过期资源分片,并清除所述过期资源分片。
可选的,所述向预设的中心节点上报所述目标资源分片的地址信息之后,所述方法还包括:
对于所述指定内存空间中任一被清除的目标资源分片,向所述中心节点上报所述被清除的目标资源分片的资源信息,以使所述中心节点根据所述资源信息删除所述被清除的目标资源分片对应的地址信息。
可选的,所述获取目标资源的部分资源分片,以作为目标资源分片,包括:
按照预设的滑动窗口的窗口数m,对所述滑动窗口指示的m个目标资源分片依次进行下载;
在完成对所述m个目标资源分片中首个目标资源分片的下载操作的情况下,将所述滑动窗口向后滑动,以继续对所述滑动窗口指示的m个目标资源分片依次进行下载,直至所述目标资源中的各个目标资源分片均被下载。
依据本公开的第二方面,提供了一种资源处理装置,应用于第一终端,所述第一终端中运行有预设的分片服务,该装置包括:
获取模块,被配置为获取目标资源的部分资源分片,以作为目标资源分片;其中,所述目标资源包括多个资源分片;
存储模块,被配置为基于所述分片服务将所述目标资源分片存储至所述分片服务对应的指定内存空间;
发送模块,被配置为基于所述指定内存空间中的目标资源分片,向第二终端发送所述目标资源分片。
可选的,所述装置还包括:
第一上报模块,被配置为在所述发送模块基于所述指定内存空间中的目标资源分片,向第二终端发送所述目标资源分片之前,向预设的中心节点上报所述目标资源分片的地址信息;
发送模块,被具体配置为:
接收所述第二终端发送的下载请求;所述下载请求是根据所述目标资源分片的地址信息发送的,所述地址信息是所述中心节点分配给所述第二终端的;
响应于所述下载请求,基于所述分片服务向所述第二终端返回存储于目标地址的所述目标资源分片;所述目标地址为所述地址信息指示的地址。
可选的,所述装置还包括:
写入模块,被配置为在所述获取模块获取目标资源的部分资源分片,以作为目标资源分片之后,将所述目标资源分片写入所述第一终端的磁盘。
可选的,所述分片服务关联有目标队列,所述目标队列与所述指定内存空间对应;
所述存储模块,被具体配置为:
将各个所述目标资源分片作为所述目标队列的队列成员,并分别写入所述目标队列,以在所述指定内存空间中存储所述目标资源分片。
可选的,所述装置还包括:
记录模块,被配置为在所述存储模块基于所述分片服务将所述目标资源分片存储至所述分片服务对应的指定内存空间之后,记录所述目标资源分片的资源数据量;
确定模块,被配置为根据记录的各个所述目标资源分片的资源数据量,确定所述指定内存空间中已写入的目标资源分片的总数据量;
清理模块,被配置为在所述目标资源分片的总数据量不小于预设数据量阈值的情况下,对所述指定内存空间中的目标资源分片进行清理,以使所述目标资源分片的总数据量小于所述预设数据量阈值。
可选的,所述装置还包括:
检测模块,被配置为在所述存储模块基于所述分片服务将所述目标资源分片存储至所述分片服务对应的指定内存空间之后,对于所述指定内存空间中的任一所述目标资源分片,按照预设检测周期,检测所述目标资源分片的最近使用时间与当前时间之间的间隔时长是否大于预设时长阈值;
清除模块,被配置为若是,则将所述目标资源分片确定为过期资源分片,并清除所述过期资源分片。
可选的,所述装置还包括:
第二上报模块,被配置为在所述第一上报模块向所述中心节点上报所述目标资源分片的地址信息之后,对于所述指定内存空间中任一被清除的目标资源分片,向所述中心节点上报所述被清除的目标资源分片的资源信息,以使所述中心节点根据所述资源信息删除所述被清除的目标资源分片对应的地址信息。
可选的,所述获取模块,被具体配置为:
按照预设的滑动窗口的窗口数m,对所述滑动窗口指示的m个目标资源分片依次进行下载;
在完成对所述m个目标资源分片中首个目标资源分片的下载操作的情况下,将所述滑动窗口向后滑动,以继续对所述滑动窗口指示的m个目标资源分片依次进行下载,直至所述目标资源中的各个目标资源分片均被下载。
依据本公开的第三方面,提供了一种资源处理系统,所述系统包括第一终端以及第二终端;
所述第一终端,用于获取目标资源的部分资源分片,以作为目标资源分片;其中,所述目标资源包括多个资源分片;
所述第一终端,还用于基于所述第一终端中运行的预设的分片服务,将所述目标资源分片存储至所述分片服务对应的指定内存空间;
所述第一终端,还用于基于所述指定内存空间中的目标资源分片,向第二终端发送所述目标资源分片;
所述第二终端,用于接收所述第一终端发送的所述目标资源分片。
可选的,所述系统还包括预设的中心节点;
所述第一终端,还用于在基于所述分片服务将所述目标资源分片存储至所述分片服务对应的指定内存空间之后,向所述中心节点上报所述目标资源分片的地址信息;
所述第二终端,还用于向所述中心节点发送地址信息获取请求;
所述中心节点,用于响应于所述地址信息获取请求,为所述第二终端分配目标地址信息;
所述第二终端,还用于在所述目标地址信息为所述目标资源分片的地址信息的情况下,根据所述目标地址信息向所述第一终端发送下载请求;
所述第一终端,具体用于接收所述第二终端发送的所述下载请求;
所述第一终端,还具体用于响应于所述下载请求,基于所述分片服务向所述第二终端返回存储于目标地址的所述目标资源分片;所述目标地址为所述目标地址信息指示的地址。
依据本公开的第四方面,提供了一种电子设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如第一方面中任一项所述的资源处理方法。
依据本公开的第五方面,提供了一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备执行如第一方面中任一项所述的资源处理方法。
依据本公开的第六方面,提供了一种计算机程序产品,所述计算机程序产品包括可读性程序指令,所述可读性程序指令由电子设备的处理器执行时,使得所述电子设备执行如第一方面中任一项所述的资源处理方法。
本公开相比于相关技术,具有如下的优点和积极效果:
本公开实施例提供的资源处理方法,可以获取目标资源的部分资源分片,以作为目标资源分片,其中,目标资源包括多个资源分片,基于分片服务将目标资源分片存储至分片服务对应的指定内存空间,基于指定内存空间中的目标资源分片,向第二终端发送目标资源分片。这样,通过将指定内存空间中的目标资源分片发送给第二终端,可以避免发送资源分片的过程中,对第一终端的磁盘进行频繁读写的问题,进而一定程度上可以降低磁盘占用率,确保第一终端的磁盘可以正常工作。
上述说明仅是本公开技术方案的概述,为了能够更清楚了解本公开的技术手段,而可依照说明书的内容予以实施,并且为了让本公开的上述和其它目的、特征和优点能够更明显易懂,以下特举本公开的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本公开的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1是本公开实施例提供的一种资源处理方法的步骤流程图;
图2是本公开实施例提供的一种分片服务示意图;
图3是本公开实施例提供的一种下载示意图;
图4是本公开实施例提供的另一种下载示意图;
图5是一种现有的资源共享操作的示意图;
图6是本公开实施例提供的一种资源处理装置的框图;
图7是本公开实施例提供的一种资源处理系统的框图
图8是根据一示例性实施例示出的一种用于资源处理的装置的框图;
图9是根据一示例性实施例示出的一种用于资源处理的装置的框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1是本公开实施例提供的一种资源处理方法的步骤流程图,该方法可以应用于第一终端,所述第一终端中运行有预设的分片服务,如图1所示,该方法可以包括:
步骤101、获取目标资源的部分资源分片,以作为目标资源分片;其中,所述目标资源包括多个资源分片。
本公开实施例中,目标资源可以包括视频、音频、文本等类型的文件。目标资源包括的资源分片的具体数量可以是根据实际情况设置的,例如,采用不同的分片算法对目标资源进行分片,最终得到的资源分片的数量可能不同。每个资源分片可以表征目标资源的一部分数据,资源分片可以为文件的一部分,一个文件可以拆分成若干个分片,目标资源包括的多个资源分片可以组成完整的目标资源。
进一步地,第一终端可以从资源处理系统的预设的中心节点中获取部分资源分片,得到目标资源分片,也可以是从资源处理系统的其他终端中获取该其他终端持有的部分资源分片,作为目标资源分片。具体的,第一终端可以先从中心节点获取下载地址信息,该下载地址信息指示的下载地址可以指向中心节点本身,也可以指向其他终端。相应地,在下载地址指向中心节点本身时,可以基于该下载地址从中心节点获取目标资源分片。在下载地址指向其他终端本身时,可以基于该下载地址从其他终端获取目标资源分片。其中,第一终端可以为资源处理系统中的任一终端,终端可以为物理机(host)。示例的,终端可以为计算机。中心节点可以为目标资源的源站,中心节点可以持有完整目标资源,即,持有全部资源分片的设备。中心节点可以为终端、服务器,等等。中心节点可以向资源处理系统中的各个终端提供部分资源分片,各个终端之间通过共享各自持有的资源分片即可得到完整的目标资源。这样,中心节点无需向每个终端均传输完整的目标资源,进而可以节省中心节点的网络开销,避免中心节点带宽不足导致的下载缓慢问题,确保目标资源下载效率。
步骤102、基于所述分片服务将所述目标资源分片存储至所述分片服务对应的指定内存空间。
本公开实施例中,分片服务(piece server)可以是预先设置的用于实现将目标资源分片写入指定内存空间的进程,分片服务对应的指定内存空间可以是根据实际需求预先设定的,指定内存空间的具体内存大小可以根据实际需求设置,本公开实施例对此不作限定。
步骤103、基于所述指定内存空间中的目标资源分片,向第二终端发送所述目标资源分片。
本公开实施例中,第二终端可以为资源处理系统中除第一终端之外的其他终端,由于目标资源分片被存储在指定内存空间中,这样,向第二终端发送目标资源分片,第二终端从第一终端中下载第一资源时,第一终端仅需对指定内存空间进行读写即可,进而可以避免造成磁盘占用率较高的问题。
综上所述,本公开实施例提供的资源处理方法,可以获取目标资源的部分资源分片,以作为目标资源分片,其中,目标资源包括多个资源分片,基于分片服务将目标资源分片存储至分片服务对应的指定内存空间,基于指定内存空间中的目标资源分片,向第二终端发送目标资源分片。这样,通过将指定内存空间中的目标资源分片发送给第二终端,可以避免发送资源分片的过程中,对第一终端的磁盘进行频繁读写的问题,进而一定程度上可以降低磁盘占用率,确保第一终端的磁盘可以正常工作。
可选的,本公开实施例在获取目标资源的部分资源分片,以作为目标资源分片的步骤之后,可以进一步执行操作:将所述目标资源分片写入所述第一终端的磁盘。其中,将目标资源分片写入第一终端的磁盘的操作可以与上述步骤102同时执行,也可以是在上述步骤102之前执行,或者,也可以是在上述步骤102之后执行,本公开实施例对此不作限定。具体的,可以启动一个专门用于将目标资源分片写入第一终端的磁盘的进程,通过运行该进程实现将目标资源分片写入第一终端的磁盘的操作,或者,也可以通过预设的分片服务,基于分片服务执行将目标资源分片写入第一终端的磁盘的操作。
进一步地,第一终端的磁盘作为第一终端的存储硬件,磁盘中可使用的存储空间往往更充足且磁盘本身具备能够永久存储数据的功能,磁盘中存储的数据的稳定性往往更高。本公开实施例中,通过在内存中缓存目标资源分片,向其他终端分享内存中的目标资源分片,以避免对分享操作导致对磁盘频繁读写的同时,进一步在第一终端的磁盘中写入目标资源分片,由于磁盘中存储的数据稳定性更高,因此,一定程度上可以确保第一终端所获取的目标资源分片的存储稳定性。且由于磁盘的存储空间往往更充足,因此,一定程度上可以确保第一终端最终能够正常存储完整的目标资源。
可选的,本公开实施例中的分片服务可以关联有目标队列,该目标队列可以与上述指定内存空间对应,即,目标队列存储于上述指定内存空间,这样,将目标资源分片写入目标队列,相当于将目标资源分片缓存至指定内存空间中。相应地,上述基于分片服务将目标资源分片存储至分片服务对应的指定内存空间的操作,可以具体包括:
步骤1021、将各个所述目标资源分片作为所述目标队列的队列成员,并分别写入所述目标队列,以在所述指定内存空间中存储所述目标资源分片。
本步骤中,可以将本次获取到的每个目标资源分片分别作为一个队列成员,然后依次写入目标队列的队列节点中。具体的,目标队列中可能已存储有之前获取到的目标资源分片,因此,在写入时,可以先确定队列指针当前指向的队列节点,其中,队列指针指向最近一次写入的目标资源分片所在的队列节点。然后,在从队首依次向队尾写入的情况下,在该队列节点的下一个队列节点中写入本次获取到的目标资源分片,或者,在从队尾依次向队首写入的情况下,在该队列节点的上一个队列节点中写入本次获取到的目标资源分片,进而避免与已存储的目标资源分片产生冲突。
本公开实施例中,将各个目标资源分片作为目标队列的队列成员,以队列的形式实现在指定内存空间中存储目标资源分片的方式,一定程度上可以使得多次获取到的多个目标资源分片在指定内存空间中能够依次连续存储,进而可以使得指定内存空间中存储的目标资源分片更加有序,从而方便后续对指定内存空间中存储的目标资源分片进行管理。
可选的,本公开实施例中在基于所述分片服务将所述目标资源分片存储至所述分片服务对应的指定内存空间之后,具体的,可以是将各个目标资源分片作为目标队列的成员,并分别写入目标队列之后,还可以执行以下步骤:
步骤S21、记录所述目标资源分片的资源数据量。
本公开实施例中,目标资源分片的资源数据量(size)可以表征目标资源分片所占据的内存大小。具体的,对于任一目标资源分片,可以在向指定内存空间中写入目标资源分片时,检测该目标资源分片的资源数据量并进行记录。示例的,可以将预设的指定参数的参数值设置为检测到的资源数据量,或者将检测到的资源数据量写入指定位置,以实现记录。这样,通过进一步记录目标资源分片的资源数据量,可以方便后续便捷的确定指定内存空间中已写入的目标资源分片的总数据量,进而一定程度上可以提高处理效率。需要说明的是,本公开实施例中也可以是在其他环节记录目标资源分片的资源数据量,本公开实施例对此不作限定。
步骤S22、根据记录的各个所述目标资源分片的资源数据量,确定所述指定内存空间中已写入的目标资源分片的总数据量。
本步骤中,可以基于记录的各个目标资源分片的资源数据量,确定指定内存空间中已写入的各个目标资源分片的资源数据量,然后计算已写入的所有目标资源分片的资源数据量之和,将已写入的所有目标资源分片的资源数据量之和,确定为指定内存空间中已写入的目标资源分片的总数据量。
步骤S23、在所述目标资源分片的总数据量不小于预设数据量阈值的情况下,对所述指定内存空间中的目标资源分片进行清理,以使所述目标资源分片的总数据量小于所述预设数据量阈值。
本步骤中,预设数据量阈值可以是根据实际需求设置,预设数据量阈值可以表征为“max size”。具体实施时,可以将总数据量与预设数据量阈值进行比对,以确定两者之间的大小关系。示例的,可以计算总数据量减去预设数据量阈值之后,得到的差值。如果该差值不小于0,则可以确定目标资源分片的总数据量不小于预设数据量阈值。如果该差值小于0,则可以确定目标资源分片的总数据量小于预设数据量阈值。进一步地,如果目标资源分片的总数据量小于预设数据量阈值,则可以认为指定内存空间当前的空间足够,可以正常继续存储其他目标资源分片。示例的,图2是本公开实施例提供的一种分片服务示意图,如图2所示,总数据量小于预设数据量阈值max size,因此,可以不进行清理。反之,如果目标资源分片的总数据量不小于预设数据量阈值,则可以认为指定内存空间中当前存储的目标资源分片较多,指定内存空间当前的空间不足,无法正常继续存储其他目标资源分片。相应地,本公开实施例中可以在这种情况下,对指定内存空间中的目标资源分片进行清理,以确保指定内存空间能够正常进行存储。
具体进行清理时,可以确定指定内存空间中各个目标资源分片的最近使用时间,对最近使用时间最早的目标资源分片进行清除。其中,上述清理过程可以基于预设的最近最少使用(Least Recently Used,LRU)回收算法实现,进一步地,还可以结合各个目标资源分片的使用频次,确定要清除的目标资源分片,例如,将使用时间最早的前M个目标资源分片中使用频次小于预设频次阈值的目标资源分片进行清除。或者,也可以从指定内存空间中随机选择N个目标资源分片,并进行清除,本公开实施例对此不作限定。其中,M,N为正整数,M,N的具体值可以根据实际需求设置。进一步地,目标资源分片的最近使用时间可以是该目标资源分片最近被第二终端下载的时间点。如果目标资源分片的最近使用时间越早,则可以认为该目标资源分片后续被使用的概率越小,因此,可以选择指定内存空间中最近使用时间最早的目标资源分片进行清除。这样,一定程度上可以在腾出存储空间的同时,避免有用的目标资源分片被清除的问题。需要说明的是,本公开实施例还可以在执行清除操作之后,继续检测清除后剩余的目标资源分片的总数据量是否小于预设数据量阈值。如果总数据量依旧不小于预设数据量阈值,则可以继续进行清除,直至总数据量小于预设数据量阈值为止,例如,可以在总数据量与预设数据量阈值之间的差值达到预设数值的情况下,停止清除操作。
本公开实施例中,通过在指定内存空间中存储的目标资源分片的总数据量不小于预设数据量阈值,即,指定内存空间无法正常继续存储其他目标资源分片的情况下,对指定内存空间中的目标资源分片进行清理,以使指定内存空间拥有充足的空间,进而可以确保后续能够继续向指定内存空间正常写入新获取的目标资源分片。
可选的,在一种实现方式中,在基于分片服务将目标资源分片存储至分片服务对应的指定内存空间之后,本公开实施例中还可以执行以下步骤:
步骤S31、对于所述指定内存空间中的任一所述目标资源分片,按照预设检测周期,检测所述目标资源分片的最近使用时间与当前时间之间的间隔时长是否大于预设时长阈值。
本步骤中,预设检测周期以及预设时长阈值可以是根据实际需求设置的,示例的,预设检测周期可以为3天,预设时长阈值可以为3分钟,本公开实施例对此不作限定。具体实施时,可以先获取目标资源分片的最近使用时间,然后计算该目标资源分片的最近使用时间与当前时间之间的间隔时长,最后判断该间隔时长是否大于预设时长阈值。其中,获取目标资源分片的最近使用时间时,可以是直接复用前述步骤中确定的最近使用时间,以提高获取效率。
步骤S32、若是,则将所述目标资源分片确定为过期资源分片,并清除所述过期资源分片。
本步骤中,如果目标资源分片的最近使用时间与当前时间之间的间隔时长大于预设时长阈值,则可以认为该目标资源分片后期被使用的概率较小,因此,可以将该目标资源分片确定为过期资源分片进行清除。
本公开实施例中,对于指定内存空间中的任一目标资源分片,按照预设检测周期,检测目标资源分片的最近使用时间与当前时间之间的间隔时长是否大于预设时长阈值,在目标资源分片的最近使用时间与当前时间之间的间隔时长大于预设时长阈值的情况下,将目标资源分片确定为过期资源分片,并清除过期资源分片。这样,通过周期性检测并清理指定内存空间中的过期资源分片,一定程度上可以避免指定内存空间被不必要的占用,进而降低指定内存空间的占用率。
可选的,在本公开的一种实现方式中,在基于指定内存空间中的目标资源分片,向第二终端发送目标资源分片之前,还可以执行下述步骤:
步骤S41、向预设的中心节点上报所述目标资源分片的地址信息。
本步骤中,目标资源分片的地址信息可以用于指示所述指定内存空间中目标资源分片的下载地址。在一种实现方式中,第一终端可以具体是在将目标资源分片存储至分片服务对应的指定内存空间后,即刻将目标资源分片的地址信息发送给中心节点,以供预设的中心节点及时存储。相应地,获取到目标资源分片的第一终端可能有多个,因此,中心节点中可以存储有目标资源分片的多个地址信息,这多个地址信息指向不同的第一终端。
上述基于指定内存空间中的目标资源分片,向第二终端发送目标资源分片的操作,可以具体包括以下步骤:
步骤1031、接收所述第二终端发送的下载请求;所述下载请求是根据所述目标资源分片的地址信息发送的,所述地址信息是所述中心节点分配给所述第二终端的。
具体的,第二终端可以在需要获取目标资源分片的情况下,向中心节点发送地址信息获取请求。地址信息获取请求可以用于指示中心节点返回目标资源分片的地址信息,例如,该地址获取请求中可以携带有目标资源分片的标识。相应地,中心节点可以在收到地址信息获取请求之后,响应于该地址信息获取请求,可以从存储有该标识所指示的目标资源分片的第一终端中,选择与第二终端相适配的第一终端。最后,将该相适配的第一终端上报的地址信息作为目的地址信息,返回给第二终端。其中,与第二终端相适配的第一终端可以是与第二终端的距离最小和/或当前的负载量最小的第一终端。进一步地,在目标地址信息为本公开实施例中的第一终端上报的目标资源分片的地址信息的情况下,即,与第二终端相适配的第一终端为本公开实施例中的第一终端的情况下,第二终端可以根据目标地址信息向该第一终端发送下载请求,该下载请求可以用于指示该第一终端将其存储的目标资源分片返回给第二终端。当然,与第二终端相适配的第一终端也可能为其他第一终端,本公开实施例对此不作限定。
步骤1032、响应于所述下载请求,基于所述分片服务向所述第二终端返回存储于目标地址的所述目标资源分片;所述目标地址为所述地址信息指示的地址。
本步骤中,在接收到下载请求之后,可以确定第二终端需要存储于目标地址的目标资源分片。相应地,可以调用分片服务向第二终端返回存储于目标地址的目标资源分片,进而完成资源分片共享。
本公开实施例中,通过向预设的中心节点上报目标资源分片的地址信息,可以使得第二终端从中心节点中即可便捷获取到地址信息,并基于地址信息发送下载请求。相应地,第一终端响应于下载请求,基于分片服务向第二终端返回存储于该地址信息所指示地址的目标资源分片,进而可以使得第二终端可以从第一终端中便捷的下载到第一终端持有的目标资源分片,从而一定程度上确保资源分片的获取效率。
进一步地,本公开实施例中还可以在向预设的中心节点上报所述目标资源分片的地址信息之后,进一步执行下述操作步骤:
步骤S51、对于所述指定内存空间中任一被清除的目标资源分片,向所述中心节点上报所述被清除的目标资源分片的资源信息,以使所述中心节点根据所述资源信息删除所述被清除的目标资源分片对应的地址信息。
本步骤中,指定内存空间中被清除的目标资源分片可以包括上述过期资源分片以及步骤S23中被清除的目标资源分片。目标资源分片的资源信息可以用于唯一指示该目标资源分片,示例的,目标资源分片的资源信息可以包括目标资源分片的标识信息。第一终端可以将目标资源分片的资源信息发送给中心节点。相应地,中心节点可以根据资源信息确定被清除的目标资源分片,然后删除之前存储的该被清除的目标资源分片对应的地址信息。
本公开实施例中,通过向中心节点上报被清除的目标资源分片的资源信息,控制中心节点对应清除被清除的目标资源分片的地址信息,进而可以避免第二终端从中心节点获取到已被清除的目标资源分片的地址信息,从而避免第二终端执行下载已被清除的目标资源分片的不必要操作。
可选的,在本公开的一种实现中,上述获取目标资源的部分资源分片,以作为目标资源分片的步骤,可以具体包括:
步骤1011、按照预设的滑动窗口的窗口数m,对所述滑动窗口指示的m个目标资源分片依次进行下载。
本公开实施例中,预设的滑动窗口(slite window)的窗口数m可以在预设的滑动窗口算法中定义,示例的,滑动窗口的窗口数m可以根据实际需求设置,例如,滑动窗口的窗口数m可以为3。滑动窗口的窗口数3可以保证客户端同时最多下载3个资源分片。以m=3为例,图3是本公开实施例提供的一种下载示意图,如图3所示,第一终端可以先依次下载滑动窗口指示的3个目标资源分片:1、2、3。
其中,第一终端下载目标资源分片时,可以先向中心节点请求该目标资源分片的下载地址,其中,目标资源分片的下载地址可以为多个。中心节点可以安排第一终端从中心节点或者其他客户端(即,第三终端)下载目标资源分片。相应地,该下载地址可以指向中心节点中目标资源分片的存储位置或第三终端中目标资源分片的存储位置。接着,基于请求到的下载地址进行下载。需要说明的是,还可以将中心节点的并发数量限制为n,以确保资源处理系统中最多有n个终端进行下载,以及,控制终端优先从其他终端中下载资源分片,进而一定程度上可以确保系统的稳定性。
步骤1012、在完成对所述m个目标资源分片中首个目标资源分片的下载操作的情况下,将所述滑动窗口向后滑动,以继续对所述滑动窗口指示的m个目标资源分片依次进行下载,直至所述目标资源中的各个目标资源分片均被下载。
示例的,在完成对目标资源分片1的下载操作之后,可以将滑动窗口向后滑动。以继续对滑动窗口指示的m个目标资源分片依次进行下载。示例的,图4是本公开实施例提供的另一种下载示意图,如图4所示,第一终端可以继续依次下载滑动窗口指示的3个目标资源分片:2、3、4。
相较于终端乱序下载各个资源分片的方式,本公开实施例中,第一终端按照预设的滑动窗口的窗口数m,对滑动窗口指示的m个目标资源分片依次进行下载,在完成对m个目标资源分片中首个目标资源分片的下载操作的情况下,将滑动窗口向后滑动,以继续对滑动窗口指示的m个目标资源分片依次进行下载,直至目标资源中的各个目标资源分片均被下载。这样,每个第一终端均按照滑动窗口顺序下载,一定程度上可以确保各终端下载资源分片的顺序保持一致,同时,在后续其他的第二终端按照滑动窗口顺序下载目标资源分片时,第一终端的分片服务已存储的目标资源分片能够命中第二终端的下载需求,进而提高命中率,从而确定资源分享效果。
图5是一种现有的资源共享操作的示意图,如图5所示,终端A和终端B分别从中心节点下载分片1以及分片2并写入磁盘,终端A和终端B之间分享获取到的分片1以及分片2。在一种现有实现方式中,终端中的下载工具对磁盘进行读写时,会由操作系统控制读写。具体的,操作系统的控制逻辑往往为判断终端的缓存是否充足,在终端缓存足够时,使用缓存存储分片。在终端缓存不足时,直接写入终端的磁盘。由于该存储过程由操作系统实现,用户往往无法控制。且在终端缓存不足时,终端共享资源分片给其他终端下载时,往往会直接读取磁盘上的资源分片。这种情况在下载的超大文件时出现较为频繁,会导致磁盘被频繁乱序读写,磁盘的I/O压力较大,下载期间磁盘的负载(util load)较高,从而会导致终端中的其他应用无法正常使用磁盘,进而导致运行卡顿等等问题。
本公开实施例中通过设置piece server,基于piece server自主将获取到的目标资源分片存入指定内存空间。之后再写入磁盘,并基于指定内存空间中的目标资源分片进行共享。这样,可以在确保多个终端进行点对点下载的同时,有效减少了在下载过程中对磁盘的频繁乱序读写,降低了磁盘的I/O压力,从而缓解了磁盘的负载,减少了机盘的运转,提高了磁盘使用寿命。同时,可以使得终端中的其他应用可以正常使用磁盘,提高磁盘的使用率。其中,本公开实施例中的资源处理方法可以是基于第一终端中的下载工具的客户端实现的,客户端可以在piece server模式下,执行上述资源处理方法。piece server可以增加至下载工具的客户端中。piece server本质上可以为一个固定内存大小、基于LRU回收算法的分片中心。
进一步地,以目标资源是大小为25g的文件,有3台限速100MB/s的终端进行点对点下载目标资源为例。在以磁盘作为共享介质的情况下,使用期间磁盘的读频率约为50MB/s,写入频率约为100M/s,磁盘整体的负载率接近100%,其他应用使用磁盘受影响。在将资源分片写入指定内存空间以及磁盘,且piece server使用指定内存空间作为共享介质的情况下,使用期间磁盘的读频率为0,写入频率约为100M/s,磁盘整体的负载率不超过80%,其他应用仍可以正常使用磁盘。可见,使用piece server共享资源分片无需从磁盘进行读取,进而一定程度上可以确保共享过程的速度以及稳定性。
图6是本公开实施例提供的一种资源处理装置的框图,该装置应用于第一终端,所述第一终端中运行有预设的分片服务,如图6所示,该装置50可以包括:
获取模块501,被配置为获取目标资源的部分资源分片,以作为目标资源分片;其中,所述目标资源包括多个资源分片;
存储模块502,被配置为基于所述分片服务将所述目标资源分片存储至所述分片服务对应的指定内存空间;
发送模块503,被配置为基于所述指定内存空间中的目标资源分片,向第二终端发送所述目标资源分片。
本公开实施例提供的资源处理装置,可以获取目标资源的部分资源分片,以作为目标资源分片,其中,目标资源包括多个资源分片,基于分片服务将目标资源分片存储至分片服务对应的指定内存空间,基于指定内存空间中的目标资源分片,向第二终端发送目标资源分片。这样,通过将指定内存空间中的目标资源分片发送给第二终端,可以避免发送资源分片的过程中,对第一终端的磁盘进行频繁读写的问题,进而一定程度上可以降低磁盘占用率,确保第一终端的磁盘可以正常工作。
可选的,所述装置50还包括:
第一上报模块,被配置为在所述发送模块503基于所述指定内存空间中的目标资源分片,向第二终端发送所述目标资源分片之前,向预设的中心节点上报所述目标资源分片的地址信息,以供所述第二终端从所述中心节点中获取所述目标资源分片的地址信息,并向所述第一终端发送携带所述地址信息的下载请求;
所述发送模块503,被具体配置为:
接收所述第二终端发送的下载请求;所述下载请求是根据所述目标资源分片的地址信息发送的,所述地址信息是所述中心节点分配给所述第二终端的;
响应于所述下载请求,基于所述分片服务向所述第二终端返回存储于目标地址的所述目标资源分片;所述目标地址为所述地址信息指示的地址。
可选的,所述装置50还包括:
写入模块,被配置为在所述获取模块501获取目标资源的部分资源分片,以作为目标资源分片之后,将所述目标资源分片写入所述第一终端的磁盘。
可选的,所述分片服务关联有目标队列,所述目标队列与所述指定内存空间对应;
所述存储模块502,被具体配置为:
将各个所述目标资源分片作为所述目标队列的队列成员,并分别写入所述目标队列,以在所述指定内存空间中存储所述目标资源分片。
可选的,所述装置50还包括:
记录模块,被配置为在所述存储模块502基于所述分片服务将所述目标资源分片存储至所述分片服务对应的指定内存空间之后,记录所述目标资源分片的资源数据量;
确定模块,被配置为根据记录的各个所述目标资源分片的资源数据量,确定所述指定内存空间中已写入的目标资源分片的总数据量;
清理模块,被配置为在所述目标资源分片的总数据量不小于预设数据量阈值的情况下,对所述指定内存空间中的目标资源分片进行清理,以使所述目标资源分片的总数据量小于所述预设数据量阈值。
可选的,所述装置50还包括:
检测模块,被配置为在所述存储模块502基于所述分片服务将所述目标资源分片存储至所述分片服务对应的指定内存空间之后,对于所述指定内存空间中的任一所述目标资源分片,按照预设检测周期,检测所述目标资源分片的最近使用时间与当前时间之间的间隔时长是否大于预设时长阈值;
清除模块,被配置为若是,则将所述目标资源分片确定为过期资源分片,并清除所述过期资源分片。
可选的,所述装置50还包括:
第二上报模块,被配置为在所述第一上报模块向所述中心节点上报所述目标资源分片的地址信息之后,对于所述指定内存空间中任一被清除的目标资源分片,向所述中心节点上报所述被清除的目标资源分片的资源信息,以使所述中心节点根据所述资源信息删除所述被清除的目标资源分片对应的地址信息。
可选的,所述获取模块501,被具体配置为:
按照预设的滑动窗口的窗口数m,对所述滑动窗口指示的m个目标资源分片依次进行下载;
在完成对所述m个目标资源分片中首个目标资源分片的下载操作的情况下,将所述滑动窗口向后滑动,以继续对所述滑动窗口指示的m个目标资源分片依次进行下载,直至所述目标资源中的各个目标资源分片均被下载。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图7是本公开实施例提供的一种资源处理系统的框图,如图7所示,该系统60可以包括第一终端601以及第二终端602,第一终端601可以包括预设的分片服务;
其中,所述第一终端601,用于获取目标资源的部分资源分片,以作为目标资源分片;其中,所述目标资源包括多个资源分片;所述第一终端601,还用于基于所述第一终端601中运行的预设的分片服务,将所述目标资源分片存储至所述分片服务对应的指定内存空间;所述第一终端601,还用于基于所述指定内存空间中的目标资源分片,向第二终端602发送所述目标资源分片;所述第二终端602,用于接收所述第一终端601发送的所述目标资源分片。
可选的,所述系统60还包括预设的中心节点603;所述第一终端601,还用于在基于所述分片服务将所述目标资源分片存储至所述分片服务对应的指定内存空间之后,向所述中心节点603上报所述目标资源分片的地址信息;所述第二终端602,还用于向所述中心节点603发送地址信息获取请求;所述中心节点603,用于响应于所述地址信息获取请求,为所述第二终端602分配目标地址信息;所述第二终端602,还用于在所述目标地址信息为所述目标资源分片的地址信息的情况下,根据所述目标地址信息向所述第一终端601发送下载请求;所述第一终端601,具体用于接收所述第二终端602发送的所述下载请求;所述第一终端601,还具体用于响应于所述下载请求,基于所述分片服务向所述第二终端602返回存储于目标地址的所述目标资源分片;所述目标地址为所述目标地址信息指示的地址。
关于上述实施例中的系统,其中包含的第一终端、第二终端以及中心节点执行操作的具体方式已经在有关实施例中进行了详细描述,此处将不做详细阐述说明。
根据本公开的一个实施例,提供了一种电子设备,包括:处理器、用于存储处理器可执行指令的存储器,其中,处理器被配置为执行时实现如上述任一个实施例中的资源处理方法中的步骤。
根据本公开的一个实施例,还提供了一种存储介质,当存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如上述任一个实施例中的资源处理方法中的步骤。
根据本公开的一个实施例,还提供了一种计算机程序产品,该计算机程序产品包括可读性程序代码,该可读性程序代码由电子设备的处理器执行时,使得电子设备能够执行如上述任一个实施例中的资源处理方法中的步骤。
图8是根据一示例性实施例示出的一种用于资源处理的装置的框图。例如,装置700可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图8,装置700可以包括以下一个或多个组件:处理组件702,存储器704,电力组件706,多媒体组件708,音频组件710,输入/输出(I/O)的接口712,传感器组件714,以及通信组件716。
处理组件702通常控制装置700的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件702可以包括一个或多个处理器720来执行指令,以完成上述的资源处理方法的全部或部分步骤。此外,处理组件702可以包括一个或多个模块,便于处理组件702和其他组件之间的交互。例如,处理组件702可以包括多媒体模块,以方便多媒体组件708和处理组件702之间的交互。
存储器704被配置为存储各种类型的数据以支持在设备700的操作。这些数据的示例包括用于在装置700上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器704可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件706为装置700的各种组件提供电力。电源组件706可以包括电源管理系统,一个或多个电源,及其他与为装置700生成、管理和分配电力相关联的组件。
多媒体组件708包括在所述装置700和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件708包括一个前置摄像头和/或后置摄像头。当设备700处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件710被配置为输出和/或输入音频信号。例如,音频组件710包括一个麦克风(MIC),当装置700处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器704或经由通信组件716发送。在一些实施例中,音频组件710还包括一个扬声器,用于输出音频信号。
I/O接口712为处理组件702和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件714包括一个或多个传感器,用于为装置700提供各个方面的状态评估。例如,传感器组件714可以检测到设备700的打开/关闭状态,组件的相对定位,例如所述组件为装置700的显示器和小键盘,传感器组件714还可以检测装置700或装置700一个组件的位置改变,用户与装置700接触的存在或不存在,装置700方位或加速/减速和装置700的温度变化。传感器组件714可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件714还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件714还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件716被配置为便于装置700和其他设备之间有线或无线方式的通信。装置700可以接入基于通信标准的无线网络,如WiFi,运营商网络(如2G、3G、4G或5G),或它们的组合。在一个示例性实施例中,通信组件716经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件716还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置700可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述资源处理方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器704,上述指令可由装置700的处理器720执行以完成上述资源处理方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
图9是根据一示例性实施例示出的一种用于资源处理的装置的框图。例如,装置800可以被提供为一服务器。参照图9,装置800包括处理组件822,其进一步包括一个或多个处理器,以及由存储器832所代表的存储器资源,用于存储可由处理组件822的执行的指令,例如应用程序。存储器832中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件822被配置为执行指令,以执行上述资源处理方法。
装置800还可以包括一个电源组件826被配置为执行装置800的电源管理,一个有线或无线网络接口850被配置为将装置800连接到网络,和一个输入输出(I/O)接口858。装置800可以操作基于存储在存储器832的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (18)
1.一种资源处理方法,其特征在于,所述方法应用于第一终端,所述第一终端中运行有预设的分片服务,所述方法包括:
获取目标资源的部分资源分片,以作为目标资源分片;其中,所述目标资源包括多个资源分片;
基于所述分片服务将所述目标资源分片存储至所述分片服务对应的指定内存空间,所述指定内存空间为与所述第一终端的磁盘不同的内存空间;
基于所述指定内存空间中的目标资源分片,向第二终端发送所述目标资源分片;
所述获取目标资源的部分资源分片,以作为目标资源分片之后,所述方法还包括:
将所述目标资源分片写入所述第一终端的磁盘。
2.根据权利要求1所述的方法,其特征在于,所述基于所述指定内存空间中的目标资源分片,向第二终端发送所述目标资源分片之前,所述方法还包括:
向预设的中心节点上报所述目标资源分片的地址信息;
所述基于所述指定内存空间中的目标资源分片,向第二终端发送所述目标资源分片,包括:
接收所述第二终端发送的下载请求;所述下载请求是根据所述目标资源分片的地址信息发送的,所述地址信息是所述中心节点分配给所述第二终端的;
响应于所述下载请求,基于所述分片服务向所述第二终端返回存储于目标地址的所述目标资源分片;所述目标地址为所述地址信息指示的地址。
3.根据权利要求1至2任一所述的方法,其特征在于,所述分片服务关联有目标队列,所述目标队列与所述指定内存空间对应;
所述基于所述分片服务将所述目标资源分片存储至所述分片服务对应的指定内存空间,包括:
将各个所述目标资源分片作为所述目标队列的队列成员,并分别写入所述目标队列,以在所述指定内存空间中存储所述目标资源分片。
4.根据权利要求2所述的方法,其特征在于,所述基于所述分片服务将所述目标资源分片存储至所述分片服务对应的指定内存空间之后,所述方法还包括:
记录所述目标资源分片的资源数据量;
根据记录的各个所述目标资源分片的资源数据量,确定所述指定内存空间中已写入的目标资源分片的总数据量;
在所述目标资源分片的总数据量不小于预设数据量阈值的情况下,对所述指定内存空间中的目标资源分片进行清理,以使所述目标资源分片的总数据量小于所述预设数据量阈值。
5.根据权利要求2所述的方法,其特征在于,所述基于所述分片服务将所述目标资源分片存储至所述分片服务对应的指定内存空间之后,所述方法还包括:
对于所述指定内存空间中的任一所述目标资源分片,按照预设检测周期,检测所述目标资源分片的最近使用时间与当前时间之间的间隔时长是否大于预设时长阈值;
若是,则将所述目标资源分片确定为过期资源分片,并清除所述过期资源分片。
6.根据权利要求4或5所述的方法,其特征在于,所述向预设的中心节点上报所述目标资源分片的地址信息之后,所述方法还包括:
对于所述指定内存空间中任一被清除的目标资源分片,向所述中心节点上报所述被清除的目标资源分片的资源信息,以使所述中心节点根据所述资源信息删除所述被清除的目标资源分片对应的地址信息。
7.根据权利要求1至2、4及5中任一所述的方法,其特征在于,所述获取目标资源的部分资源分片,以作为目标资源分片,包括:
按照预设的滑动窗口的窗口数m,对所述滑动窗口指示的m个目标资源分片依次进行下载;
在完成对所述m个目标资源分片中首个目标资源分片的下载操作的情况下,将所述滑动窗口向后滑动,以继续对所述滑动窗口指示的m个目标资源分片依次进行下载,直至所述目标资源中的各个目标资源分片均被下载。
8.一种资源处理装置,其特征在于,所述装置应用于第一终端,所述第一终端中运行有预设的分片服务,所述装置包括:
获取模块,被配置为获取目标资源的部分资源分片,以作为目标资源分片;其中,所述目标资源包括多个资源分片;
存储模块,被配置为基于所述分片服务将所述目标资源分片存储至所述分片服务对应的指定内存空间,所述指定内存空间为与所述第一终端的磁盘不同的内存空间;
发送模块,被配置为基于所述指定内存空间中的目标资源分片,向第二终端发送所述目标资源分片;
所述装置还包括:
写入模块,被配置为在所述获取模块获取目标资源的部分资源分片,以作为目标资源分片之后,将所述目标资源分片写入所述第一终端的磁盘。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
第一上报模块,被配置为在所述发送模块基于所述指定内存空间中的目标资源分片,向第二终端发送所述目标资源分片之前,向预设的中心节点上报所述目标资源分片的地址信息;
所述发送模块,被具体配置为:
接收所述第二终端发送的下载请求;所述下载请求是根据所述目标资源分片的地址信息发送的,所述地址信息是所述中心节点分配给所述第二终端的;
响应于所述下载请求,基于所述分片服务向所述第二终端返回存储于目标地址的所述目标资源分片;所述目标地址为所述地址信息指示的地址。
10.根据权利要求8至9任一所述的装置,其特征在于,所述分片服务关联有目标队列,所述目标队列与所述指定内存空间对应;
所述存储模块,被具体配置为:
将各个所述目标资源分片作为所述目标队列的队列成员,并分别写入所述目标队列,以在所述指定内存空间中存储所述目标资源分片。
11.根据权利要求9所述的装置,其特征在于,所述装置还包括:
记录模块,被配置为在所述存储模块基于所述分片服务将所述目标资源分片存储至所述分片服务对应的指定内存空间之后,记录所述目标资源分片的资源数据量;
确定模块,被配置为根据记录的各个所述目标资源分片的资源数据量,确定所述指定内存空间中已写入的目标资源分片的总数据量;
清理模块,被配置为在所述目标资源分片的总数据量不小于预设数据量阈值的情况下,对所述指定内存空间中的目标资源分片进行清理,以使所述目标资源分片的总数据量小于所述预设数据量阈值。
12.根据权利要求9所述的装置,其特征在于,所述装置还包括:
检测模块,被配置为在所述存储模块基于所述分片服务将所述目标资源分片存储至所述分片服务对应的指定内存空间之后,对于所述指定内存空间中的任一所述目标资源分片,按照预设检测周期,检测所述目标资源分片的最近使用时间与当前时间之间的间隔时长是否大于预设时长阈值;
清除模块,被配置为若是,则将所述目标资源分片确定为过期资源分片,并清除所述过期资源分片。
13.根据权利要求11或12所述的装置,其特征在于,所述装置还包括:
第二上报模块,被配置为在所述第一上报模块向所述中心节点上报所述目标资源分片的地址信息之后,对于所述指定内存空间中任一被清除的目标资源分片,向所述中心节点上报所述被清除的目标资源分片的资源信息,以使所述中心节点根据所述资源信息删除所述被清除的目标资源分片对应的地址信息。
14.根据权利要求8至9、11及12中任一所述的装置,其特征在于,所述获取模块,被具体配置为:
按照预设的滑动窗口的窗口数m,对所述滑动窗口指示的m个目标资源分片依次进行下载;
在完成对所述m个目标资源分片中首个目标资源分片的下载操作的情况下,将所述滑动窗口向后滑动,以继续对所述滑动窗口指示的m个目标资源分片依次进行下载,直至所述目标资源中的各个目标资源分片均被下载。
15.一种资源处理系统,其特征在于,所述系统包括第一终端以及第二终端;
所述第一终端,用于获取目标资源的部分资源分片,以作为目标资源分片;其中,所述目标资源包括多个资源分片;
所述第一终端,还用于基于所述第一终端中运行的预设的分片服务,将所述目标资源分片存储至所述分片服务对应的指定内存空间,所述指定内存空间为与所述第一终端的磁盘不同的内存空间;
所述第一终端,还用于基于所述指定内存空间中的目标资源分片,向第二终端发送所述目标资源分片;
所述第二终端,用于接收所述第一终端发送的所述目标资源分片;
所述第一终端,还用于将所述目标资源分片写入所述第一终端的磁盘。
16.根据权利要求15所述的系统,其特征在于,所述系统还包括预设的中心节点;
所述第一终端,还用于在基于所述分片服务将所述目标资源分片存储至所述分片服务对应的指定内存空间之后,向所述中心节点上报所述目标资源分片的地址信息;
所述第二终端,还用于向所述中心节点发送地址信息获取请求;
所述中心节点,用于响应于所述地址信息获取请求,为所述第二终端分配目标地址信息;
所述第二终端,还用于在所述目标地址信息为所述目标资源分片的地址信息的情况下,根据所述目标地址信息向所述第一终端发送下载请求;
所述第一终端,具体用于接收所述第二终端发送的所述下载请求;
所述第一终端,还具体用于响应于所述下载请求,基于所述分片服务向所述第二终端返回存储于目标地址的所述目标资源分片;所述目标地址为所述目标地址信息指示的地址。
17.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至7中任一项所述的资源处理方法。
18.一种存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备执行如权利要求1至7中任一项所述的资源处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110515486.2A CN113422800B (zh) | 2021-05-12 | 2021-05-12 | 资源处理方法、装置、系统、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110515486.2A CN113422800B (zh) | 2021-05-12 | 2021-05-12 | 资源处理方法、装置、系统、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113422800A CN113422800A (zh) | 2021-09-21 |
CN113422800B true CN113422800B (zh) | 2022-09-09 |
Family
ID=77712301
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110515486.2A Active CN113422800B (zh) | 2021-05-12 | 2021-05-12 | 资源处理方法、装置、系统、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113422800B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103379157A (zh) * | 2012-04-23 | 2013-10-30 | 上海聚力传媒技术有限公司 | 用于进行信息传输的方法、装置、设备和系统 |
CN104901945A (zh) * | 2015-04-10 | 2015-09-09 | 深圳市金立通信设备有限公司 | 一种终端 |
WO2018045977A1 (zh) * | 2016-09-09 | 2018-03-15 | 腾讯科技(深圳)有限公司 | 共享资源显示方法,装置及存储介质 |
CN110062295A (zh) * | 2019-04-19 | 2019-07-26 | 视联动力信息技术股份有限公司 | 一种文件资源获取方法及系统 |
CN110069219A (zh) * | 2019-04-23 | 2019-07-30 | 深信服科技股份有限公司 | 一种数据存储方法、系统及电子设备和存储介质 |
CN111064785A (zh) * | 2019-12-16 | 2020-04-24 | 腾讯科技(深圳)有限公司 | 资源包下载方法、装置和系统 |
CN111585940A (zh) * | 2019-02-18 | 2020-08-25 | 华为技术有限公司 | 一种资源管理方法及其相关设备 |
CN111803917A (zh) * | 2020-06-30 | 2020-10-23 | 北京金山云网络技术有限公司 | 资源的处理方法和装置 |
CN112104990A (zh) * | 2019-05-30 | 2020-12-18 | 北京小米移动软件有限公司 | 资源下载方法、装置及存储介质 |
-
2021
- 2021-05-12 CN CN202110515486.2A patent/CN113422800B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103379157A (zh) * | 2012-04-23 | 2013-10-30 | 上海聚力传媒技术有限公司 | 用于进行信息传输的方法、装置、设备和系统 |
CN104901945A (zh) * | 2015-04-10 | 2015-09-09 | 深圳市金立通信设备有限公司 | 一种终端 |
WO2018045977A1 (zh) * | 2016-09-09 | 2018-03-15 | 腾讯科技(深圳)有限公司 | 共享资源显示方法,装置及存储介质 |
CN111585940A (zh) * | 2019-02-18 | 2020-08-25 | 华为技术有限公司 | 一种资源管理方法及其相关设备 |
CN110062295A (zh) * | 2019-04-19 | 2019-07-26 | 视联动力信息技术股份有限公司 | 一种文件资源获取方法及系统 |
CN110069219A (zh) * | 2019-04-23 | 2019-07-30 | 深信服科技股份有限公司 | 一种数据存储方法、系统及电子设备和存储介质 |
CN112104990A (zh) * | 2019-05-30 | 2020-12-18 | 北京小米移动软件有限公司 | 资源下载方法、装置及存储介质 |
CN111064785A (zh) * | 2019-12-16 | 2020-04-24 | 腾讯科技(深圳)有限公司 | 资源包下载方法、装置和系统 |
CN111803917A (zh) * | 2020-06-30 | 2020-10-23 | 北京金山云网络技术有限公司 | 资源的处理方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113422800A (zh) | 2021-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20170185788A1 (en) | Method and apparatus for managing application | |
EP2990949B1 (en) | Methods and devices for backing up file | |
CN107193653B (zh) | 带宽资源分配方法、装置及存储介质 | |
CN109447125B (zh) | 分类模型的处理方法、装置、电子设备及存储介质 | |
CN112003893A (zh) | 一种资源下载方法和装置 | |
CN113190777A (zh) | 数据更新方法、装置、电子设备、存储介质及产品 | |
CN109634762B (zh) | 一种数据回收方法、装置、电子设备及存储介质 | |
CN104869169A (zh) | 云名片的更新方法和装置 | |
CN107231283B (zh) | 消息管理方法及装置、消息预读方法及装置 | |
CN106528247B (zh) | 数据刷新方法及装置 | |
US11797218B2 (en) | Method and device for detecting slow node and computer-readable storage medium | |
CN113422800B (zh) | 资源处理方法、装置、系统、电子设备及存储介质 | |
CN109245992B (zh) | 请求处理方法、装置、电子设备及存储介质 | |
CN113867927A (zh) | 资源分配方法、装置、电子设备和存储介质 | |
CN112307229A (zh) | 数据处理方法及装置、电子设备、计算机可读存储介质 | |
CN115422203A (zh) | 区块链分布式系统的数据管理方法、装置、设备及介质 | |
CN114281859A (zh) | 数据处理方法、设备及存储介质 | |
CN114428589A (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN111241134B (zh) | 一种数据处理方法及装置 | |
CN115016944A (zh) | 一种进程访问方法、装置及电子设备 | |
CN109948012B (zh) | 序列号的生成方法、装置及存储介质 | |
CN112769677A (zh) | 数据同步方法、装置、电子设备、存储介质和程序产品 | |
CN114077461A (zh) | 应用程序的运行方法、装置、设备及存储介质 | |
CN111625536B (zh) | 一种数据访问方法及装置 | |
CN112035246A (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 |