一种访问请求处理方法、装置、电子设备及存储介质与流程

文档序号:30582179发布日期:2022-06-29 12:57阅读:81来源:国知局
一种访问请求处理方法、装置、电子设备及存储介质与流程

1.本技术涉及计算机技术领域,尤其涉及一种访问请求处理方法、装置、电子设备及存储介质。


背景技术:

2.在一些高并发的服务系统中,缓存技术是起着功不可没的作用。缓存技术将访问频繁的数据进行缓存,避免每次都去远程数据系统(数据库)中获取,减少不必要的重复请求。
3.服务系统中的每个业务服务节点的前台请求获取数据时,后台先从缓存中获取数据,若获取成功则直接返回结果,若获取失败则从数据库中获取,若从数据库中获取成功则将数据更新至缓存,并返回结果,若从数据库中获取失败,则直接返回空结果。
4.然而,在实际使用中,由于并发用户特别多,多个用户同时读缓存没读到数据,又同时去数据库去取数据,引起数据库压力瞬间增大,造成过大压力,出现缓存击穿的现象,导致服务响应时间过长,影响服务性能。


技术实现要素:

5.为了解决上述技术问题或者至少部分地解决上述技术问题,本技术提供了一种访问请求处理方法、装置、电子设备及存储介质。
6.第一方面,本技术提供了一种访问请求处理方法,包括:
7.接收业务服务节点针对目标数据的第一数据访问请求;
8.获取与所述目标数据的数据标识对应的热度类别,所述热度类别用于指示所述目标数据的访问热度的类别,所述热度类别是根据所述数据标识是否位于预设数据集合内及是否被请求访问确定的;
9.基于预设的热度类别与存储位置之间的对应关系,查找与所述热度类别对应的目标存储位置;
10.从所述目标存储位置获取所述目标数据,并向所述业务服务节点发送。
11.可选地,所述热度类别包括:表示数据标识位于预设数据标识集合内的第一热度类别,表示数据标识位于预设数据标识集合外且被请求访问的第二热度类别,以及,表示数据标识位于预设数据标识集合外且未被请求访问的第三热度类别;
12.其中,所述预设数据标识集合中包括在预设时间段内访问频次超过预设阈值的数据标识。
13.可选地,获取与所述目标数据的数据标识对应的热度类别,包括:
14.确定所述目标数据的数据标识是否位于预设数据标识集合中;
15.若所述目标数据的数据标识位于所述预设数据标识集合中,确定所述目标数据对应的热度类别为所述第一热度类别。
16.可选地,获取与所述热度类别对应的目标存储位置,包括:
17.若所述热度类别为所述第一热度类别,确定用于存储所述目标数据的目标存储位置为外部缓存。
18.可选地,获取与所述目标数据的数据标识对应的热度类别,还包括:
19.若所述目标数据的数据标识位于所述预设数据标识集合外,判断是否接收到针对所述目标数据的第二数据访问请求;
20.若接收到针对所述目标数据的第二数据访问请求,确定所述目标数据对应的热度类别为所述第二热度类别。
21.可选地,获取与所述目标数据的数据标识对应的热度类别,还包括:
22.若所述目标数据的数据标识位于所述预设数据标识集合外,判断预设时间段内是否接收到针对所述目标数据的第二数据访问请求;
23.若预设时间段内接收到针对所述目标数据的第二数据访问请求,确定所述目标数据对应的热度类别为第二热度类别。
24.可选地,获取与所述热度类别对应的目标存储位置,包括:
25.若所述热度类别为第二热度类别,确定用于存储所述目标数据的目标存储位置为共享缓存,所述共享缓存为发送第二数据访问请求的所述业务服务节点中的共享缓存。
26.可选地,获取与所述目标数据的数据标识对应的热度类别,还包括:
27.若未接收到针对所述目标数据的第二数据访问请求,确定所述目标数据对应的热度类别为所述第三热度类别。
28.可选地,获取与所述热度类别对应的目标存储位置,包括:
29.若所述热度类别为第三热度类别,确定用于存储所述目标数据的目标存储位置为数据库。
30.可选地,所述方法还包括:
31.获取多个数据标识在所述预设时间段内的访问频次;
32.若任一所述数据标识为访问频次最高的预设数量个数据标识中的一个且所述数据标识未在所述预设数据标识集合中,将所述数据标识添加至所述预设数据标识集合中;
33.从数据库中获取所述数据标识所对应的数据,并存储至外部缓存中。
34.可选地,所述方法还包括:
35.若任一所述数据标识不为访问频次最高的预设数量个数据标识中的一个且所述数据标识在所述预设数据标识集合中,将所述数据标识从所述预设数据标识集合中移出;
36.从所述外部缓存中删除所述数据标识。
37.第二方面,本技术提供了一种访问请求处理装置,包括:
38.接收模块,用于接收业务服务节点针对目标数据的第一数据访问请求;
39.第一获取模块,用于获取与所述目标数据的数据标识对应的热度类别,所述热度类别用于指示所述目标数据的访问热度的类别,所述热度类别是根据所述数据标识是否位于预设数据集合内及是否被请求访问确定的;
40.第二获取模块,用于基于预设的热度类别与存储位置之间的对应关系,获取与所述热度类别对应的目标存储位置;
41.第三获取模块,用于从所述目标存储位置获取所述目标数据,并向所述业务服务节点发送。
42.可选地,所述热度类别包括:表示数据标识位于预设数据标识集合内的第一热度类别,表示数据标识位于预设数据标识集合外且被请求访问的第二热度类别,以及,表示数据标识位于预设数据标识集合外且未被请求访问的第三热度类别;
43.其中,所述预设数据标识集合中包括在预设时间段内访问频次超过预设阈值的数据标识。
44.可选地,所述第一获取模块包括:
45.第一确定单元,用于确定所述目标数据的数据标识是否位于预设数据标识集合中;
46.第二确定单元,用于若所述目标数据的数据标识位于所述预设数据标识集合中,确定所述目标数据对应的热度类别为所述第一热度类别。
47.可选地,所述第二获取模块包括:
48.第三确定单元,用于若所述热度类别为所述第一热度类别,确定用于存储所述目标数据的目标存储位置为外部缓存。
49.可选地,所述第一获取模块还包括:
50.判断单元,用于若所述目标数据的数据标识位于所述预设数据标识集合外,判断是否接收到针对所述目标数据的第二数据访问请求;
51.第四确定单元,用于若接收到针对所述目标数据的第二数据访问请求,确定所述目标数据对应的热度类别为所述第二热度类别。
52.可选地,所述第二获取模块包括:
53.第五确定单元,用于若所述热度类别为所述第二热度类别,确定用于存储所述目标数据的目标存储位置为共享缓存,所述共享缓存为发送第二数据访问请求的所述业务服务节点中的共享缓存。
54.可选地,所述第一获取模块还包括:
55.第六确定单元,用于若未接收到针对所述目标数据的第二数据访问请求,确定所述目标数据对应的热度类别为所述第三热度类别。
56.可选地,所述第二获取模块包括:
57.第七确定单元,用于若所述热度类别为所述第三热度类别,确定用于存储所述目标数据的目标存储位置为数据库。
58.可选地,所述装置还包括:
59.第四获取模块,用于获取多个数据标识在预设时间段内的访问频次;
60.添加模块,用于若任一所述数据标识为访问频次最高的预设数量个数据标识中的一个且所述数据标识未在所述预设数据标识集合中,将所述数据标识添加至所述预设数据标识集合中;
61.第五获取模块,用于从数据库中获取所述数据标识所对应的数据,并存储至外部缓存中。
62.可选地,所述装置还包括:
63.移出模块,用于若任一所述数据标识不为访问频次最高的预设数量个数据标识中的一个且所述数据标识在所述预设数据标识集合中,将所述数据标识从所述预设数据标识集合中移出;
64.删除模块,用于从所述外部缓存中删除所述数据标识。
65.第三方面,本技术提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
66.存储器,用于存放计算机程序;
67.处理器,用于执行存储器上所存放的程序时,实现第一方面任一所述的访问请求处理方法。
68.第四方面,本技术提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有访问请求处理方法的程序,所述访问请求处理方法的程序被处理器执行时实现第一方面任一所述的访问请求处理方法的步骤。
69.本技术实施例提供的上述技术方案与现有技术相比具有如下优点:
70.本发明实施例通过首先接收业务服务节点针对目标数据的第一数据访问请求,然后获取与所述目标数据的数据标识对应的热度类别,所述热度类别用于指示所述目标数据的访问热度的类别,所述热度类别是根据所述数据标识是否位于预设数据集合内及是否被请求访问确定的,再基于预设的热度类别与存储位置之间的对应关系,获取与所述热度类别对应的目标存储位置,最后可以从所述目标存储位置获取所述目标数据,并向所述业务服务节点发送。
71.本发明实施例通过预先设置热度类别与存储位置之间的对应关系,根据数据标识是否位于预设数据集合内及是否被请求访问确定数据标识对应的热度类别,进而实现将不同热度类别的目标数据分别存储在不同的目标存储位置,便于将访问热度高的数据集中存储在同一存储位置,如可以根据实际需要存储于响应速度快的存储位置,解决不经常访问的数据出现缓存击穿的问题,减少不必的重新请求,进而实现在有限的缓存空间条件下,提高数据缓存率和访问命中率,达到提高服务性能的效果。
附图说明
72.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
73.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
74.图1为本技术实施例提供的一种服务系统的结构图;
75.图2为本技术实施例提供的一种访问请求处理方法的流程图;
76.图3为本技术实施例提供的一种实际应用中的服务系统的结构图;
77.图4为本技术实施例提供的一种实际应用中的访问请求处理方法的流程图;
78.图5为本技术实施例提供的一种访问请求处理装置的结构图;
79.图6为本技术实施例提供的一种电子设备的结构图。
具体实施方式
80.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是
本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
81.本技术实施例提供了一种服务系统,基于该服务系统可以实现数据的访问与响应,如图1所示,该服务系统包括:数据访问代理中心01、外部缓存02、数据库03及多个业务服务节点04,数据访问代理中心与外部缓存、数据库及多个业务服务节点分别通过网络连接。
82.为了实现差异化存储,可以按照响应速度,将业务服务节点的本地缓存、外部缓存、数据库或者其它业务服务节点的共享缓存分别设置不同的优先级,优先级从高到低依次为:本地缓存(本机器内缓存)、外部缓存、共享缓存和数据库,需要说明的是,在实际应用中,也可以提供其它的存储形式,并分别为之配置相应的优先级。
83.数据访问代理中心,用于接收各业务服务节点的数据访问请求,并根据数据访问请求,从外部缓存、数据库或者其它业务服务节点的共享缓存获取所请求的目标数据,并返回给发送该数据访问请求的业务服务节点。
84.每个业务服务节点的内存中设置有本地缓存,当业务服务节点的前台接收到针对目标数据的数据访问请求时,优先从本地缓存中读取相应的目标数据;本地缓存不存在目标数据时,可以向数据访问代理中心发送数据访问请求,在通过数据访问代理中心获取到所请求的目标数据后,可以将目标数据后缓存在本地,并设置一定过期时间。
85.外部缓存,例如:redis、couchbase等高性能缓存数据库,在接收到数据访问请求的业务服务节点的本地缓存中不存在数据访问请求所请求的目标数据时,数据访问代理中心可以从外部缓存中读取目标数据。
86.业务服务节点还可以通过额外开放一个http服务,即开放一个用于共享缓存的接口,如:8888端口,通过接口对外开放其本地缓存,开放共享的本地缓存即共享缓存,数据访问代理中心可以在外部缓存中不存在数据访问请求所请求的目标数据时,通过输入数据标识(如:请求参数key),从其他业务服务节点(非接收到数据访问请求的业务服务节点)的共享缓存中的目标数据,例如:当外部输入http://xxx:8888/cache?key=k1,则获取本地缓存中缓存的key=k1的目标数据。
87.数据库,用于在数据访问代理中心可以在共享缓存中不存在数据访问请求所请求的目标数据时,通过输入数据标识从数据库中查询目标数据。
88.也就是说,当某业务服务节点需要访问目标数据时,可以优先从本地缓存中获取,若目标数据不在本地缓存中,可以从外部缓存中获取,若目标数据不在外部缓存中,可以从共享缓存中获取,若目标数据不在共享缓存中,则可以从数据库获取。
89.在现有技术中,每个业务服务节点自身具有本地缓存,并与服务器连接。前台请求获取数据时,后台先从缓存中获取数据,若获取成功则直接返回结果,若获取失败则从数据库中获取,若从数据库中获取成功则将数据更新至缓存,并返回结果,若从数据库中获取失败,则直接返回空结果。在读取本地缓存中没有但数据库中有的数据(一般是缓存时间到期)时,由于并发用户特别多,多个用户同时读缓存没读到数据,又同时去数据库去取数据,引起数据库压力瞬间增大,造成过大压力,出现缓存击穿的现象,导致服务响应时间过长,影响服务性能。为此,本技术实施例提供一种访问请求处理方法、装置、电子设备及存储介质,能够提高数据缓存率和访问命中率,达到提高服务性能的效果。
90.在本技术实施例中,访问请求处理方法可以应用于前述的数据访问代理中心中,如图2所示,该访问请求处理方法可以包括以下步骤:
91.步骤s101,接收业务服务节点针对目标数据的第一数据访问请求;
92.如前文所述,业务服务节点可以在本地缓存中无法获取到目标数据时,向数据访问代理中心发送第一数据访问请求,第一数据访问请求中可以携带请求访问的目标数据的数据标识,这样,数据访问代理中心即可接收业务服务节点针对目标数据的第一数据访问请求,即与数据标识对应的目标数据。
93.步骤s102,获取与所述目标数据的数据标识对应的热度类别。
94.本发明实施例中,所述热度类别用于指示所述目标数据的访问热度的类别,所述热度类别是根据所述数据标识是否位于预设数据集合内及是否被请求访问确定的,实际应用中,可以预先设置至少两个不同热度类别,包括:第一热度类别、第二热度类别和第三热度类别等,其中,第一热度类别对应的访问热度最高,第二热度类别对应的访问热度次之,第三热度类别对应的访问热度最低。
95.所述热度类别包括:表示数据标识位于预设数据标识集合内的第一热度类别,表示数据标识位于预设数据标识集合外且被请求访问的第二热度类别,以及,表示数据标识位于预设数据标识集合外且未被请求访问的第三热度类别;
96.其中,所述预设数据标识集合中包括在预设时间段内访问频次超过预设阈值的数据标识。
97.实际应用中,可以将位于预设数据标识集合外且预设时长内被请求访问的数据标识对应的热度类别确定为第二热度类别,将位于预设数据标识集合外且预设时长内未被请求访问的数据标识确定为第三热度类别;其中,预设时长大于预设时间段。
98.在该步骤中,可以获取该数据标识对应的访问热度,再在至少两个不同热度类别中,根据访问热度获取一个与访问热度匹配的热度类别。
99.步骤s103,基于预设的热度类别与存储位置之间的对应关系,获取与所述热度类别对应的目标存储位置。
100.本发明实施例中,目标存储位置可以包括:外部缓存、共享缓存和数据库等,可以预先设置不同热度类别与存储位置之间的对应关系,如下表1所示:
101.表1
102.热度类别存储位置第一热度类别外部缓存第二热度类别共享缓存第三热度类别数据库
103.在该步骤中,可以在已知热度类别的情况下,在表1中查询相匹配的热度类别,并将表1中与热度类别匹配的存储位置作为目标存储位置。
104.步骤s104,从所述目标存储位置获取所述目标数据,并向所述业务服务节点发送。
105.在该步骤中,可以按照数据标识在目标存储位置中查找目标数据,并返回给业务服务节点。
106.本发明实施例通过首先接收业务服务节点针对目标数据的第一数据访问请求,然后获取与所述目标数据的数据标识对应的热度类别,所述热度类别用于指示所述目标数据
的访问热度的类别,所述热度类别是根据所述数据标识是否位于预设数据集合内及是否被请求访问确定的,再基于预设的热度类别与存储位置之间的对应关系,获取与所述热度类别对应的目标存储位置,最后可以从所述目标存储位置获取所述目标数据,并向所述业务服务节点发送。
107.本发明实施例通过预先设置热度类别与存储位置之间的对应关系,根据数据标识是否位于预设数据集合内及是否被请求访问确定数据标识对应的热度类别,进而实现将不同热度类别的目标数据分别存储在不同的目标存储位置,便于将访问热度高的数据集中存储在同一存储位置,如可以根据实际需要存储于响应速度快的存储位置,解决不经常访问的数据出现缓存击穿的问题,减少不必的重新请求,进而实现在有限的缓存空间条件下,提高数据缓存率和访问命中率,达到提高服务性能的效果。
108.在本技术的又一实施例中,步骤s102获取与所述目标数据的数据标识对应的热度类别,包括:
109.步骤201,确定所述目标数据的数据标识是否位于预设数据标识集合中。
110.本发明实施例中,所述预设数据标识集合中包括多个获取访问热度最高的数据标识,在实际应用中,可以将不同数据标识的访问热度进行排序,将访问热度topn(n为大于0的整数)的数据标识添加至预设数据标识集合。
111.在该步骤中,可以将目标数据的数据标识与预设数据标识集合中的各数据标识进行匹配,如果匹配成功,则可以确定目标数据的数据标识位于预设数据标识集合中。
112.步骤202,若所述目标数据的数据标识位于所述预设数据标识集合中,确定所述目标数据对应的热度类别为所述第一热度类别。也就是说,若目标数据的数据标识为访问热度最高的若干个数据标识之一,则可以将目标数据的热度类别设置为第一热度类别。
113.相应的,步骤s103获取与所述热度类别对应的目标存储位置,包括:
114.若所述热度类别为所述第一热度类别,确定用于存储所述目标数据的目标存储位置为外部缓存。也就是说,若目标数据的数据标识为访问热度最高的若干个数据标识之一,则可以设置从外部缓存获取目标数据。
115.本发明实施例通过将访问热度最高的目标数据(即热数据)设置第一数据类别,并在第一数据类别对应的存储位置设置为性能最高的外部缓存,可以提高访问热度最高的数据的响应速度,提高服务性能。
116.在本技术的又一实施例中,步骤s102获取与所述目标数据的数据标识对应的热度类别,还包括:
117.步骤301,若所述目标数据的数据标识位于所述预设数据标识集合外,判断是否接收到针对所述目标数据的第二数据访问请求;
118.本发明实施例中,目标数据的数据标识位于所述预设数据标识集合外表明目标数据的数据标识并非访问热度最高的预设数量个数据标识之一,则可以进一步判断该目标数据的数据标识是否在最近的预设时长内曾经被访问过。
119.步骤302,若接收到针对所述目标数据的第二数据访问请求,确定所述目标数据对应的热度类别为第二热度类别。也就是说,若目标数据的数据标识不为访问热度最高的若干个数据标识之一,且,在最近的预设时长内曾经被请求访问过,则可以将目标数据的热度类别设置为第二热度类别。
120.相应的,步骤s103获取与所述热度类别对应的目标存储位置,包括:
121.若所述热度类别为第二热度类别,确定用于存储所述目标数据的目标存储位置为共享缓存,所述共享缓存为发送第二数据访问请求的所述业务服务节点中的共享缓存。也就是说,若目标数据的数据标识位于预设数据标识集合外且在最近的预设时长内曾经被请求访问,则可以设置从共享缓存获取目标数据。
122.本发明实施例通过将访问热度次高的目标数据(即冷数据)设置第二数据类别,并在第二数据类别对应的存储位置设置为性能次高的共享缓存,在不影响业务服务情况下,提高缓存命中率,提高访问热度最高的数据的响应速度,提高服务性能。
123.在本技术的又一实施例中,获取与所述目标数据的数据标识对应的热度类别,还包括:
124.若未接收到针对所述目标数据的第二数据访问请求,确定所述目标数据对应的热度类别为第三热度类别。也就是说,若目标数据的数据标识不为访问热度最高的若干个数据标识之一,且,在最近的预设时长内未被请求访问过,则可以将目标数据的热度类别设置为第三热度类别。
125.相应的,获取与所述热度类别对应的目标存储位置,包括:
126.若所述热度类别为第三热度类别,确定用于存储所述目标数据的目标存储位置为数据库。也就是说,若目标数据的数据标识位于预设数据标识集合外且在最近的预设时长内未被请求访问过,则可以设置从数据库获取目标数据。
127.本发明实施例通过将访问热度最低的目标数据设置第三数据类别,并在第三数据类别对应的存储位置设置为存储有大量数据的数据库,可以保证目标数据的获取成功率,提高服务性能。
128.在本发明的又一实施例中,所述方法还包括:
129.步骤401,获取多个数据标识在预设时间段内的访问频次;
130.在该步骤中,可以统计数据访问代理中心中接收到的所有数据访问请求所请求获取的数据标识,及每个数据标识被请求访问的次数,得到多个数据标识的访问频次。
131.步骤402,若任一所述数据标识为访问频次最高的预设数量个数据标识中的一个且所述数据标识未在所述预设数据标识集合中,将所述数据标识添加至所述预设数据标识集合中;
132.在实际应用中,可以实时根据数据标识的访问频次排名更新预设数据标识集合,以便于实时更新访问热度最高的预设数量个数据标识所对应的数据的存储位置。
133.步骤403,从数据库中获取所述数据标识所对应的数据,并存储至外部缓存中。
134.对于访问热度最高的预设数量个数据标识所对应数据,其存储位置由数据库中移至外部缓存中,便于减少数据库的直接访问,提高请求的响应速度,减少请求次数,提高服务性能。
135.步骤404,若任一所述数据标识不为访问频次最高的预设数量个数据标识中的一个且所述数据标识在所述预设数据标识集合中,将所述数据标识从所述预设数据标识集合中移出;
136.步骤405,从所述外部缓存中删除所述数据标识。
137.对于访问热度不是最高的预设数量个数据标识,移出预设数据标识集合,这些数
据标识所对应数据,从外部缓存中删除,以免占用外部缓存中的存储空间,以便为访问热度最高的预设数量个数据标识所对应数据留出存储空间,进而实现便于减少数据库的直接访问,提高请求的响应速度,减少请求次数,提高服务性能的效果。
138.在实际应用中,如图3所示,本发明实施例可以按照数据的数据标识的访问频次维护一个top n的堆,当有数据标识(key)进入堆时,从数据库获取数据标识对应的数据并加载到外部缓存中,当有数据标识退出堆时,将外部缓存中对应的缓存数据删除掉。
139.基于此,如图4所示,当接收到数据访问请求时(如:来自于图3中的业务服务节点a),首先判断所请求的目标数据的数据标识是否在堆内,如果在堆内,就从外部缓存中读取返回给业务服务节点;如果不在堆内,判断是否近期内有相同的数据访问请求以请求该目标数据的数据标识,如果无,从数据库读取返回目标数据给业务服务节点,并记录下业务服务节点的信息,将此业务服务节点加入共享缓存网络(如:图3中的共享缓存网络包括业务服务节点a、b、c和d),以便为后续提供共享缓存,如果有,则从最近记录的业务服务节点中,通过共享缓存接口获取目标数据。
140.在本技术的又一实施例中,还提供一种访问请求处理装置,如图5所示,包括:
141.接收模块11,用于接收业务服务节点针对目标数据的第一数据访问请求;
142.第一获取模块12,用于获取与所述目标数据的数据标识对应的热度类别,所述热度类别用于指示所述目标数据的访问热度的类别,所述热度类别是根据所述数据标识是否位于预设数据集合内及是否被请求访问确定的;
143.第二获取模块13,用于基于预设的热度类别与存储位置之间的对应关系,获取与所述热度类别对应的目标存储位置;
144.第三获取模块14,用于从所述目标存储位置获取所述目标数据,并向所述业务服务节点发送。
145.可选地,所述热度类别包括:表示数据标识位于预设数据标识集合内的第一热度类别,表示数据标识位于预设数据标识集合外且被请求访问的第二热度类别,以及,表示数据标识位于预设数据标识集合外且未被请求访问的第三热度类别;
146.其中,所述预设数据标识集合中包括在预设时间段内访问频次超过预设阈值的数据标识。
147.可选地,所述第一获取模块包括:
148.第一确定单元,用于确定所述目标数据的数据标识是否位于预设数据标识集合中;
149.第二确定单元,用于若所述目标数据的数据标识位于所述预设数据标识集合中,确定所述目标数据对应的热度类别为所述第一热度类别。
150.可选地,所述第二获取模块包括:
151.第三确定单元,用于若所述热度类别为所述第一热度类别,确定用于存储所述目标数据的目标存储位置为外部缓存。
152.可选地,所述第一获取模块还包括:
153.判断单元,用于若所述目标数据的数据标识位于所述预设数据标识集合外,判断是否接收到针对所述目标数据的第二数据访问请求;
154.第四确定单元,用于若接收到针对所述目标数据的第二数据访问请求,确定所述
目标数据对应的热度类别为所述第二热度类别。
155.可选地,所述第二获取模块包括:
156.第五确定单元,用于若所述热度类别为所述第二热度类别,确定用于存储所述目标数据的目标存储位置为共享缓存,所述共享缓存为发送第二数据访问请求的所述业务服务节点中的共享缓存。
157.可选地,所述第一获取模块还包括:
158.第六确定单元,用于若未接收到针对所述目标数据的第二数据访问请求,确定所述目标数据对应的热度类别为所述第三热度类别。
159.可选地,所述第二获取模块包括:
160.第七确定单元,用于若所述热度类别为所述第三热度类别,确定用于存储所述目标数据的目标存储位置为数据库。
161.可选地,所述装置还包括:
162.第四获取模块,用于获取多个数据标识在预设时间段内的访问频次;
163.添加模块,用于若任一所述数据标识为访问频次最高的预设数量个数据标识中的一个且所述数据标识未在所述预设数据标识集合中,将所述数据标识添加至所述预设数据标识集合中;
164.第五获取模块,用于从数据库中获取所述数据标识所对应的数据,并存储至外部缓存中。
165.可选地,所述装置还包括:
166.移出模块,用于若任一所述数据标识不为访问频次最高的预设数量个数据标识中的一个且所述数据标识在所述预设数据标识集合中,将所述数据标识从所述预设数据标识集合中移出;
167.删除模块,用于从所述外部缓存中删除所述数据标识。
168.在本发明的又一实施例中,还提供一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
169.存储器,用于存放计算机程序;
170.处理器,用于执行存储器上所存放的程序时,实现前述任一方法实施例所述的访问请求处理方法。
171.本发明实施例提供的电子设备,处理器通过执行存储器上所存放的程序实现了首先接收业务服务节点针对目标数据的第一数据访问请求,然后获取与所述目标数据的数据标识对应的热度类别,所述热度类别用于指示所述目标数据的访问热度的类别,所述热度类别是根据所述数据标识是否位于预设数据集合内及是否被请求访问确定的,再基于预设的热度类别与存储位置之间的对应关系,获取与所述热度类别对应的目标存储位置,最后可以从所述目标存储位置获取所述目标数据,并向所述业务服务节点发送。
172.本发明实施例通过预先设置热度类别与存储位置之间的对应关系,根据数据标识是否位于预设数据集合内及是否被请求访问确定数据标识对应的热度类别,进而实现将不同热度类别的目标数据分别存储在不同的目标存储位置,便于将访问热度高的数据集中存储在同一存储位置,如可以根据实际需要存储于响应速度快的存储位置,解决不经常访问的数据出现缓存击穿的问题,减少不必的重新请求,进而实现在有限的缓存空间条件下,提
高数据缓存率和访问命中率,达到提高服务性能的效果。
173.上述电子设备提到的通信总线1140可以是外设部件互连标准(peripheralcomponentinterconnect,简称pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,简称eisa)总线等。该通信总线1140可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
174.通信接口1120用于上述电子设备与其他设备之间的通信。
175.存储器1130可以包括随机存取存储器(randomaccessmemory,简称ram),也可以包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
176.上述的处理器1110可以是通用处理器,包括中央处理器(centralprocessingunit,简称cpu)、网络处理器(networkprocessor,简称np)等;还可以是数字信号处理器(digitalsignalprocessing,简称dsp)、专用集成电路(applicationspecificintegratedcircuit,简称asic)、现场可编程门阵列(field-programmablegatearray,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
177.在本发明的又一实施例中,还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有访问请求处理方法的程序,所述访问请求处理方法的程序被处理器执行时实现前述任一方法实施例所述的访问请求处理方法的步骤。
178.需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
179.以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1