The present invention relates to the distribution of cache quota field, discloses a method based on the document to the client cache quota allocation, including the following steps: the memory space can be divided into reservation and allocation of cache space for the requested cache space; each file distributed cache cache quota quota; judge requests each file can be occupied, the reserved buffer space for the new file allocation. Also disclosed is a device based on file for the client cache quota allocation module used in the memory space can be divided into reservation and cache space allocation of cache space; the first distribution module for each request file distributed cache quota; the first judging module, for each cache quota judgment request file occupation; second allocation module, the reserved buffer space for the new file allocation for. The invention takes the file as a unit to control the cache size occupied by the file, and makes each file read and write evenly; meanwhile, the reserved buffer space is introduced to make the new document achieve constant reading and writing speed.
【技术实现步骤摘要】
一种基于文件为客户端分配缓存配额的方法及其装置
本专利技术涉及分配缓存配额领域,尤其涉及一种基于文件为客户端分配缓存配额的方法及其装置。
技术介绍
从事分布式存储产品的客户端软件开发时,往往会用到缓存的概念。它的本质是在计算机中申请一块内存空间,用于暂存用户写入或读取的数据,这样既可以提高写入性能,又能在用户对最近访问过的数据再次发起请求时迅速响应,降低延迟;但是缓存的大小是有限制的,目前的缓存管理机制将所有文件占用的缓存混合在一起进行管理,不具体细分每路文件分别占用的缓存大小,这样会存在以下问题:1.极限读写时,文件读写速度不同导致占用的缓存空间不均衡,反过来又制约了文件的读写速度,快的更快,慢的更慢;2.各路文件使用的缓存大小具有随机性,无法满足恒定码流场景下的读写要求;3.当缓存空间用完时,新加入的文件必须等缓存释放后才能开始读写,导致文件读或写时出现卡顿甚至阻塞的现象,影响读写效果。
技术实现思路
本专利技术针对目前需求以及现有技术发展的不足之处,提供一种基于文件为客户端分配缓存配额的方法及其装置,以文件为单位控制文件占用的缓存大小,使得每路文件可以均匀的读写;同时引入预留缓存空间,允许新加入的文件快速达到恒定读写的速度。为了实现上述目的,本专利技术采用以下的技术方案:一种基于文件为客户端分配缓存配额的方法,包括以下步骤:在内存空间中划分出可分配缓存空间和预留缓存空间;为请求的每路文件均匀分配缓存配额;判断请求的每路文件可占用的缓存配额是否达到上限,若是,则释放长时间未被客户端访问过的该路文件的缓存;若否,则继续对该路文件进行缓存;为新文件分配预留缓存 ...
【技术保护点】
一种基于文件为客户端分配缓存配额的方法,其特征在于,包括以下步骤:在内存空间中划分出可分配缓存空间和预留缓存空间;为请求的每路文件均匀分配缓存配额;判断请求的每路文件可占用的缓存配额是否达到上限,若是,则释放长时间未被客户端访问过的该路文件的缓存;若否,则继续对该路文件进行缓存;为新文件分配预留缓存空间。
【技术特征摘要】
1.一种基于文件为客户端分配缓存配额的方法,其特征在于,包括以下步骤:在内存空间中划分出可分配缓存空间和预留缓存空间;为请求的每路文件均匀分配缓存配额;判断请求的每路文件可占用的缓存配额是否达到上限,若是,则释放长时间未被客户端访问过的该路文件的缓存;若否,则继续对该路文件进行缓存;为新文件分配预留缓存空间。2.根据权利要求1所述的一种基于文件为客户端分配缓存配额的方法,其特征在于,在内存空间中划分出可分配缓存空间和预留缓存空间之前,包括:向服务器申请内存空间。3.根据权利要求2所述的一种基于文件为客户端分配缓存配额的方法,其特征在于,在向服务器申请内存空间之后,包括:预设阈值。4.根据权利要求1所述的一种基于文件为客户端分配缓存配额的方法,其特征在于,在为请求的文件均匀分配缓存配额之前,包括:预设时间戳;接收客户端的读或写请求。5.根据权利要求4所述的一种基于文件为客户端分配缓存配额的方法,其特征在于,在接收客户端的读或写请求之后,包括:查看客户端访问过的每路文件索引节点,判断每路文件当前时间和最后一次访问时间间隔是否大于时间戳,若是,即释放出该路文件所占用的缓存,若否,则不释放。6.根据权利要求1所述的一种基于文件为客户端分配缓存配额的方法,其特征在于,为请求的每路文件均匀分配缓存配额,包括:统计当前可分配的缓存空间的大小,查看客户端访问过的每路文件索引节点...
【专利技术属性】
技术研发人员:孔帅,
申请(专利权)人:郑州云海信息技术有限公司,
类型:发明
国别省市:河南,41
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。