CN106612329B - 一种缓存方法及装置 - Google Patents
一种缓存方法及装置 Download PDFInfo
- Publication number
- CN106612329B CN106612329B CN201611248882.9A CN201611248882A CN106612329B CN 106612329 B CN106612329 B CN 106612329B CN 201611248882 A CN201611248882 A CN 201611248882A CN 106612329 B CN106612329 B CN 106612329B
- Authority
- CN
- China
- Prior art keywords
- access request
- request information
- change rate
- cache space
- cache
- 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/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供了一种缓存方法及装置,所述方法包括:接收用户发送的访问请求信息,统计用户发送的访问请求信息的数量;在所述访问请求信息的数量超过预先更新的访问请求信息数量的阈值时,将与所述访问请求信息所对应的文件缓存至高速缓存区;计算所述高速缓存区的缓存空间变化率;根据所述缓存空间变化率,更新所述预先更新的访问请求信息数量的阈值,得到下一个更新阈值,以使所述访问请求信息的数量超过所述下一个更新阈值时,将与所述访问请求信息所对应的文件缓存至所述高速缓存区。本发明实施例提供的缓存方法及装置可以减轻CDN缓存服务器的缓存压力,提高高速缓存区的利用率,改善缓存效果。
Description
技术领域
本发明涉及网络技术领域,特别是涉及一种缓存方法及装置。
背景技术
内容分发网络(Content Delivery Network,CDN)的工作原理是尽可能的避开网络中有可能影响数据传输速度和稳定性的瓶颈和环节,使数据传输的更快、更稳定。CDN广泛采用各种缓存服务器,将这些缓存服务器分布到用户访问相对集中的网络中,当用户想要访问服务器时,CDN利用全局负载技术将用户的访问指向距离最近的CDN上,由缓存服务器直接响应用户请求。
CDN缓存服务器的数据缓存效率受网络缓存技术的直接影响,CDN缓存服务器包含普通磁盘区和高速缓存区,现有的缓存方法是根据用户访问文件的频次,来判断文件热度,将访问热度低的文件进行淘汰,将热度高的文件放入高速缓存区。在用户访问的高峰期和非高峰期的缓存方法相同,然而CDN缓存服务器的高速缓存区空间大小固定,能接受缓存的文件数量有限,当处于用户访问文件的高峰期,即文件被多次访问时,伴随着高速缓存区不断缓存文件,这给CDN缓存服务器带来很大的缓存压力,当处于用户访问文件的非高峰期时,文件访问次数显著降低,需要很长一段时间才能缓存该文件,高速缓存区的利用率较低,影响缓存效果。
发明内容
本发明实施例的目的在于提供一种缓存方法及装置,减轻CDN缓存服务器的缓存压力,提高高速缓存区的利用率,改善缓存效果。具体技术方案如下:
本发明实施例提供了一种缓存方法,包括:
接收用户发送的访问请求信息,统计用户发送的访问请求信息的数量;
在所述访问请求信息的数量超过预先更新的访问请求信息数量的阈值时,将与所述访问请求信息所对应的文件缓存至高速缓存区;
计算所述高速缓存区的缓存空间变化率;
根据所述缓存空间变化率,更新所述预先更新的访问请求信息数量的阈值,得到下一个更新阈值,以使所述访问请求信息的数量超过所述下一个更新阈值时,将与所述访问请求信息所对应的文件缓存至所述高速缓存区。
具体的,所述在所述访问请求信息的数量超过预先更新的访问请求信息数量的阈值时,将与所述访问请求信息所对应的文件缓存至高速缓存区之前,所述方法还包括:
接收用户发送的访问请求信息,统计用户发送的访问请求信息的数量;
在所述访问请求信息的数量超过预设访问请求信息数量的阈值时,将与所述访问请求信息所对应的文件缓存至高速缓存区;
计算所述高速缓存区的缓存空间变化率;
根据所述缓存空间变化率,更新所述预设访问请求信息数量的阈值,得到所述预先更新的访问请求信息数量的阈值。
具体的,所述计算所述高速缓存区的缓存空间变化率,包括:
根据公式:INC=|(SIZE2-SIZE1)/TOTAL|,计算所述缓存空间变化率;其中,INC表示所述缓存空间变化率,SIZE1表示缓存所述访问请求信息所对应的文件前缓存空间大小值,SIZE2表示缓存所述访问请求信息所对应的文件后缓存空间大小值,TOTAL表示缓存空间总大小值。
具体的,所述根据所述缓存空间变化率更新所述预先更新的访问请求信息数量的阈值,包括:
将所述缓存空间变化率分别与,预设缓存空间变化率最小值和预设缓存空间变化率最大值进行比较,得到一个比较结果;
根据比较结果,得到下一个更新阈值。
具体的,所述根据比较结果得到下一个更新阈值,包括:
若所述比较结果为缓存空间变化率大于所述预设缓存空间变化率最大值,则判定所述缓存空间变化率增大,将所述预先更新的访问请求信息数量的阈值更新至N1=N0+(INC-MAX)/a;
若比较结果为所述缓存空间变化率小于所述预设缓存空间变化率最小值,则判定所述缓存空间变化率减小,将所述预先更新的访问请求信息数量的阈值更新至N1=N0-(MIN-INC)/b;
其中N1为下一个更新阈值,N0为所述预先更新的访问请求信息数量的阈值,INC表示所述缓存空间变化率,MAX为所述预设缓存空间变化率最大值,MIN为所述预设缓存空间变化率最小值,a和b均为常数。
具体的,所述统计用户发送的访问请求信息的数量,包括:
统计所述用户的访问请求信息中用户的工号、用户的IP地址、用户的姓名中的至少一种的数量。
具体的,所述统计用户发送的访问请求信息的数量,包括:
通过统计用户发送的访问请求信息的频次,统计用户发送的访问请求信息的数量。
本发明实施例还提供了一种缓存装置,包括:
接收模块,用于接收用户发送的访问请求信息,统计用户发送的访问请求信息的数量;
缓存模块,用于在所述访问请求信息的数量超过预先更新的访问请求信息数量的阈值时,将与所述访问请求信息所对应的文件缓存至高速缓存区;
计算模块,用于计算所述高速缓存区的缓存空间变化率;
更新模块,用于根据所述缓存空间变化率,更新所述预先更新的访问请求信息数量的阈值,得到下一个更新阈值,以使所述访问请求信息的数量超过所述下一个更新阈值时,将与所述访问请求信息所对应的文件缓存至所述高速缓存区。
具体的,所述计算模块,具体用于:
根据公式:INC=|(SIZE2-SIZE1)/TOTAL|,计算所述缓存空间变化率;其中,INC表示所述缓存空间变化率,SIZE1表示缓存所述访问请求信息所对应的文件前缓存空间大小值,SIZE2表示缓存所述访问请求信息所对应的文件后缓存空间大小值,TOTAL表示缓存空间总大小值。
具体的,所述更新模块,包括:
第一更新子模块,用于将所述缓存空间变化率分别与,预设缓存空间变化率最小值和预设缓存空间变化率最大值进行比较,得到一个比较结果;
第二更新子模块,用于根据比较结果,得到下一个更新阈值。
具体的,所述第二更新子模块,具体用于:
若所述比较结果为缓存空间变化率大于所述预设缓存空间变化率最大值,则判定所述缓存空间变化率增大,将所述预先更新的访问请求信息数量的阈值更新至N1=N0+(INC-MAX)/a;
若比较结果为所述缓存空间变化率小于所述预设缓存空间变化率最小值,则判定所述缓存空间变化率减小,将所述预先更新的访问请求信息数量的阈值更新至N1=N0-(MIN-INC)/b;
其中N1为下一个更新阈值,N0为所述预先更新的访问请求信息数量的阈值,INC表示所述缓存空间变化率,MAX为所述预设缓存空间变化率最大值,MIN为所述预设缓存空间变化率最小值,a和b均为常数。
具体的,所述接收模块,具体用于统计所述用户的访问请求信息中用户的工号、用户的IP地址、用户的姓名中的至少一种的数量。
具体的,所述接收模块,具体用于通过统计用户发送的访问请求信息的频次,统计用户发送的访问请求信息的数量。
本发明实施例提供的一种缓存方法及装置,通过计算高速缓存区的缓存空间变化率,更新预先更新的访问请求信息数量的阈值,得到下一个更新阈值,CDN缓存服务器根据高速缓存区的缓存空间变化率自适应缓存空间的大小,减轻了大量用户访问文件时的压力,根据用户在不同时期的访问状态调整访问请求信息数量的阈值,提高了高速缓存区的利用率,改善服务器的缓存效果,使服务器实现智能缓存。本方法当然,实施本发明的任一产品或方法必不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例缓存方法的流程图;
图2为本发明实施例在访问请求信息的数量超过预先更新的访问请求信息数量的阈值时,将与访问请求信息所对应的文件缓存至高速缓存区之前的流程图;
图3为本发明实施例计算高速缓存区的缓存空间变化率的流程图;
图4为本发明实施例更新预先更新的访问请求信息数量的阈值的流程图;
图5为本发明实施例缓存装置结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
CDN缓存服务器的缓存效率受网络缓存技术的直接影响,CDN缓存服务器包含普通磁盘区和高速缓存区,现有的缓存方法是根据用户访问文件的频次,来判断文件热度,将访问热度低的文件进行淘汰,将热度高的文件放入高速缓存区。在用户访问的高峰期和非高峰期的缓存方法相同,然而高速缓存区空间大小固定,能接受缓存的文件数量有限,当处于用户访问文件的高峰期,即文件被多次访问时,伴随着高速缓存区不断缓存文件,给服务器带来很大的缓存压力,当处于用户访问文件的非高峰期,即文件访问次数低,此时需要很长一段时间才能缓存该文件,高速缓存区的利用率较低,影响了缓存效果。本发明实施例的目的在于提供一种缓存方法及装置,减轻CDN缓存服务器的缓存压力,提高高速缓存区的利用率,改善缓存效果。
下面首先对本发明实施例提供的缓存方法进行详细说明。
图1为本发明实施例提供的缓存方法的流程图,具体包括以下步骤:
步骤101,接收用户发送的访问请求信息,统计用户发送的访问请求信息的数量。
当用户想要访问文件时,会向服务器发送该文件的访问请求信息,服务器接收用户发送的访问请求信息,并统计用户发送的访问请求信息的数量。统计访问请求信息数量的目的是为了统计文件被访问的热度,统计方式有多种。例如,当多个用户向服务器发送访问请求信息时,服务器的普通磁盘区接收用户发送的访问请求信息,并且统计访问请求信息的数量,这个访问请求信息的数量可以是多个用户发送的,也可以来自于一个用户的多次访问发送的。
具体的,统计用户发送的访问请求信息的数量,包括:
统计用户的访问请求信息中用户的工号、用户的IP地址、用户的姓名中的至少一种的数量。
用户的工号、用户的IP地址、用户的姓名都可以代表用户,统计用户的访问请求信息的数量可以通过统计访问请求信息中用户的工号、用户的IP地址、用户的姓名中的至少一种的数量的方法。
具体的,统计用户发送的访问请求信息的数量,包括:
通过统计用户发送的访问请求信息的频次,统计用户发送的访问请求信息的数量。
当用户想要对某个文件分段访问时,会集中多次的访问该文件,统计用户发送的访问请求信息的频次,也可以得到用户发送的访问请求信息的数量。
步骤102,在访问请求信息的数量超过预先更新的访问请求信息数量的阈值时,将与访问请求信息所对应的文件缓存至高速缓存区。
预先更新的访问请求信息数量的阈值不是根据用户需求或者工业需要设定的,这个阈值是由预设访问请求信息数量的阈值决定的,而预设访问请求信息的阈值是由服务器的特性决定的,根据高速缓存区的缓存空间大小决定预设访问请求信息的阈值,预设访问请求信息的阈值最小值为2。服务器统计用户发送的访问请求信息的数量,当访问请求信息的数量超过预先更新的访问请求信息数量的阈值时,就会将与该访问请求信息所对应的文件放入高速缓存区。
步骤103,计算高速缓存区的缓存空间变化率。
在文件被放入高速缓存区后,高速缓存区的自由空间会发生变化,此时需要计算高速缓存区的缓存空间变化率,可以得到在缓存了一定量的文件后或者在一段时间内的高速缓存区的缓存空间变化率。
步骤104,根据缓存空间变化率,更新预先更新的访问请求信息数量的阈值,得到下一个更新阈值,以使访问请求信息的数量超过下一个更新阈值时,将与访问请求信息所对应的文件缓存至高速缓存区。
由步骤103中计算得到的缓存空间变化率,可以更新预先更新的访问请求信息数量的阈值,得到下一个更新阈值,缓存空间变化率反映了在一段时间内,缓存空间内缓存文件的速率,当缓存空间变化率的数值比较大时,表明在一段时间内,缓存文件的数量较多,缓存速率较快;当缓存空间变化率的数值比较大时,表明在一段时间内,缓存文件的数量较少,缓存速率较慢。
本发明实施例提供的一种缓存方法,通过计算高速缓存区的缓存空间变化率,更新预先更新的访问请求信息数量的阈值,得到下一个更新阈值,CDN缓存服务器根据高速缓存区的缓存空间变化率自适应缓存空间的大小,根据用户在不同时期的访问状态调整访问请求信息数量的阈值,提高了高速缓存区的利用率,改善服务器的缓存效果,使服务器实现智能缓存。
具体的,在访问请求信息的数量超过预先更新的访问请求信息数量的阈值时,将与访问请求信息所对应的文件缓存至高速缓存区之前,得到预先更新的访问请求信息数量的阈值的流程,如图2所示,包括如下步骤:
步骤201,接收用户发送的访问请求信息,统计用户发送的访问请求信息的数量。
当用户想要访问文件时,会向服务器发送该文件的访问请求信息,服务器接收用户发送的访问请求信息,并统计用户发送的访问请求信息的数量。
步骤202,在访问请求信息的数量超过预设访问请求信息数量的阈值时,将与访问请求信息所对应的文件缓存至高速缓存区。
服务器统计用户发送的访问请求信息的数量,当访问请求信息的数量超过预设访问请求信息数量的阈值时,就会将与该访问请求信息所对应的文件放入高速缓存区。预设访问请求信息的阈值是由服务器的特性决定的,根据高速缓存区的缓存空间大小决定预设访问请求信息的阈值。
步骤203,计算高速缓存区的缓存空间变化率。
在文件被放入高速缓存区后,高速缓存区的空闲空间会发生变化,此时需要计算高速缓存区的缓存空间变化率,可以得到在缓存了文件后或者在预设时间间隔后的高速缓存区的缓存空间变化率。预设时间间隔根据用户需求或者工业需要决定,本发明实施例的预设时间间隔是由用户需求灵活决定的,例如,用户想要统计10分钟内服务器缓存文件的情况,则会计算得到高速缓存区10分钟内的缓存空间变化率。
步骤204,根据所述缓存空间变化率,更新预设访问请求信息数量的阈值,得到预先更新的访问请求信息数量的阈值。
根据步骤203中计算得到的缓存空间变化率,可以更新预设访问请求信息数量的阈值,得到预先更新的访问请求信息数量的阈值。
具体的,计算高速缓存区的缓存空间变化率的流程如图3所示:
步骤301,记录缓存空间总大小值TOTAL、缓存访问请求信息所对应的文件前缓存空间大小值SIZE1、缓存访问请求信息所对应的文件后缓存空间大小值SIZE2。
高速缓存区的缓存空间大小值是固定的,由服务器的特性决定,记为TOTAL;缓存访问请求信息所对应的文件前缓存空间大小值SIZE1和缓存访问请求信息所对应的文件后缓存空间大小值SIZE2分别是经过预设时间间隔前、预设时间间隔后的缓存空间大小值。
步骤302,根据公式:INC=|(SIZE2-SIZE1)/TOTAL|,计算缓存空间变化率。
缓存空间变化率是经过预设时间间隔后与预设时间间隔前的差值与,缓存空间总大小值的比值,表示在预设时间间隔内的缓存空间变化率。例如,缓存空间总大小值TOTAL为100,缓存访问请求信息所对应的文件前缓存空间大小值SIZE1为80,缓存访问请求信息所对应的文件后缓存空间大小值SIZE2为60,则根据公式,得到缓存空间变化率INC为(1/5)。
具体的,根据缓存空间变化率更新预先更新的访问请求信息数量的阈值,包括:
将缓存空间变化率分别与,预设缓存空间变化率最小值和预设缓存空间变化率最大值进行比较,得到一个比较结果;
根据比较结果,得到下一个更新阈值。
预设缓存空间变化率最小值和预设缓存空间变化率最大值是根据用户需求或者工业需要任意设定的,本发明实施例的预设缓存空间变化率最小值小于,预设缓存空间变化率最大值,预设缓存空间变化率最小值和预设缓存空间变化率最大值是根据用户长期测算分析得到的,分别为0.4和1.2。由步骤302得到的缓存空间变化率,与预设缓存空间变化率最小值和预设缓存空间变化率最大值进行比较,比较结果将会影响下一个更新阈值。
图4为本发明实施例中更新预先更新的访问请求信息数量的阈值的流程图,包括如下步骤:
步骤401,将缓存空间变化率分别与,预设缓存空间变化率最小值和预设缓存空间变化率最大值进行比较,这一步骤中还包括:
步骤401a,若比较结果为缓存空间变化率大于预设缓存空间变化率最大值,则判定缓存空间变化率增大,将预先更新的访问请求信息数量的阈值增大到N1=N0+(INC-MAX)/a;
当缓存空间变化率大于预设缓存空间变化率最大值时,则表明此时超过缓存空间所能允许的缓存空间变化率的最大值,正值服务器的高峰期,用户发送访问请求信息的数量多,需要将预先更新的访问请求信息数量的阈值增大,并且增大到N1=N0+(INC-MAX)/a,才能减轻高速缓存区的缓存压力,其中N1为下一个更新阈值,N0为预先更新的访问请求信息数量的阈值,MAX为预设缓存空间变化率最大值,a为常数。
步骤401b,若比较结果为缓存空间变化率小于预设缓存空间变化率最小值,则判定缓存空间变化率减小,将预先更新的访问请求信息数量的阈值减小到N1=N0-(MIN-INC)/b;
当缓存空间变化率小于预设缓存空间变化率最小值时,则表明此时的缓存空间变化率已经小于缓存空间变化率的最小值,此时是服务器的非高峰期,用户发送访问请求信息的数量少,缓存空间没有得到充分利用,需要将预先更新的访问请求信息数量的阈值减小,并且减小到N1=N0-(MIN-INC)/b,才能提高高速缓存区的利用率,其中N1为下一个更新阈值,N0为预先更新的访问请求信息数量的阈值,MIN为预设缓存空间变化率最小值,b为常数。例如,当计算得到的缓存空间变化率小于0.4时,将预先更新的访问请求信息数量的阈值减小到N1=N0-(0.4-INC)/b;当计算得到的缓存空间变化率大于1.2时,将预先更新的访问请求信息数量的阈值增大到N1=N0+(INC-1.2)/a。
本发明所公开的缓存方法,通过计算缓存空间变化率更新访问请求信息数量的阈值,使得服务器在用户访问文件的不同时间内实现智能缓存。当缓存空间变化率预设缓存空间变化率最大值时,表明超过缓存空间所能允许的缓存空间变化率的最大值,用户发送访问请求信息的数量多,高速缓存区需要不断缓存文件,缓存压力大,此时需要提高访问请求信息数量的阈值;当缓存空间变化率小于预设缓存空间变化率最小值时,表明此时缓存空间变化率已经小于缓存空间变化率的最小值,用户发送访问请求信息的数量少,缓存空间没有得到充分利用,此时需要降低访问请求信息数量的阈值,使得文件在访问次数少的情况下得以缓存,以提高缓存区的利用率。本发明所提供的缓存方法通过更新访问请求信息数量的阈值,不断适应空闲缓存空间的大小变化,可以有效减轻高峰期的缓存压力,提高非高峰期的缓存利用率。
本发明实施例还提供了一种缓存装置,图5为本发明实施例的装置结构示意图,该装置包括:
接收模块501,用于接收用户发送的访问请求信息,统计用户发送的访问请求信息的数量;
缓存模块502,用于在访问请求信息的数量超过预先更新的访问请求信息数量的阈值时,将与访问请求信息所对应的文件缓存至高速缓存区;
计算模块503,用于计算高速缓存区的缓存空间变化率;
更新模块504,用于根据缓存空间变化率,更新预先更新的访问请求信息数量的阈值,得到下一个更新阈值,以使访问请求信息的数量超过下一个更新阈值时,将与访问请求信息所对应的文件缓存至高速缓存区。
本发明实施例提供的一种缓存装置,通过计算高速缓存区的缓存空间变化率,更新预先更新的访问请求信息数量的阈值,得到下一个更新阈值,CDN缓存服务器根据高速缓存区的缓存空间变化率自适应缓存空间的大小,根据用户在不同时期的访问状态调整访问请求信息数量的阈值,提高了高速缓存区的利用率,改善服务器的缓存效果,使服务器实现智能缓存。
需要说明的是,本发明实施例的装置是应用上述缓存方法的装置,则上述缓存方法的所有实施例均适用于该装置,且均能达到相同或相似的有益效果。
具体的,计算模块,具体用于:
根据公式:INC=|(SIZE2-SIZE1)/TOTAL|,计算缓存空间变化率;其中,INC表示缓存空间变化率,SIZE1表示缓存访问请求信息所对应的文件前缓存空间大小值,SIZE2表示缓存访问请求信息所对应的文件后缓存空间大小值,TOTAL表示缓存空间总大小值。
具体的,更新模块,包括:
第一更新子模块,用于将缓存空间变化率分别与,预设缓存空间变化率最小值和预设缓存空间变化率最大值进行比较,得到一个比较结果;
第二更新子模块,用于根据比较结果,得到下一个更新阈值。
具体的,第二更新子模块,具体用于:
若比较结果为缓存空间变化率大于预设缓存空间变化率最大值,则判定缓存空间变化率增大,将预先更新的访问请求信息数量的阈值更新至N1=N0+(INC-MAX)/a;
若比较结果为缓存空间变化率小于预设缓存空间变化率最小值,则判定缓存空间变化率减小,将预先更新的访问请求信息数量的阈值更新至N1=N0-(MIN-INC)/b;
其中N1为下一个更新阈值,N0为预先更新的访问请求信息数量的阈值,INC表示缓存空间变化率,MAX为预设缓存空间变化率最大值,MIN为预设缓存空间变化率最小值,a和b均为常数。
具体的,接收模块,具体用于统计用户的访问请求信息中用户的工号、用户的IP地址、用户的姓名中的至少一种的数量。
具体的,接收模块,具体用于通过统计用户发送的访问请求信息的频次,统计用户发送的访问请求信息的数量。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (9)
1.一种缓存方法,其特征在于,包括:
接收用户发送的访问请求信息,统计用户发送的访问请求信息的数量;
在所述访问请求信息的数量超过预先更新的访问请求信息数量的阈值时,将与所述访问请求信息所对应的文件缓存至高速缓存区;
计算所述高速缓存区的缓存空间变化率;
根据所述缓存空间变化率,更新所述预先更新的访问请求信息数量的阈值,得到下一个更新阈值,以使所述访问请求信息的数量超过所述下一个更新阈值时,将与所述访问请求信息所对应的文件缓存至所述高速缓存区;
其中,所述根据所述缓存空间变化率,更新所述预先更新的访问请求信息数量的阈值,得到下一个更新阈值,包括:
将所述缓存空间变化率分别与,预设缓存空间变化率最小值和预设缓存空间变化率最大值进行比较;
若比较结果为缓存空间变化率大于预设缓存空间变化率最大值,则判定缓存空间变化率增大,将所述预先更新的访问请求信息数量的阈值更新至N1=N0+(INC-MAX)/a;
若比较结果为缓存空间变化率小于预设缓存空间变化率最小值,则判定缓存空间变化率减小,将所述预先更新的访问请求信息数量的阈值更新至N1=N0-(MIN-INC)/b;
其中,N1为下一个更新阈值,N0为所述预先更新的访问请求信息数量的阈值,INC表示所述缓存空间变化率,MAX为所述预设缓存空间变化率最大值,MIN为所述预设缓存空间变化率最小值,a和b均为常数。
2.根据权利要求1所述的方法,其特征在于,所述在所述访问请求信息的数量超过预先更新的访问请求信息数量的阈值时,将与所述访问请求信息所对应的文件缓存至高速缓存区之前,所述方法还包括:
接收用户发送的访问请求信息,统计用户发送的访问请求信息的数量;
在所述访问请求信息的数量超过预设访问请求信息数量的阈值时,将与所述访问请求信息所对应的文件缓存至高速缓存区;
计算所述高速缓存区的缓存空间变化率;
根据所述缓存空间变化率,更新所述预设访问请求信息数量的阈值,得到所述预先更新的访问请求信息数量的阈值。
3.根据权利要求1所述的方法,其特征在于,所述计算所述高速缓存区的缓存空间变化率,包括:
根据公式:INC=|(SIZE2-SIZE1)/TOTAL|,计算所述缓存空间变化率;其中,INC表示所述缓存空间变化率,SIZE1表示缓存所述访问请求信息所对应的文件前缓存空间大小值,SIZE2表示缓存所述访问请求信息所对应的文件后缓存空间大小值,TOTAL表示缓存空间总大小值。
4.根据权利要求1所述的方法,其特征在于,所述统计用户发送的访问请求信息的数量,包括:
统计所述用户的访问请求信息中用户的工号、用户的IP地址、用户的姓名中的至少一种的数量。
5.根据权利要求1或4所述的方法,其特征在于,所述统计用户发送的访问请求信息的数量,包括:
通过统计用户发送的访问请求信息的频次,统计用户发送的访问请求信息的数量。
6.一种缓存装置,其特征在于,包括:
接收模块,用于接收用户发送的访问请求信息,统计用户发送的访问请求信息的数量;
缓存模块,用于在所述访问请求信息的数量超过预先更新的访问请求信息数量的阈值时,将与所述访问请求信息所对应的文件缓存至高速缓存区;
计算模块,用于计算所述高速缓存区的缓存空间变化率;
更新模块,用于根据所述缓存空间变化率,更新所述预先更新的访问请求信息数量的阈值,得到下一个更新阈值,以使所述访问请求信息的数量超过所述下一个更新阈值时,将与所述访问请求信息所对应的文件缓存至所述高速缓存区;
其中,所述更新模块,具体用于:
将所述缓存空间变化率分别与,预设缓存空间变化率最小值和预设缓存空间变化率最大值进行比较;
若比较结果为缓存空间变化率大于预设缓存空间变化率最大值,则判定缓存空间变化率增大,将所述预先更新的访问请求信息数量的阈值更新至N1=N0+(INC-MAX)/a;
若比较结果为缓存空间变化率小于预设缓存空间变化率最小值,则判定缓存空间变化率减小,将所述预先更新的访问请求信息数量的阈值更新至N1=N0-(MIN-INC)/b;
其中,N1为下一个更新阈值,N0为所述预先更新的访问请求信息数量的阈值,INC表示所述缓存空间变化率,MAX为所述预设缓存空间变化率最大值,MIN为所述预设缓存空间变化率最小值,a和b均为常数。
7.根据权利要求6所述的装置,其特征在于,所述计算模块,具体用于:
根据公式:INC=|(SIZE2-SIZE1)/TOTAL|,计算所述缓存空间变化率;其中,INC表示所述缓存空间变化率,SIZE1表示缓存所述访问请求信息所对应的文件前缓存空间大小值,SIZE2表示缓存所述访问请求信息所对应的文件后缓存空间大小值,TOTAL表示缓存空间总大小值。
8.根据权利要求6所述的装置,其特征在于,所述接收模块,具体用于统计所述用户的访问请求信息中用户的工号、用户的IP地址、用户的姓名中的至少一种的数量。
9.根据权利要求6或8所述的装置,其特征在于,所述接收模块,具体用于通过统计用户发送的访问请求信息的频次,统计用户发送的访问请求信息的数量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611248882.9A CN106612329B (zh) | 2016-12-29 | 2016-12-29 | 一种缓存方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611248882.9A CN106612329B (zh) | 2016-12-29 | 2016-12-29 | 一种缓存方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106612329A CN106612329A (zh) | 2017-05-03 |
CN106612329B true CN106612329B (zh) | 2020-03-20 |
Family
ID=58636485
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611248882.9A Active CN106612329B (zh) | 2016-12-29 | 2016-12-29 | 一种缓存方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106612329B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107231350B (zh) * | 2017-05-24 | 2020-05-19 | 北京潘达互娱科技有限公司 | 一种消息处理方法与装置 |
CN109947665B (zh) * | 2017-12-20 | 2023-06-13 | 阿里巴巴集团控股有限公司 | 一种缓存方法及装置 |
CN110417879A (zh) * | 2019-07-18 | 2019-11-05 | 北京蜜莱坞网络科技有限公司 | 一种消息处理方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102156738A (zh) * | 2011-04-13 | 2011-08-17 | 成都市华为赛门铁克科技有限公司 | 数据块处理方法、数据块存储设备及系统 |
CN103118102A (zh) * | 2013-01-28 | 2013-05-22 | 北京师范大学珠海分校 | 一种在云计算环境下空间数据访问规律的统计与控制系统及方法 |
CN103177005A (zh) * | 2011-12-21 | 2013-06-26 | 深圳市腾讯计算机系统有限公司 | 一种数据访问的处理方法和系统 |
-
2016
- 2016-12-29 CN CN201611248882.9A patent/CN106612329B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102156738A (zh) * | 2011-04-13 | 2011-08-17 | 成都市华为赛门铁克科技有限公司 | 数据块处理方法、数据块存储设备及系统 |
CN103177005A (zh) * | 2011-12-21 | 2013-06-26 | 深圳市腾讯计算机系统有限公司 | 一种数据访问的处理方法和系统 |
CN103118102A (zh) * | 2013-01-28 | 2013-05-22 | 北京师范大学珠海分校 | 一种在云计算环境下空间数据访问规律的统计与控制系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106612329A (zh) | 2017-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230283681A1 (en) | System and method for throttling service requests having non-uniform workloads | |
CN109684358B (zh) | 数据查询的方法和装置 | |
EP3519974B1 (en) | System and method for improvements to a content delivery network | |
CN109947668B (zh) | 存储数据的方法和装置 | |
US9419904B2 (en) | System and method for throttling service requests using work-based tokens | |
CN110365765B (zh) | 一种缓存服务器的带宽调度方法及装置 | |
CN109190070B (zh) | 一种数据处理方法、装置、系统及应用服务器 | |
CN106612329B (zh) | 一种缓存方法及装置 | |
CN106464733B (zh) | 一种调整云计算中虚拟资源的方法及装置 | |
CN108667916B (zh) | 一种Web应用的数据访问方法及系统 | |
CN105354258B (zh) | 一种更新网站数据缓存的装置及方法 | |
US9729603B2 (en) | Content stream delivery using variable cache replacement granularity | |
US7817562B1 (en) | Methods and systems for back end characterization using I/O sampling | |
US20160379122A1 (en) | Recommendation algorithm optimization method, device and system | |
CN104199970B (zh) | 网页数据更新处理方法及装置 | |
CN104035807B (zh) | 一种云存储系统的元数据缓存替换方法 | |
CN111782692A (zh) | 一种频率控制方法及装置 | |
CN111597213A (zh) | 一种缓存方法、软件服务器及存储介质 | |
CN103226520B (zh) | 集群内存自适应管理方法、服务器集群系统 | |
CN113515545A (zh) | 数据查询方法、装置、系统、电子设备以及存储介质 | |
US20150363123A1 (en) | Assigning read requests based on busyness of devices | |
CN110413206B (zh) | 存储系统中的操作控制方法、设备和计算机程序产品 | |
US10182057B1 (en) | Highly scalable fine grained rate limiting | |
CN103442000B (zh) | Web缓存置换方法及装置、http代理服务器 | |
Zhu et al. | Load balancing algorithm for web server based on weighted minimal connections |
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 |