CN111859225B - 程序文件的访问方法、装置、计算设备和介质 - Google Patents
程序文件的访问方法、装置、计算设备和介质 Download PDFInfo
- Publication number
- CN111859225B CN111859225B CN202010764737.6A CN202010764737A CN111859225B CN 111859225 B CN111859225 B CN 111859225B CN 202010764737 A CN202010764737 A CN 202010764737A CN 111859225 B CN111859225 B CN 111859225B
- Authority
- CN
- China
- Prior art keywords
- program file
- cache
- area
- cache area
- stored
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
- G06F12/122—Replacement control using replacement algorithms of the least frequently used [LFU] type, e.g. with individual count value
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
- G06F12/123—Replacement control using replacement algorithms with age lists, e.g. queue, most recently used [MRU] list or least recently used [LRU] list
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
- G06F2212/1021—Hit rate improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/15—Use in a specific computing environment
- G06F2212/154—Networked environment
Abstract
本公开提供了一种程序文件的访问方法,可用于金融领域,该方法包括:确定被访问的当前程序文件;在当前程序文件存储在第一缓存区域中的情况下,将当前程序文件从第一缓存区域移动至第二缓存区域;在当前程序文件至少未存储于第一缓存区域和第二缓存区域中时,将当前程序文件存储至第一缓存区域;以及响应于客户端的访问请求,将存储于第一缓存区域或第二缓存区域中的程序文件发送给客户端,其中,存储于第一缓存区域中的程序文件被访问的时间满足预设时间条件,存储于第二缓存区域中的程序文件被访问的频率满足预设频率条件。本公开还提供了一种程序文件的访问装置、一种计算设备以及一种介质。
Description
技术领域
本公开涉及计算机技术领域,特别是涉及一种程序文件的访问方法、一种程序文件的访问装置、一种计算设备以及一种计算机可读存储介质。
背景技术
近几年来,大型互联网平台为了进一步增强自身在各个领域的垂直度,进一步完善应用生态而陆续推出了自家的小程序应用模式,正式开启了小程序红利时代。各个小程序的用户关注度及用户人数存在很大差别,造成了用户关注度高、用户量大的小程序总是被频繁访问。因此,网络上存在大量的热数据,当这些热数据被用户频繁访问时,需要从服务器中频繁地读取小程序的程序文件,导致服务器存在长时间的访问延迟。
发明内容
有鉴于此,本公开提供了一种优化的程序文件的访问方法、程序文件的访问装置、计算设备和计算机可读存储介质。
本公开的一个方面提供了一种程序文件的访问方法,包括:确定被访问的当前程序文件,在所述当前程序文件存储在第一缓存区域中的情况下,将所述当前程序文件从第一缓存区域移动至第二缓存区域,在所述当前程序文件至少未存储于所述第一缓存区域和所述第二缓存区域中时,将所述当前程序文件存储至所述第一缓存区域,响应于客户端的访问请求,将存储于所述第一缓存区域或所述第二缓存区域中的程序文件发送给所述客户端,其中,存储于所述第一缓存区域中的程序文件被访问的时间满足预设时间条件,存储于所述第二缓存区域中的程序文件被访问的频率满足预设频率条件。
根据本公开实施例,在将所述当前程序文件从第一缓存区域移动至第二缓存区域之后,所述方法还包括:将所述第二缓存区域中的程序文件按被访问频率重新排列。
根据本公开实施例,在将所述当前程序文件存储至所述第一缓存区域之后,所述方法还包括:将所述第一缓存区域中的程序文件按被访问时间重新排列。
根据本公开实施例,上述方法还包括:在所述当前程序文件存储在第二缓存区域中的情况下,更新所述第二缓存区域中当前程序文件的被访问频率,将所述第二缓存区域中的程序文件按被访问频率重新排列。
根据本公开实施例,上述方法还包括:在所述第一缓存区域和所述第二缓存区域中存储的程序文件的数据量大于预设数据量时,将所述第一缓存区域中的部分程序文件移动至第一附加存储区域和/或将所述第二缓存区域中的部分程序文件移动至第二附加存储区域。
根据本公开实施例,上述在所述当前程序文件未存储于所述第一缓存区域和所述第二缓存区域中时,将所述当前程序文件存储至所述第一缓存区域包括:在所述当前程序文件未存储于所述第一缓存区域、所述第二缓存区域中、所述第一附加存储区域和所述第二附加存储区域时,将所述当前程序文件存储至所述第一缓存区域。
根据本公开实施例,上述方法还包括:在所述当前程序文件存储于所述第一附加存储区域中时,将所述当前程序文件移动至所述第二附加存储区域,并将所述当前程序文件存储至所述第一缓存区域中。
根据本公开实施例,上述方法还包括:在所述当前程序文件存储于所述第二附加存储区域中时,将所述当前程序文件移动至所述第二缓存区域,并将所述第二缓存区域中的程序文件按被访问频率重新排列。
根据本公开实施例,上述将所述第一缓存区域中的部分程序文件移动至第一附加存储区域和/或将所述第二缓存区域中的部分程序文件移动至第二附加存储区域包括:在所述第一缓存区域中存储的程序文件数量大于目标数量时,将所述第一缓存区域中的部分程序文件移动至所述第一附加存储区域,在所述第一缓存区域中存储的程序文件数量小于等于目标数量时,将所述第二缓存区域中的部分程序文件移动至所述第二附加存储区域。
根据本公开实施例,上述方法还包括:在所述当前程序文件存储于所述第一附加存储区域中时,将所述目标数量增加1,在所述当前程序文件存储于所述第二附加存储区域中时,将所述目标数量减少1。
根据本公开实施例,上述方法还包括,在所述第一缓存区域和所述第二缓存区域中存储的程序文件的数据量小于等于预设数据量时:在所述第一缓存区域和所述第一附加存储区域中存储的程序文件的数据量大于预设数据量时,删除所述第一附加存储区域中的部分程序文件,在所述第一缓存区域和所述第一附加存储区域中存储的程序文件的数据量小于等于预设数据量时,并且在所述第二缓存区域和所述第二附加存储区域中存储的程序文件的数据量大于预设数据量时,删除所述第二附加存储区域中的部分程序文件。
根据本公开实施例,上述预设时间条件包括程序文件被访问的时间在预设时间范围内,所述预设频率条件包括程序文件在预设时间范围内被访问的次数大于1次。
本公开的另一个方面提供了一种程序文件的访问装置,包括:确定模块、移动模块、存储模块以及发送模块。其中,确定模块用于确定被访问的当前程序文件,移动模块用于在所述当前程序文件存储在第一缓存区域中的情况下,将所述当前程序文件从第一缓存区域移动至第二缓存区域,存储模块用于在所述当前程序文件未存储于所述第一缓存区域和所述第二缓存区域中时,将所述当前程序文件存储至所述第一缓存区域,发送模块用于响应于客户端的访问请求,将存储于所述第一缓存区域或所述第二缓存区域中的程序文件发送给所述客户端。其中,存储于所述第一缓存区域中的程序文件被访问的时间满足预设时间条件,存储于所述第二缓存区域中的程序文件被访问的频率满足预设频率条件。
根据本公开实施例,在将所述当前程序文件从第一缓存区域移动至第二缓存区域之后,所述装置还包括:第一排列模块,用于将所述第二缓存区域中的程序文件按被访问频率重新排列。
根据本公开实施例,在将所述当前程序文件存储至所述第一缓存区域之后,所述装置还包括:第二排列模块,用于将所述第一缓存区域中的程序文件按被访问时间重新排列。
根据本公开实施例,上述装置还包括:更新模块和第三排列模块。其中,更新模块用于在所述当前程序文件存储在第二缓存区域中的情况下,更新所述第二缓存区域中当前程序文件的被访问频率,第三排列模块用于将所述第二缓存区域中的程序文件按被访问频率重新排列。
根据本公开实施例,上述装置还包括:附加移动模块,用于在所述第一缓存区域和所述第二缓存区域中存储的程序文件的数据量大于预设数据量时,将所述第一缓存区域中的部分程序文件移动至第一附加存储区域和/或将所述第二缓存区域中的部分程序文件移动至第二附加存储区域。
根据本公开实施例,上述在所述当前程序文件未存储于所述第一缓存区域和所述第二缓存区域中时,将所述当前程序文件存储至所述第一缓存区域包括:在所述当前程序文件未存储于所述第一缓存区域、所述第二缓存区域中、所述第一附加存储区域和所述第二附加存储区域时,将所述当前程序文件存储至所述第一缓存区域。
根据本公开实施例,上述装置还包括:移动和存储模块,用于在所述当前程序文件存储于所述第一附加存储区域中时,将所述当前程序文件移动至所述第二附加存储区域,并将所述当前程序文件存储至所述第一缓存区域中。
根据本公开实施例,上述装置还包括:移动和排列模块,用于在所述当前程序文件存储于所述第二附加存储区域中时,将所述当前程序文件移动至所述第二缓存区域,并将所述第二缓存区域中的程序文件按被访问频率重新排列。
根据本公开实施例,上述将所述第一缓存区域中的部分程序文件移动至第一附加存储区域和/或将所述第二缓存区域中的部分程序文件移动至第二附加存储区域包括:在所述第一缓存区域中存储的程序文件数量大于目标数量时,将所述第一缓存区域中的部分程序文件移动至所述第一附加存储区域,在所述第一缓存区域中存储的程序文件数量小于等于目标数量时,将所述第二缓存区域中的部分程序文件移动至所述第二附加存储区域。
根据本公开实施例,上述装置还包括:增加模块和减少模块。其中,增加模块用于在所述当前程序文件存储于所述第一附加存储区域中时,将所述目标数量增加1,减少模块用于在所述当前程序文件存储于所述第二附加存储区域中时,将所述目标数量减少1。
根据本公开实施例,上述装置还包括:第一删除模块和第二删除模块。其中,第一删除模块用于在所述第一缓存区域和所述第一附加存储区域中存储的程序文件的数据量大于预设数据量时,删除所述第一附加存储区域中的部分程序文件,第二删除模块用于在所述第一缓存区域和所述第一附加存储区域中存储的程序文件的数据量小于等于预设数据量时,并且在所述第二缓存区域和所述第二附加存储区域中存储的程序文件的数据量大于预设数据量时,删除所述第二附加存储区域中的部分程序文件。
根据本公开实施例,上述预设时间条件包括程序文件被访问的时间在预设时间范围内,所述预设频率条件包括程序文件在预设时间范围内被访问的次数大于1次。
本公开的另一方面提供了一种计算设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上所述的方法。
本公开的另一方面提供了一种非易失性可读存储介质,存储有计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。
本公开的另一方面提供了一种计算机程序,所述计算机程序包括计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。
根据本公开的实施例,利用如上所述的程序文件的访问方法,可以至少部分地解决相关技术中从服务器中频繁地读取程序文件,导致服务器长时间的访问延迟的技术问题。因此可以实现提高程序文件的访问效率,降低访问时间,提高缓存命中率的技术效果。
附图说明
为了更完整地理解本公开及其优势,现在将参考结合附图的以下描述,其中:
图1示意性示出了根据本公开实施例的程序文件的访问方法和程序文件的访问装置的应用场景;
图2示意性示出了根据本公开实施例的程序文件的访问方法的流程图;
图3示意性示出了根据本公开另一实施例的程序文件的访问方法的流程图;
图4示意性示出了根据本公开另一实施例的程序文件的访问方法的流程图;
图5示意性示出了根据本公开实施例的程序文件的访问装置的框图;以及
图6示意性示出了根据本公开实施例的用于实现程序文件的访问的计算机系统的方框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。
附图中示出了一些方框图和/或流程图。应理解,方框图和/或流程图中的一些方框或其组合可以由计算机程序指令来实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程控制装置的处理器,从而这些指令在由该处理器执行时可以创建用于实现这些方框图和/或流程图中所说明的功能/操作的装置。
因此,本公开的技术可以硬件和/或软件(包括固件、微代码等)的形式来实现。另外,本公开的技术可以采取存储有指令的计算机可读存储介质上的计算机程序产品的形式,该计算机程序产品可供指令执行系统使用或者结合指令执行系统使用。在本公开的上下文中,计算机可读存储介质可以是能够包含、存储、传送、传播或传输指令的任意介质。例如,计算机可读存储介质可以包括但不限于电、磁、光、电磁、红外或半导体系统、装置、器件或传播介质。计算机可读存储介质的具体示例包括:磁存储装置,如磁带或硬盘(HDD);光存储装置,如光盘(CD-ROM);存储器,如随机存取存储器(RAM)或闪存;和/或有线/无线通信链路。
本公开的实施例提供了一种程序文件的访问方法,包括:确定被访问的当前程序文件,在当前程序文件存储在第一缓存区域中的情况下,将当前程序文件从第一缓存区域移动至第二缓存区域。在当前程序文件至少未存储于第一缓存区域和第二缓存区域中时,将当前程序文件存储至第一缓存区域。接下来,响应于客户端的访问请求,将存储于第一缓存区域或第二缓存区域中的程序文件发送给客户端。其中,存储于第一缓存区域中的程序文件被访问的时间满足预设时间条件,存储于第二缓存区域中的程序文件被访问的频率满足预设频率条件。
需要说明的是,本公开实施例的程序文件的访问方法和程序文件的访问装置可用于金融领域,也可用于除金融领域之外的任意领域,本公开实施例对程序文件的访问方法和程序文件的访问装置的应用领域不做限定。
图1示意性示出了根据本公开实施例的程序文件的访问方法和程序文件的访问装置的应用场景。需要注意的是,图1所示仅为可以应用本公开实施例的应用场景的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
如图1所示,根据该实施例的应用场景100可以包括客户端101、102、103,网络104和服务器105。网络104用以在客户端101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用客户端101、102、103通过网络104与服务器105交互,以接收或发送消息等。客户端101、102、103上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
客户端101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对用户利用客户端101、102、103所浏览的网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的用户请求等数据进行分析等处理,并将处理结果(例如根据用户请求获取或生成的网页、信息、或数据等)反馈给客户端。
其中,服务器105例如可以缓存多个程序文件,服务器105可以接收客户端101、102、103对程序文件的访问,并将程序文件发送给客户端101、102、103。
需要说明的是,本公开实施例所提供的程序文件的访问方法一般可以由服务器105执行。相应地,本公开实施例所提供的程序文件的访问装置一般可以设置于服务器105中。本公开实施例所提供的程序文件的访问方法也可以由不同于服务器105且能够与客户端101、102、103和/或服务器105通信的服务器或服务器集群执行。相应地,本公开实施例所提供的程序文件的访问装置也可以设置于不同于服务器105且能够与客户端101、102、103和/或服务器105通信的服务器或服务器集群中。
应该理解,图1中的客户端、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的客户端、网络和服务器。
缓存技术例如是利用空间有限但是速度较快的内存来存储介质文件(程序文件),并采取缓存替换算法以提高系统中数据的访问效率。缓存算法是存储系统、数据库、Web服务器等计算机领域的核心技术之一。在目前的小程序开放平台项目中,通常采用LRU(LeaseRecently Used,最近最少使用替换)最近最少使用替换算法。
LRU算法是被使用的较为普遍的基本缓存替换算法,其思想是在进行数据替换时将缓存中最近最少使用的数据块替换出缓存。其实现方法也比较简单,能捕捉工作负载的“最近期”特性。将程序文件安装最后一次被访问的时间进行排序,将最近被访问的程序文件放置到有序队列的队头,替换时将队尾的程序文件删除。LRU能够捕捉工作负载的“最近期”特性,但是没有捕捉“频率”特性,即,通过LRU算法能够缓存最近被访问的程序文件,但是难以实现缓存访问频率较高的程序文件。
在本公开实施例中,可以通过ARC(Adaptive Replacement Cache)算法来缓存程序文件。其中,ARC例如运用四条LRU链:T1、T2、B1和B2。T1可以作为第一缓存区域,T2可以作为第二缓存区域,B1可以作为第一附加存储区域,B2可以作为第二附加存储区域。T1、T2、B1和B2可以分别捕捉近期特性和频率特性。例如T1和T2的数据存放在缓存中,B1和B2的数据并不放在缓存中。T1用于管理近期被访问的程序文件,T2用于管理多次被访问的程序文件。
B1、B2可以分别接收从T1、T2淘汰的程序文件并进行后续管理。ARC算法将多次被访问的程序文件从T1转移到有关频率的T2中,使得缓存能同时管理“近期”和“频率”两个重要的特性。ARC算法将高频使用的程序文件与最近使用程序文件分开管理,使得ARC缓存算法相对于LRU缓存算法在命中率方面有很明显的提高。
本公开实施例通过对ARC算法进行改进,以实现在缓存程序文件时可以同时考虑“近期”和“频率”两个重要的特性,提高了缓存的命中率,从而减少了对服务器的频繁访问,降低了网络负载。
下面结合图1的应用场景,参考图2~图4来描述根据本公开示例性实施方式的程序文件的访问方法。需要注意的是,上述应用场景仅是为了便于理解本公开的精神和原理而示出,本公开的实施方式在此方面不受任何限制。
图2示意性示出了根据本公开实施例的程序文件的访问方法的流程图。
如图2所示,本公开实施例的程序文件的访问方法例如可以包括操作S210~操作S240。本公开实施例的程序文件的访问方法例如可以由图1所示的服务器105执行。
在操作S210,确定被访问的当前程序文件。
根据本公开实施例,例如当前程序文件存储在服务器中,程序文件可以是一种介质文件,该介质文件可以存储在介质服务器中。
其中,服务器可以包括第一缓存区域和第二缓存区域,第一缓存区域和第二缓存区域均可以用于缓存程序文件。利用缓存的方式存储程序文件,可以提高程序文件被访问的速度。其中,存储于第一缓存区域中的程序文件被访问的时间满足预设时间条件,存储于第二缓存区域中的程序文件被访问的频率满足预设频率条件。
其中,预设时间条件包括程序文件被访问的时间在预设时间范围内,预设时间范围可以是近期的1个月、2个月等等。第一缓存区域中存储的程序文件例如为在近期被访问1次的程序文件。即,第一缓存区域可以用于存储最近被访问1次的程序文件。
其中,预设频率条件包括程序文件在预设时间范围内被访问的次数大于1次。即,第二缓存区域可以用于存储被多次访问的程序文件。
在操作S220,在当前程序文件存储在第一缓存区域中的情况下,将当前程序文件从第一缓存区域移动至第二缓存区域。
如果第一缓存区域已经存储当前程序文件,表明该当前程序文件过去已经被访问一次。而当前程序文件再次被访问,则可以表示该当前程序文件被访问两次,可以将该当前程序文件从第一缓存区域移动到第二缓存区域中存储。
在操作S230,在当前程序文件至少未存储于第一缓存区域和第二缓存区域中时,将当前程序文件存储至第一缓存区域。
在一种实施例中,在第一缓存区域和第二缓存区域均没有存储当前程序文件时,可以表明当前程序文件是第一次被访问,则可以将当前程序文件存储至第一缓存区域中。
接下来,在操作S240,响应于客户端的访问请求,将存储于第一缓存区域或第二缓存区域中的程序文件发送给客户端。
根据本公开实施例,服务器通过将近期被访问的程序文件存储在第一缓存区域中,将被访问频率较高的程序文件存储在第二缓存区域中,实现在客户端对程序文件进行访问时,可以从第一缓存区域或第二缓存区域中读取程序文件,从而提高程序文件的访问效率,较少访问延时,提高缓存命中率。
在另一实施例中,本公开实施例的服务器还可以包括第一附加存储区域和第二附加存储区域。其中,第一附加存储区域和第二附加存储区域可以是非缓存区域。该第一附加存储区域可以用于存储从第一缓存区域中删除的程序文件,该第一附加存储区域中存储的程序文件被访问次数可以是1次。该第二附加存储区域可以用于存储从第二缓存区域中删除的程序文件,该第二附加存储区域中存储的程序文件被访问次数可以是2次或2次以上。
当服务器还包括第一附加存储区域和第二附加存储区域时,操作S230中关于在当前程序文件至少未存储于第一缓存区域和第二缓存区域中时,将当前程序文件存储至第一缓存区域可以包括:在当前程序文件未存储于第一缓存区域、第二缓存区域中、第一附加存储区域和第二附加存储区域时,可以将当前程序文件存储至第一缓存区域。
图3示意性示出了根据本公开另一实施例的程序文件的访问方法的流程图。
如图3所示,本公开实施例的程序文件的访问方法例如可以包括操作S301~操作S311。其中,操作S301例如与操作S210相同或类似,操作S303例如与操作S230相同或类似,操作S305例如与操作S220相同或类似。
其中,本公开实施例以T1表示第一缓存区域,T2表示第二缓存区域,B1表示第一附加存储区域,B2表示第二附加存储区域。
在操作S301,确定被访问的当前程序文件。
在操作S302,判断当前程序文件是否存储于第一缓存区域T1、第二缓存区域T2中、第一附加存储区域B1和第二附加存储区域B2。如果当前程序文件未存储于第一缓存区域T1、第二缓存区域T2中、第一附加存储区域B1和第二附加存储区域B2中的任意一个,则执行操作S303。如果当前程序文件存储于第一缓存区域T1、第二缓存区域T2中、第一附加存储区域B1和第二附加存储区域B2中的任意一个,则根据当前程序文件的具体存储位置执行相应操作。例如,在当前程序文件存储于第一缓存区域T1时执行操作S305,在当前程序文件存储于第二缓存区域T2时执行操作S307,在当前程序文件存储于第一附加存储区域B1时执行操作S308,在当前程序文件存储于第二附加存储区域B2时执行操作S309。
在操作S303,将当前程序文件存储至第一缓存区域T1。
根据本公开实施例,在将当前程序文件存储至第一缓存区域T1之后,可执行操作S304。
在操作S304,将第一缓存区域T1中的程序文件按被访问时间重新排列。
例如,第一缓存区域T1为存储队列,队列中的程序文件按照访问时间排列,访问时间最近的程序文件排在队列的队头。在将当前程序文件存储至第一缓存区域T1之后,可以将第一缓存区域T1中的程序文件按访问时间重新排列。或者,由于当前程序文件是刚刚被访问的,可以直接将当前程序文件存储在第一缓存区域T1的队头。
在当前程序文件存储在第一缓存区域T1中时,可以执行操作S305~操作S306。
在操作S305,将当前程序文件从第一缓存区域T1移动至第二缓存区域T2。
如果第一缓存区域T1已经存储当前程序文件,表明该当前程序文件过去已经被访问一次。而当前程序文件再次被访问,则可以表示该当前程序文件被访问2次,可以将该当前程序文件从第一缓存区域T1移动到第二缓存区域T2中存储。
在将当前程序文件从第一缓存区域T1移动至第二缓存区域T2之后,可以执行操作S306。
在操作S306,将第二缓存区域T2中的程序文件按被访问频率重新排列。
例如,第二缓存区域T2为存储队列,队列中的程序文件按照访问频率排列,访问频率最高的程序文件排在队列的队头。在将当前程序文件存储至第二缓存区域T2之后,可以将第二缓存区域T2中的所有程序文件按访问频率重新排列。
在操作S307,在当前程序文件存储在第二缓存区域T2中的情况下,更新第二缓存区域T2中当前程序文件的被访问频率,将第二缓存区域T2中的程序文件按被访问频率重新排列。
为了便于理解,本公开实施例例如可以以访问次数来表征访问频率。例如,如果第二缓存区域T2已经存储当前程序文件,并且当前程序文件过去被访问的次数为2次。在当前程序文件再一次被访问时,可以将存储于第二缓存区域T2的当前程序文件的访问次数加1,更新后的当前程序文件的访问次数为3次。然后,可以将第二缓存区域T2中的所有程序文件按照被访问频率(次数)重新排列。
S308,在当前程序文件存储于第一附加存储区域B1中时,将当前程序文件移动至第二附加存储区域B2,并将当前程序文件存储至第一缓存区域T1中。
由于第一附加存储区域B1用于存储从第一缓存区域T1中删除的程序文件,该第一附加存储区域B1中的程序文件被访问的时间早于第一缓存区域T1中的程序文件,并且该第一附加存储区域B1中的程序文件的被访问次数为1次。在第一附加存储区域B1中已经存储当前程序文件时,可以表示当前程序文件在过去较早的时间已经被访问1次。而当前程序文件再次被访问,则可以表示该当前程序文件被访问两次,可以将该当前程序文件从第一附加存储区域B1移动到第二附加存储区域B2中存储。并且由于当前程序文件刚刚被访问,其为最近被访问的程序文件,可以将该当前程序文件存储至第一缓存区域T1中。
S309,在当前程序文件存储于第二附加存储区域B2中时,将当前程序文件移动至第二缓存区域T2,并将第二缓存区域T2中的程序文件按被访问频率重新排列。
由于第二附加存储区域B2中用于存储从第二缓存区域T2中删除的程序文件,该第二附加存储区域B2中的程序文件被访问的频率低于第二缓存区域T2中的程序文件,并且该第二附加存储区域B2中的程序文件的被访问次数大于等于2次。在第二附加存储区域B2中已经存储当前程序文件时,可以表示当前程序文件在过去已经被访问至少2次。而当前程序文件再次被访问时,可以将该当前程序文件从第二附加存储区域B2移动到第二缓存区域T2中存储。然后,可以将第二缓存区域T2中的所有程序文件按被访问频率重新排列,例如被访问频率高的排在队列的队头。
本公开实施例中通过第二缓存区域T2和第二附加存储区域B2对访问频率较高的程序文件进行管理。存储的程序文件的访问频率不一样,使得程序文件被清除的概率不一样。例如在对第二缓存区域T2中的程序文件进行清理时,可以先清理访问频率低的程序文件,实现对程序文件更加精确地管理。
本公开实施例还定义了一个用于表征近期被访问的程序文件的目标数量P。
S310,在当前程序文件存储于第一附加存储区域B1中时,将目标数量P增加1。
S311,在当前程序文件存储于第二附加存储区域B2中时,将目标数量P减少1。
其中,该目标数量P用于作为后续对程序文件进行清理的参考。
图4示意性示出了根据本公开另一实施例的程序文件的访问方法的流程图。
如图4所示,本公开实施例的程序文件的访问方法例如可以包括操作S401~S408。
操作S401,判断第一缓存区域T1和第二缓存区域T2中存储的程序文件的数据量是否大于预设数据量C。如果是,则执行操作S402~操作S404;如果否,则执行操作S405。
根据本公开实施例,预设数据量C例如可以是10兆、100兆等等。
例如,在第一缓存区域T1和第二缓存区域T2中存储的程序文件的数据量大于预设数据量C时,将第一缓存区域T1中的部分程序文件移动至第一附加存储区域B1和/或将第二缓存区域T2中的部分程序文件移动至第二附加存储区域B2。
根据本公开实施例,为了提高缓存命中率,当第一缓存区域T1和第二缓存区域T2中存储的程序文件的数据量大于预设数据量C,需要对所存储的程序文件进行清理。
操作S402,判断第一缓存区域T1中存储的程序文件数量是否大于目标数量P。如果是,则执行操作S403;如果否,则执行操作S404。
操作S403,在第一缓存区域T1中存储的程序文件数量大于目标数量P时,将第一缓存区域T1中的部分程序文件移动至第一附加存储区域B1。
例如,从第一缓存区域T1的队列的队尾依次遍历程序文件,将队尾的程序文件移动至第一附加存储区域B1中,直到第一缓存区域T1中存储的程序文件数量小于等于目标数量P。
操作S404,在第一缓存区域T1中存储的程序文件数量小于等于目标数量P时,将第二缓存区域T2中的部分程序文件移动至第二附加存储区域B2。
例如,从第二缓存区域T2的队列的队尾依次遍历程序文件,将队尾的程序文件移动至第二附加存储区域B2中,直到第二缓存区域T2中存储的程序文件数量小于等于目标数量P。
操作S405,判断第一缓存区域T1和第一附加存储区域B1中存储的程序文件的数据量是否大于预设数据量C。如果是,则执行操作S406,如果否则执行操作S407。
操作S406,在第一缓存区域T1和第一附加存储区域B1中存储的程序文件的数据量大于预设数据量C时,删除第一附加存储区域B1中的部分程序文件,直到第一缓存区域T1和第一附加存储区域B1中存储的程序文件的数据量小于等于预设数据量C。
操作S407,判断第二缓存区域T2和第二附加存储区域B2中存储的程序文件的数据量是否大于预设数据量C。如果是,则执行操作S408。
操作S408,在第二缓存区域T2和第二附加存储区域B2中存储的程序文件的数据量大于预设数据量C时,删除第二附加存储区域B2中的部分程序文件,直到第二缓存区域T2和第二附加存储区域B2中存储的程序文件的数据量小于等于预设数据量C。
图5示意性示出了根据本公开实施例的程序文件的访问装置的框图。
如图5所示,程序文件的访问装置500例如可以包括确定模块510、移动模块520、存储模块530以及发送模块540。
确定模块510可以用于确定被访问的当前程序文件。根据本公开实施例,确定模块510例如可以执行上文参考图2描述的操作S210,在此不再赘述。
移动模块520可以用于在当前程序文件存储在第一缓存区域中的情况下,将当前程序文件从第一缓存区域移动至第二缓存区域。根据本公开实施例,移动模块520例如可以执行上文参考图2描述的操作S220,在此不再赘述。
存储模块530可以用于在当前程序文件未存储于第一缓存区域和第二缓存区域中时,将当前程序文件存储至第一缓存区域。根据本公开实施例,存储模块530例如可以执行上文参考图2描述的操作S230,在此不再赘述。
发送模块540可以用于响应于客户端的访问请求,将存储于第一缓存区域或第二缓存区域中的程序文件发送给客户端。根据本公开实施例,发送模块540例如可以执行上文参考图2描述的操作S240,在此不再赘述。
根据本公开实施例,存储于第一缓存区域中的程序文件被访问的时间满足预设时间条件,存储于第二缓存区域中的程序文件被访问的频率满足预设频率条件。
根据本公开实施例,在将当前程序文件从第一缓存区域移动至第二缓存区域之后,装置500还可以包括:第一排列模块,用于将第二缓存区域中的程序文件按被访问频率重新排列。
根据本公开实施例,在将当前程序文件存储至第一缓存区域之后,装置500还可以包括:第二排列模块,用于将第一缓存区域中的程序文件按被访问时间重新排列。
根据本公开实施例,装置500还可以包括:更新模块和第三排列模块。其中,更新模块用于在当前程序文件存储在第二缓存区域中的情况下,更新第二缓存区域中当前程序文件的被访问频率,第三排列模块用于将第二缓存区域中的程序文件按被访问频率重新排列。
根据本公开实施例,装置500还可以包括:附加移动模块,用于在第一缓存区域和第二缓存区域中存储的程序文件的数据量大于预设数据量时,将第一缓存区域中的部分程序文件移动至第一附加存储区域和/或将第二缓存区域中的部分程序文件移动至第二附加存储区域。
根据本公开实施例,装置500还可以包括:移动和存储模块,用于在当前程序文件存储于第一附加存储区域中时,将当前程序文件移动至第二附加存储区域,并将当前程序文件存储至第一缓存区域中。
根据本公开实施例,装置500还可以包括:移动和排列模块,用于在当前程序文件存储于第二附加存储区域中时,将当前程序文件移动至第二缓存区域,并将第二缓存区域中的程序文件按被访问频率重新排列。
根据本公开实施例,装置500还可以包括:增加模块和减少模块。其中,增加模块用于在当前程序文件存储于第一附加存储区域中时,将目标数量增加1,减少模块用于在当前程序文件存储于第二附加存储区域中时,将目标数量减少1。
根据本公开实施例,装置500还可以包括:第一删除模块和第二删除模块。其中,第一删除模块用于在第一缓存区域和第一附加存储区域中存储的程序文件的数据量大于预设数据量时,删除第一附加存储区域中的部分程序文件,第二删除模块用于在第一缓存区域和第一附加存储区域中存储的程序文件的数据量小于等于预设数据量时,并且在第二缓存区域和第二附加存储区域中存储的程序文件的数据量大于预设数据量时,删除第二附加存储区域中的部分程序文件。
本公开还提供了一种计算设备,该计算设备可以包括:一个或多个处理器和存储装置。该存储装置可以用于存储一个或多个程序。其中,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器可以执行上文提及的方法。
本公开的另一方面提供了一种非易失性可读存储介质,该非易失性可读存储介质存储有计算机可执行指令,该指令在被执行时可以用于实现上文提及的方法。
本公开的另一方面提供了一种计算机程序,该计算机程序包括计算机可执行指令,该指令在被执行时可以用于实现上文提及的方法。
根据本公开的实施例的模块、子模块、单元、子单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、子模块、单元、子单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
例如,获取模块510、确定模块510、移动模块520、存储模块530以及发送模块540中的任意多个可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本公开的实施例,确定模块510、移动模块520、存储模块530以及发送模块540中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,确定模块510、移动模块520、存储模块530以及发送模块540中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
图6示意性示出了根据本公开实施例的用于实现程序文件的访问的计算机系统的方框图。图6示出的计算机系统仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图6所示,计算机系统600包括处理器601、计算机可读存储介质602。该系统600可以执行根据本公开实施例的方法。
具体地,处理器601例如可以包括通用微处理器、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器601还可以包括用于缓存用途的板载存储器。处理器601可以是用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
计算机可读存储介质602,例如可以是能够包含、存储、传送、传播或传输指令的任意介质。例如,可读存储介质可以包括但不限于电、磁、光、电磁、红外或半导体系统、装置、器件或传播介质。可读存储介质的具体示例包括:磁存储装置,如磁带或硬盘(HDD);光存储装置,如光盘(CD-ROM);存储器,如随机存取存储器(RAM)或闪存;和/或有线/无线通信链路。
计算机可读存储介质602可以包括计算机程序603,该计算机程序603可以包括代码/计算机可执行指令,其在由处理器601执行时使得处理器601执行根据本公开实施例的方法或其任何变形。
计算机程序603可被配置为具有例如包括计算机程序模块的计算机程序代码。例如,在示例实施例中,计算机程序603中的代码可以包括一个或多个程序模块,例如包括603A、模块603B、……。应当注意,模块的划分方式和个数并不是固定的,本领域技术人员可以根据实际情况使用合适的程序模块或程序模块组合,当这些程序模块组合被处理器601执行时,使得处理器601可以执行根据本公开实施例的方法或其任何变形。
根据本公开的实施例,确定模块510、移动模块520、存储模块530以及发送模块540中的至少一个可以实现为参考图6描述的计算机程序模块,其在被处理器601执行时,可以实现上面描述的相应操作。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现上述方法。
根据本公开的实施例,计算机可读存储介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读存储介质,该计算机可读存储介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线、光缆、射频信号等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
尽管已经参照本公开的特定示例性实施例示出并描述了本公开,但是本领域技术人员应该理解,在不背离所附权利要求及其等同物限定的本公开的精神和范围的情况下,可以对本公开进行形式和细节上的多种改变。因此,本公开的范围不应该限于上述实施例,而是应该不仅由所附权利要求来进行确定,还由所附权利要求的等同物来进行限定。
Claims (10)
1.一种程序文件的访问方法,包括:
确定被访问的当前程序文件;
在所述当前程序文件存储在第一缓存区域中的情况下,将所述当前程序文件从第一缓存区域移动至第二缓存区域;
在所述当前程序文件至少未存储于所述第一缓存区域和所述第二缓存区域中时,将所述当前程序文件存储至所述第一缓存区域;以及
响应于客户端的访问请求,将存储于所述第一缓存区域或所述第二缓存区域中的程序文件发送给所述客户端,
其中,存储于所述第一缓存区域中的程序文件被访问的时间满足预设时间条件,存储于所述第二缓存区域中的程序文件被访问的频率满足预设频率条件。
2.根据权利要求1所述的方法,其中,在将所述当前程序文件从第一缓存区域移动至第二缓存区域之后,所述方法还包括:
将所述第二缓存区域中的程序文件按被访问频率重新排列。
3.根据权利要求1所述的方法,其中,在将所述当前程序文件存储至所述第一缓存区域之后,所述方法还包括:
将所述第一缓存区域中的程序文件按被访问时间重新排列。
4.根据权利要求1所述的方法,还包括:
在所述当前程序文件存储在第二缓存区域中的情况下,更新所述第二缓存区域中当前程序文件的被访问频率;以及
将所述第二缓存区域中的程序文件按被访问频率重新排列。
5.根据权利要求1所述的方法,还包括:
在所述第一缓存区域和所述第二缓存区域中存储的程序文件的数据量大于预设数据量时,将所述第一缓存区域中的部分程序文件移动至第一附加存储区域和/或将所述第二缓存区域中的部分程序文件移动至第二附加存储区域。
6.根据权利要求5所述的方法,其中,所述在所述当前程序文件至少未存储于所述第一缓存区域和所述第二缓存区域中时,将所述当前程序文件存储至所述第一缓存区域包括:
在所述当前程序文件未存储于所述第一缓存区域、所述第二缓存区域中、所述第一附加存储区域和所述第二附加存储区域时,将所述当前程序文件存储至所述第一缓存区域。
7.根据权利要求6所述的方法,还包括:
在所述当前程序文件存储于所述第一附加存储区域中时,将所述当前程序文件移动至所述第二附加存储区域,并将所述当前程序文件存储至所述第一缓存区域中。
8.根据权利要求7所述的方法,还包括:
在所述当前程序文件存储于所述第二附加存储区域中时,将所述当前程序文件移动至所述第二缓存区域,并将所述第二缓存区域中的程序文件按被访问频率重新排列。
9.根据权利要求8所述的方法,其中,所述将所述第一缓存区域中的部分程序文件移动至第一附加存储区域和/或将所述第二缓存区域中的部分程序文件移动至第二附加存储区域包括:
在所述第一缓存区域中存储的程序文件数量大于目标数量时,将所述第一缓存区域中的部分程序文件移动至所述第一附加存储区域;以及
在所述第一缓存区域中存储的程序文件数量小于等于目标数量时,将所述第二缓存区域中的部分程序文件移动至所述第二附加存储区域。
10.根据权利要求9所述的方法,还包括:
在所述当前程序文件存储于所述第一附加存储区域中时,将所述目标数量增加1;以及
在所述当前程序文件存储于所述第二附加存储区域中时,将所述目标数量减少1。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010764737.6A CN111859225B (zh) | 2020-07-31 | 2020-07-31 | 程序文件的访问方法、装置、计算设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010764737.6A CN111859225B (zh) | 2020-07-31 | 2020-07-31 | 程序文件的访问方法、装置、计算设备和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111859225A CN111859225A (zh) | 2020-10-30 |
CN111859225B true CN111859225B (zh) | 2023-08-22 |
Family
ID=72954371
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010764737.6A Active CN111859225B (zh) | 2020-07-31 | 2020-07-31 | 程序文件的访问方法、装置、计算设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111859225B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113613063B (zh) * | 2021-07-16 | 2023-08-04 | 深圳市明源云科技有限公司 | 应用异常还原方法、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101682621A (zh) * | 2007-03-12 | 2010-03-24 | 思杰系统有限公司 | 用于高速缓存操作的系统和方法 |
CN103620576A (zh) * | 2010-11-01 | 2014-03-05 | 七网络公司 | 适用于移动应用程序行为和网络条件的缓存 |
CN107818026A (zh) * | 2016-09-14 | 2018-03-20 | 中兴通讯股份有限公司 | 一种缓存分区重构的方法和装置 |
CN108287836A (zh) * | 2017-01-09 | 2018-07-17 | 腾讯科技(深圳)有限公司 | 一种资源缓存方法及装置 |
CN108536486A (zh) * | 2018-04-08 | 2018-09-14 | 苏州犀牛网络科技有限公司 | Rn小程序的加载方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9696943B2 (en) * | 2015-11-09 | 2017-07-04 | International Business Machines Corporation | Accessing stored data |
-
2020
- 2020-07-31 CN CN202010764737.6A patent/CN111859225B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101682621A (zh) * | 2007-03-12 | 2010-03-24 | 思杰系统有限公司 | 用于高速缓存操作的系统和方法 |
CN103620576A (zh) * | 2010-11-01 | 2014-03-05 | 七网络公司 | 适用于移动应用程序行为和网络条件的缓存 |
CN107818026A (zh) * | 2016-09-14 | 2018-03-20 | 中兴通讯股份有限公司 | 一种缓存分区重构的方法和装置 |
CN108287836A (zh) * | 2017-01-09 | 2018-07-17 | 腾讯科技(深圳)有限公司 | 一种资源缓存方法及装置 |
CN108536486A (zh) * | 2018-04-08 | 2018-09-14 | 苏州犀牛网络科技有限公司 | Rn小程序的加载方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111859225A (zh) | 2020-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9773011B2 (en) | On-demand caching in a WAN separated distributed file system or clustered file system cache | |
US9678735B2 (en) | Data caching among interconnected devices | |
US8566547B2 (en) | Using a migration cache to cache tracks during migration | |
JP5450841B2 (ja) | ユーザコンテンツフィードをサポートするための機構 | |
US11017152B2 (en) | Optimizing loading of web page based on aggregated user preferences for web page elements of web page | |
CN107197359B (zh) | 视频文件缓存方法及装置 | |
CN107547548B (zh) | 数据处理方法及系统 | |
US9614925B2 (en) | Intelligent file pre-fetch based on access patterns | |
CN103491152A (zh) | 分布式文件系统中元数据获取方法、装置及系统 | |
US20160315835A1 (en) | Tracking content sharing across a variety of communications channels | |
CN109714229B (zh) | 一种分布式存储系统的性能瓶颈定位方法 | |
CN103607312A (zh) | 用于服务器系统的数据请求处理方法及系统 | |
US20210286730A1 (en) | Method, electronic device and computer program product for managing cache | |
CN107506154A (zh) | 一种元数据的读取方法、装置及计算机可读存储介质 | |
US10901631B2 (en) | Efficient adaptive read-ahead in log structured storage | |
CN111859225B (zh) | 程序文件的访问方法、装置、计算设备和介质 | |
JP5272428B2 (ja) | アクセス頻度の高い情報を事前にキャッシュする予測型キャッシュ方法、そのシステム及びそのプログラム | |
US9959245B2 (en) | Access frequency approximation for remote direct memory access | |
US20180089210A1 (en) | Tracking access pattern of inodes and pre-fetching inodes | |
CN112948444A (zh) | 一种缓存数据的管理方法和装置 | |
US20180089086A1 (en) | Tracking access pattern of inodes and pre-fetching inodes | |
CN110413215B (zh) | 用于获取访问权限的方法、设备和计算机程序产品 | |
US9787564B2 (en) | Algorithm for latency saving calculation in a piped message protocol on proxy caching engine | |
CN109992428B (zh) | 数据处理方法及系统 | |
CN113688160A (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 |