缓存数据的更新方法、装置和电子设备制造方法及图纸

技术编号:35507891 阅读:16 留言:0更新日期:2022-11-09 14:20
本发明专利技术提供了一种缓存数据的更新方法、装置和电子设备,从预先配置的缓存更新配置表中,获取目标缓存配置信息;其中的目标缓存配置信息用于指示数据库中的目标数据发生修改,缓存中目标数据对应的目标缓存数据需要更新;基于目标缓存配置信息,从预先配置的更新类中,确定目标数据对应的目标更新类;基于目标更新类,从数据库中获取目标数据,根据目标数据更新缓存中的目标缓存数据。该方式中,根据缓存更新配置表中缓存配置信息,能够在数据库中的数据发生修改时,获取需要更新的缓存数据对应的缓存配置信息,根据该缓存配置信息和用于更新缓存中缓存数据的更新类,按需实时更新缓存中缓存数据,避免了重新启动程序,提高了对外服务的稳定性。对外服务的稳定性。对外服务的稳定性。

【技术实现步骤摘要】
缓存数据的更新方法、装置和电子设备


[0001]本专利技术涉及计算机
,尤其是涉及一种缓存数据的更新方法、装置和电子设备。

技术介绍

[0002]在一些应用中,缓存中的数据通常来自于数据库中的数据,对于访问频率高、更新较少的数据,一般会保存在缓存中,相对从数据库中读取数据,从缓存中读取数据,会提升获取数据的效率。但是,如果数据库中的数据进行了修改,可能会出现数据库中的数据与缓存中的数据不一致的情况。相关技术中,当数据库中的数据进行了修改,通常需要重新启动应用程序,才可以根据数据库中修改的数据,更新缓存中对应的数据,以使数据库中的数据与缓存中的数据相同,但是,重启的方式会影响应用的对外服务,进而影响应用运行的稳定性。

技术实现思路

