一种清除缓存的方法、装置、存储介质以及电子设备与流程

文档序号:36370011发布日期:2023-12-14 08:26阅读:29来源:国知局
一种清除缓存的方法与流程

本说明书涉及计算机,尤其涉及一种清除缓存的方法、装置、存储介质以及电子设备。


背景技术:

1、在计算机存储领域中,分布式缓存可以有效的提高多个应用在执行任务时对指令和数据的读取速度。

2、虽然多个应用在并列执行多个任务时,通过分布式缓存可以带来高速率的数据读取的便利,但多个应用在对数据库分别进行数据信息更改的时候,可能会导致分布式缓存中的数据信息与数据库中更改后的数据信息有所不同,从而导致分布式缓存中出现遗留缓存数据,即脏数据。而脏数据的出现,导致对后续任务执行过程产生负面影响,进而导致应用在执行后续任务时,出现任务执行出现错误,或应用无法继续执行下一步任务等异常情况。

3、因此,如何消除分布式缓存中遗留的脏数据在应用程序执行任务时产生的负面影响,就显得尤为重要。


技术实现思路

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、从上述内容可以看出,本说明书所提供的清除缓存的方法,可以通过对数据库中的各类数据的变更情况进行实时监控,从而对数据库中已发生变更的数据在分布式缓存中对应的数据进行及时清除,有效的避免了在多个应用执行多个相同或不同的任务时,分布式缓存中出现遗留的脏数据的情况发生,进而也就避免了应用根据脏数据执行对应任务时,任务执行过程中出现错误或导致任务无法正确执行的情况。并且也在一定程度上提高了应用基于分布式缓存中的数据进行业务处理的处理效率,以及应用完成对应任务的准确率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1