一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种预防缓存雪崩的系统的制作方法

2021-11-24 22:17:00 来源:中国专利 TAG:


1.本发明涉及缓存安全设置技术领域,具体地说是一种预防缓存雪崩的系统。


背景技术:

2.随着互联网行业的迅猛发展,越来越多的应用出现在大家的视野中。一个应用要想吸引到用户,除了用户关心的使用功能之外,应用的响应效率也是一个非常重要的因素,因为它与用户的体验度紧密相连。目前来提升应用的响应效率大家往往都采用缓存数据的方式,即将经常使用到且更新频率较低的数据缓存起来,用户在请求这些数据的时候,直接从缓存中将获取数据,然后将相应结果反馈给用户。与传统方式从数据库中读取数据然后再反馈给用户相比,缓存部分数据的方式的确能够提升应用的响应效率。但是缓存中的数据是存在时效性的,当在某一个时刻出现大量缓存数据时效的情况下,请求依旧会通往数据库,从数据库中获取相应的信息,这个过程中会给数据库带来巨大的压力,设置会出现数据库down掉的风险,最终会导致应用不可用。
3.基于上述分析,如何解决设置缓存的实效时间、以避免出现大量缓存数据时效的场景,是需要解决的技术问题。


技术实现要素:

4.本发明的技术任务是针对以上不足,提供一种预防缓存雪崩的系统,来解决如何解决设置缓存的实效时间、以避免出现大量缓存数据时效的场景的技术问题。
5.本发明的一种预防缓存雪崩的系统,用于根据已有的缓存时效时间动态计算当前数据的具体时效时间,并通过人为权重系数控制时效时间,所述系统包括:
6.数据查询解析器,所述数据查询解析器用于记录各个监控表的数据查询次数,将满足预定查询频率的数据作为高频查询数据,并将高频处查询数据进行缓存;
7.数据更新解析器,所述数据更新解析器作用于被缓存的高频查询数据,在更新某一条高频查询数据时所述数据更新解析器用于根据具体的场景来进行数据更新;
8.缓存时间处理器器,所述缓存时间处理器用于根据数据的权重计算数据需要被设置的失效时间,所述数据的权重包括主观权重和客观权重,所述主观权重为人为设置的权重系数,所述客观权重为通过程序采集的权重系数。
9.作为优选,所述监控表的表信息通过管理员预先手动配置;
10.所述数据查询解析器用于记录管理员预先手动配置的监控表的数据查询次数。
11.作为优选,如果被更新的数据单独存放于缓存中,所述数据更新解析器用于直接从缓存中获取具体的数据并将获取的数据更新为最新数据,并调用缓存时间处理器获取应设置的缓存时效时间,将最新的数据进行缓存。
12.作为优选,如果被更新的数据与其他数据共同存储在一个key对应的value中,所述数据更新解析器用于按照当前数据在列表的索引位置进行更新。
13.作为优选,所述人为设置的权重系数为管理员手动设置的监控表的数据数据的权
重系数,权重系数越大表示所述表数据被设置的缓存失效时间越长;
14.所述客观权重系数为通过数据的访问频率计算得出的系数,数据被访问的频率越高表示所述数据的客观权重系数越大。
15.作为优选,所述缓存时间处理器器用于根据数据的权重计算数据需要被设置的失效时间,包括如下操作:
16.设置主观权重和客观权重在权重系数体系中所占的百分比,以计算出目标数据最终的权重系数;
17.根据所述权重系数设置缓存数据失效时间,并通过缓存时间处理器记录所述缓存失效时间;
18.缓存时间处理器在计算出缓存数据失效时间后,从当前已存储的缓存数据失效时间集合中检索当前缓存数据失效时间出现的次数,如果所述缓存数据失效时间出现的次数较高,再次计算缓存数据失效时间,同时缓存时间处理器启动一个失效时间倒计时的程序,在缓存失效时间到达时,通过所述程序主动提交一个重新计算所述缓存数据失效时间的请求,由数据更新解析器重新刷新所述缓存数据。
19.作为优选,所述数据查询解析器用于启动一个线程,并通过所述线程处理失效数据刷新的请求。
20.作为优选,通过所述程序主动提交一个重新计算所述缓存数据失效时间的请求,由数据更新解析器中线程重新刷新所述缓存数据。
21.本发明的一种预防缓存雪崩的系统具有以下优点:
22.1、通过一系列计算优化设置缓存的失效时间,在很大程度上避免了因大批量缓存数据集体失效,造成数据请求路由到底层数据库,从而给数据库造成巨大压力,设置服务宕机的风险;
23.2、启动一个线程用来处理失效数据刷新的请求。这种主动刷新缓存数据的机制,能够避免因缓存数据失效造成的大量数据请求被放行到数据库的场景;
24.3、开发者不再关注与如何设置缓存时效时间,只注重于业务开发即可,减少其工作量;
25.4、适用于各种缓存场景,有良好的适用性。
附图说明
26.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
27.下面结合附图对本发明进一步说明。
28.图1为一种预防缓存雪崩的系统的工作流程。
具体实施方式
29.下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定,在不冲突的情况
下,本发明实施例以及实施例中的技术特征可以相互结合。
30.本发明实施例提供一种预防缓存雪崩的系统,用于解决如何解决设置缓存的实效时间、以避免出现大量缓存数据时效的场景的技术问题。
31.实施例:
32.本发明的一种预防缓存雪崩的系统,用于根据已有的缓存时效时间动态计算当前数据的具体时效时间,并通过人为权重系数控制时效时间,该系统包括数据查询解析器、数据更新解析器和缓存时间处理器,数据查询解析器用于记录各个监控表的数据查询次数,将满足预定查询频率的数据作为高频查询数据,并将高频处查询数据进行缓存;数据更新解析器作用于被缓存的高频查询数据,在更新某一条高频查询数据时所述数据更新解析器用于根据具体的场景来进行数据更新;缓存时间处理器用于根据数据的权重计算数据需要被设置的失效时间,数据的权重包括主观权重和客观权重,主观权重为人为设置的权重系数,客观权重为通过程序采集的权重系数。
33.监控表的表信息通过管理员预先手动配置,数据查询解析器用于记录管理员预先手动配置的监控表的数据查询次数。
34.数据查询解析器主要是用来记录不同表数据的查询次数,它能够直观的比较出那些表数据查询查询频率高,对于查询频率较高的数据,是可以将其存放到缓存中,提升数据库的查询效率。企业级的项目中往往存在很多的表数据,数据查询解析器如果监控所有的表数据,是得不偿失的。因此有的业务数据并非关键业务数据,其访问量必然很低。为了解决这种场景,可以手动配置需要监控的表信息,数据查询解析器只会记录事先配置的表的查询次数。
35.被缓存的数据在有更新操作时需要将最新的数据重新刷新到缓存中,这样才能保证用户看到的是最新的且正确的数据。数据更新解析器在更新某一条数据时需要根据具体的场景来进行数据更新。
36.被更新的数据时单独存放在缓存中,那么数据更新解析器直接从缓存中获取到具体的数据然后将其更新成最新的数据,调用缓存时间处理器获取应该设置的缓存失效时间,将最新的数据放置在缓存中即可。
37.被更新的数据与其他的数据共同存储在某一个key对应的value中,那么按照当前数据在列表中的索引位置进行更新即可。这样能够避免大量数据被写入到内存中,造成内存溢出的风险。
38.数据更新解析器除了将需要更新的数据重新刷入到缓存中之外,还会启动一个线程用来处理失效数据刷新的请求。这种主动刷新缓存数据的机制,能够避免因缓存数据失效造成的大量数据请求被放行到数据库的场景。
39.缓存时间处理器的主要作用是根据数据的权重来计算数据需要被设置的失效时间。这里的数据权重包括了主观权重和客观权重,即人为设置的权重系数以及通过程序采集到的权重系数。
40.人为权重系数指的管理员手动设置的表数据的权重系数,权重系数越大表示此表数据被设置的缓存失效时间越长。这种方式有助于应对一些突发场景,例如促销场景。在促销的场景中,主推的商品有可能是非畅销商品,那么需要将这些非畅销商品的数据尽可能的长时间缓存,因为促销的时间一般是已天来计算的,在促销的时间段内无法确定访问频
率的大小。人为权重系数为数据缓存提供了一种可控的手段,极大方便了一些特殊场景下的缓存数据的设置。
41.客观权重系数指的通过数据的访问频率来计算出来的系数。数据被访问的频率越高,其客观权重系数就越大。客观权重系数的数据来源为数据查询解析器提供的数据查询次数数据量。
42.设置人为权重系数、客观权重系数在权重系数体系中所占的百分比,可计算出某一业务数据最终的权重系数,根据此权重系数即可设置具体的缓存数据失效时间,同时缓存时间处理器会记录下该缓存失效时间。缓存时间处理器在计算出缓存数据失效时间后,会从当前已存储的缓存数据失效时间集合中检索当前失效时间出现的次数,如果该失效时间出现的次数较高,会再次计算缓存失效时间。在同时缓存时间处理器会启动一个失效时间倒计时的程序,在缓存失效时间到达的时候会主动的提交一个重新此失效数据的请求,由数据更新解析器中线程来重新刷新改缓存数据。
43.如图1所示,通过一系列计算优化设置缓存的失效时间,在很大程度上避免了因大批量缓存数据集体失效,造成数据请求路由到底层数据库,从而给数据库造成巨大压力,设置服务宕机的风险。
44.上文通过附图和优选实施例对本发明进行了详细展示和说明,然而本发明不限于这些已揭示的实施例,基与上述多个实施例本领域技术人员可以知晓,可以组合上述不同实施例中的手段得到本发明更多的实施例,这些实施例也在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献