[0003]有鉴于此,本专利技术的目的在于提供一种缓存数据的更新方法、装置和电子设备,当数据库中的数据发生修改后,可以实时更新缓存中修改后的数据对应的缓存数据,以避免重新启动程序,进而提高对外服务的稳定性。
[0004]第一方面,本专利技术实施例提供了一种缓存数据的更新方法,该方法包括:从预先配置的缓存更新配置表中,获取目标缓存配置信息;其中,目标缓存配置信息用于指示:数据库中的目标数据发生修改,以及缓存中目标数据对应的目标缓存数据需要更新;基于目标缓存配置信息,从预先配置的更新类中,确定目标数据对应的目标更新类;其中,更新类用于更新缓存中的缓存数据;基于目标更新类,从数据库中获取目标数据,根据目标数据更新缓存中的目标缓存数据。
[0005]进一步的,从预先配置的缓存更新配置表中,获取目标缓存配置信息的步骤,包括:通过预设的工作线程,向数据库发送信息获取请求,获取缓存配置表中的缓存配置信息;其中,每个缓存配置信息均包括有对应的缓存数据的更新字段;工作线程为守护线程;从缓存配置信息中,遍历更新字段为第一标识的目标缓存配置信息;其中,更新字段为第一标识用于指示:目标缓存数据需要更新。
[0006]进一步的,通过预设的工作线程,向数据库发送信息获取请求的步骤,包括:如果工作线程不处于中断状态,控制工作线程休眠预设时间;如果到达预设时间后,工作线程未被中断,向数据库发送信息获取请求。
[0007]进一步的,目标缓存配置信息包括:目标数据对应的目标更新类的全限定类名;基于目标缓存配置信息,从预先配置的更新类中,确定目标数据对应的目标更新类的步骤,包括:根据目标更新类的全限定类名,从预先配置的更新类中,确定目标更新类。
[0008]进一步的,根据目标更新类的全限定类名,从预先配置的更新类中,确定目标更新类的步骤,包括:根据目标更新类的全限定类名,获取目标更新类的class对象;根据class
对象,从预先配置的更新类中,获取目标更新类的bean对象;其中,bean对象为未知类型的子类对象;基于bean对象和预先设置的更新类的父类,确定目标更新类。
[0009]进一步的,更新类的父类具有更新缓存中缓存数据的功能;基于bean对象和预先设置的更新类的父类,确定目标更新类的步骤,包括:如果bean对象为更新类的父类的子类,将bean对象转换为更新类的父类的引用对象,以使转换后的bean对象继承更新缓存中的缓存数据的功能;将转换后的bean对象确定为目标更新类。
[0010]进一步的,基于目标更新类,从数据库中获取目标数据,根据目标数据更新缓存中的目标缓存数据的步骤,包括:调用目标更新类中的更新方法,从数据库中获取目标数据,将目标数据处理为指定格式;将缓存中的目标缓存数据更新为指定格式的目标数据。
[0011]进一步的,基于目标更新类,从数据库中获取目标数据,根据目标数据更新缓存中的目标缓存数据的步骤之后,方法还包括:生成目标缓存数据的更新结果,将更新结果更新至缓存配置表。其中,更新结果至少包括:目标缓存数据的更新字段,更新字段为第二标识,第二标识指示:目标缓存数据不需要更新。
[0012]第二方面,本专利技术实施例提供了一种缓存数据的更新装置,该装置包括:获取模块,用于从预先配置的缓存更新配置表中,获取目标缓存配置信息;其中,目标缓存配置信息用于指示:数据库中的目标数据发生修改,以及缓存中目标数据对应的目标缓存数据需要更新;确定模块,用于基于目标缓存配置信息,从预先配置的更新类中,确定目标数据对应的目标更新类;其中,更新类用于更新缓存中的缓存数据;更新模块,用于基于目标更新类,从数据库中获取目标数据,根据目标数据更新缓存中的目标缓存数据。
[0013]第三方面,本专利技术实施例提供了一种电子设备,包括处理器和存储器,存储器存储有能够被处理器执行的计算机可执行指令,处理器执行计算机可执行指令以实现第一方面任一项的缓存数据的更新方法。
[0014]第四方面,本专利技术实施例提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机可执行指令,计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现第一方面任一项的缓存数据的更新方法。
[0015]本专利技术实施例带来了以下有益效果:
[0016]本专利技术提供了一种缓存数据的更新方法、装置和电子设备,从预先配置的缓存更新配置表中,获取目标缓存配置信息;其中的目标缓存配置信息用于指示数据库中的目标数据发生修改,缓存中目标数据对应的目标缓存数据需要更新;基于目标缓存配置信息,从预先配置的更新类中,确定目标数据对应的目标更新类;基于目标更新类,从数据库中获取目标数据,根据目标数据更新缓存中的目标缓存数据。该方式中,根据缓存更新配置表中缓存配置信息,能够在数据库中的数据发生修改时,获取需要更新的缓存数据对应的缓存配置信息,根据该缓存配置信息和用于更新缓存中缓存数据的更新类,按需实时更新缓存中缓存数据,避免了重新启动程序,提高了对外服务的稳定性。
[0017]本专利技术的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本专利技术而了解。本专利技术的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
[0018]为使本专利技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
[0019]为了更清楚地说明本专利技术具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施方式,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0020]图1为本专利技术实施例提供的一种缓存数据的更新方法的流程图;
[0021]图2为本专利技术实施例提供的另一种缓存数据的更新方法的流程图;
[0022]图3为本专利技术实施例提供的一种缓存数据的更新装置的结构示意图;
[0023]图4为本专利技术实施例提供的一种电子设备的结构示意图。
具体实施方式
[0024]为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术的技本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种缓存数据的更新方法,其特征在于,所述方法包括:从预先配置的缓存更新配置表中,获取目标缓存配置信息;其中,所述目标缓存配置信息用于指示:数据库中的目标数据发生修改,以及缓存中所述目标数据对应的目标缓存数据需要更新;基于所述目标缓存配置信息,从预先配置的更新类中,确定所述目标数据对应的目标更新类;其中,所述更新类用于更新缓存中的缓存数据;基于所述目标更新类,从所述数据库中获取所述目标数据,根据所述目标数据更新所述缓存中的目标缓存数据。2.根据权利要求1所述的方法,其特征在于,从预先配置的缓存更新配置表中,获取目标缓存配置信息的步骤,包括:通过预设的工作线程,向所述数据库发送信息获取请求,获取所述缓存配置表中的缓存配置信息;其中,每个所述缓存配置信息均包括有对应的缓存数据的更新字段;所述工作线程为守护线程;从所述缓存配置信息中,遍历所述更新字段为第一标识的目标缓存配置信息;其中,所述更新字段为第一标识用于指示:所述目标缓存数据需要更新。3.根据权利要求2所述的方法,其特征在于,通过预设的工作线程,向所述数据库发送信息获取请求的步骤,包括:如果所述工作线程不处于中断状态,控制所述工作线程休眠预设时间;如果到达所述预设时间后,所述工作线程未被中断,向所述数据库发送信息获取请求。4.根据权利要求1所述的方法,其特征在于,所述目标缓存配置信息包括:所述目标数据对应的目标更新类的全限定类名;基于所述目标缓存配置信息,从预先配置的更新类中,确定所述目标数据对应的目标更新类的步骤,包括:根据所述目标更新类的全限定类名,从所述预先配置的更新类中,确定所述目标更新类。5.根据权利要求4所述的方法,其特征在于,根据所述目标更新类的全限定类名,从所述预先配置的更新类中,确定所述目标更新类的步骤,包括:根据所述目标更新类的全限定类名,获取所述目标更新类的class对象;根据所述class对象,从预先配置的所述更新类中,获取所述目标更新类的bean对象;其中,所述bean对象为未知类型的子类对象;基于所述bean对象和预先设置的更新类的父类,确定所述目标更新类。6.根据权利要求5所述的方法,其特征在于,所述更新类的父类具有更新缓存中缓存数据的功能;基于所述bean对象和预先设置的更新...

【专利技术属性】
技术研发人员:蔡子辉
申请(专利权)人:网易杭州网络有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1