缓存数据处理方法、装置、电子设备和存储介质制造方法及图纸

技术编号:35156755 阅读:30 留言:0更新日期:2022-10-05 10:40
本申请公开缓存数据处理方法、装置、电子设备和存储介质,方法包括创建并管理多个缓存实例;从服务端获取缓存实例的更新的缓存数据;在从服务端获取所述更新的缓存数据时,将相应的缓存实例记录的数据状态更改为正在获取,并在相应的缓存实例中记录要获取其缓存数据的新的第二数据依赖方且阻止所述第二数据依赖方获取正在更新的缓存数据;在从服务端获取了更新的缓存数据后,将所述相应的缓存实例记录的数据状态更改为获取完成,并向已记录的所有数据依赖方推送所述更新的缓存数据。本申请有助于减少网络交互,节省带宽,从而减少用户等待时间,提高WEB应用软件的使用体验,减轻服务器端访问压力。服务器端访问压力。服务器端访问压力。

【技术实现步骤摘要】
缓存数据处理方法、装置、电子设备和存储介质


[0001]本申请涉及互联网
,具体涉及一种缓存数据处理方法、装置、电子设备和计算机可读存储介质。

技术介绍

[0002]随着互联网技术的发展,浏览器/服务器(B/S)架构被广泛应用于WEB平台。浏览器/服务器(B/S)架构能将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。用户可以借助终端的浏览器通过网络访问服务器以执行或实现基于B/S架构的应用软件的功能。相应地,B/S架构可能存在大量用户并发访问给网络连接或服务器带来过载等问题,造成用户使用体验下降。为此,向用户提供快速响应的和丰富的交互式体验变得重要。一种解决方案是在用户终端提供浏览器数据缓存。
[0003]在当前浏览器数据缓存技术中,浏览器数据缓存的获取或更新往往是通过用户侧的浏览器端的不同模块根据规定机制主动访问服务器而获取更新的缓存数据。或者,某些浏览器数据缓存技术增加了访问前的询问机制来进行更新,这变相增加了网络交互次数。例如中国专利CN101997927B提出,客户端模块在根据规定机制获取或更新缓存数据之前,将本地的数据版本信息与从服务器端获取的版本信息进行比对,并且基于版本信息比对结果来决定是否获取或更新缓存数据。
[0004]然而,在这些方案中,数据缓存的获取或更新均是在相应的浏览器模块请求下进行的,同样需要该数据缓存的其他浏览器模块无法得到更新后的缓存数据。
[0005]以上说明仅为了描述本领域的相关技术,不视作对现有技术的承认。

技术实现思路

[0006]因此,希望提供一种适用于B/S架构的浏览器数据缓存的处理方案,其允许在浏览器获取的最新浏览器缓存数据能全面且及时地与该缓存数据的所有数据依赖方共享。
[0007]在第一方面,提供一种应用于WEB浏览器端的缓存数据处理方法,所述缓存数据处理方法可包括:创建并管理多个缓存实例,各缓存实例关联各自的缓存数据并记录其缓存数据的任何已有的第一数据依赖方及其缓存数据的数据状态,在创建所述多个缓存实例时将各缓存实例的数据状态设置为未使用;从服务端获取缓存实例的更新的缓存数据;在从服务端获取所述更新的缓存数据时,将相应的缓存实例记录的数据状态更改为正在获取,并在相应的缓存实例中记录要获取其缓存数据的新的第二数据依赖方且阻止所述第二数据依赖方获取正在更新的缓存数据;在从服务端获取了更新的缓存数据后,将所述相应的缓存实例记录的数据状态更改为获取完成,并向已记录的所有数据依赖方推送所述更新的缓存数据。
[0008]可选地,各缓存实例还记录与其缓存数据变更相关联的服务端接口。
[0009]可选地,所述缓存数据处理方法还包括:监听各缓存实例记录的服务端接口。
[0010]可选地,从服务端获取缓存实例的更新的缓存数据,包括:响应于服务端接口的预定操作被触发,从服务端获取记录有被触发服务端接口的缓存实例所关联的更新的缓存数据。
[0011]可选地,所述缓存数据处理方法还可包括:响应于第三数据依赖方访问缓存实例,确定第三数据依赖方访问的缓存实例是否记录有第一数据依赖方和/或访问的缓存实例的数据状态;若记录的第一数据依赖方为空和/或数据状态为未使用,从服务端获取所述访问的缓存实例的更新的缓存数据。
[0012]可选地,若记录的第一数据依赖方不为空和/或数据状态为获取完成,在所述访问的缓存实例记录所述第三数据依赖方并允许所述第三数据依赖方获取所述访问的缓存实例的缓存数据。
[0013]可选地,创建并管理多个缓存实例,包括:在创建所述多个缓存实例时为各缓存实例设置缓存初始值作为初始关联的缓存数据;其中,若记录的第一数据依赖方为空和/或数据状态为未使用,立即向所述第三数据依赖方返回所述缓存初始值。
[0014]可选地,创建并管理多个缓存实例,包括:设置缓存管理器;由缓存管理器创建并管理所述多个缓存实例,并在所述缓存管理器中注册所述多个缓存实例各自的缓存编号,其中,数据依赖方能凭借所述缓存编号访问相应的缓存数据。
[0015]可选地,浏览器具有多个窗口或页面。
[0016]可选地,创建并管理多个缓存实例,包括:设置多个缓存管理器,每个所述窗口或页面配设各自的一个缓存管理器,由每个缓存管理器分别创建并管理各自的多个缓存实例。
[0017]可选地,所述缓存数据处理方法还包括:监听所述多个窗口或页面及其缓存管理器;当其中至少一个缓存管理器管理的缓存实例的缓存数据更新时,触发管理相同的缓存实例的其他缓存管理器执行从服务端获取所述相同的缓存实例的更新的缓存数据的步骤。
[0018]可选地,创建并管理多个缓存实例,包括:设置多个缓存管理器,每个所述窗口或页面配设有各自的一个缓存管理器,所述多个缓存管理器包括主缓存管理器和其他的虚假缓存管理器,每个虚假缓存管理器均关联调用所述主缓存管理器;由所述主缓存管理器创建并管理所有缓存实例,所述虚假缓存管理器不创建缓存实例。
[0019]在第二方面,提供一种应用于WEB浏览器端的缓存数据处理装置,所述缓存数据处理装置可包括:缓存管理器,配置成创建并管理多个缓存实例,各缓存实例关联各自的缓存数据并记录其缓存数据的任何已有的第一数据依赖方及其缓存数据的数据状态,在创建所述多个缓存实例时将各缓存实例的数据状态设置为未使用;
更新单元,配置成从服务端获取缓存实例的更新的缓存数据;锁定单元,配置成在从服务端获取所述更新的缓存数据时,将相应的缓存实例记录的数据状态更改为正在获取,并在相应的缓存实例中记录要获取其缓存数据的新的第二数据依赖方且阻止所述第二数据依赖方获取正在更新的缓存数据;推送单元,配置成在从服务端获取了更新的缓存数据后,将所述相应的缓存实例记录的数据状态更改为获取完成,并向已记录的所有数据依赖方推送所述更新的缓存数据。
[0020]在第三方面,提供一种电子设备,其可包括:处理器和存储有计算机程序的存储器,所述处理器被配置为在运行计算机程序时执行本申请任一实施例所述的方法。
[0021]在第四方面,提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序配置成被运行时执行本申请任一实施例所述的方法。
[0022]在本申请实施例的应用于WEB浏览器端的缓存数据处理方法,一方面创建并管理多个缓存实例用于关联不同的缓存数据,另一方面在这些缓存实例中记录缓存数据的已有数据依赖方;另外,在从服务端获取更新的缓存数据时,在相应的缓存实例中记录要获取其缓存数据的新的数据依赖方,并且阻止新的数据依赖方在此时获取正在更新的缓存数据;更进一步地,在从服务端获取了更新的缓存数据后,向已记录的所有数据依赖方推送更新的缓存数据。这样的方案能够允许在浏览器获取的最新浏览器缓存数据能全面且及时地与该缓存数据的所有数据依赖方共享,从而避免在在B/S架构下的浏览器端数据缓存受限于服务器端无法主动推送数据,从而无法使得浏览器的模块及时更新缓存数据,这有助于减少网络交互,节省带宽,从而减少用户等待本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种缓存数据处理方法,应用于WEB浏览器端,其特征在于,所述缓存数据处理方法包括:创建并管理多个缓存实例,各缓存实例关联各自的缓存数据并记录其缓存数据的任何已有的第一数据依赖方及其缓存数据的数据状态,在创建所述多个缓存实例时将各缓存实例的数据状态设置为未使用;从服务端获取缓存实例的更新的缓存数据;在从服务端获取所述更新的缓存数据时,将相应的缓存实例记录的数据状态更改为正在获取,并在相应的缓存实例中记录要获取其缓存数据的新的第二数据依赖方且阻止所述第二数据依赖方获取正在更新的缓存数据;在从服务端获取了更新的缓存数据后,将所述相应的缓存实例记录的数据状态更改为获取完成,并向已记录的所有数据依赖方推送所述更新的缓存数据。2.根据权利要求1所述的缓存数据处理方法,其特征在于,各缓存实例还记录与其缓存数据变更相关联的服务端接口;所述缓存数据处理方法还包括:监听各缓存实例记录的服务端接口;从服务端获取缓存实例的更新的缓存数据,包括:响应于服务端接口的预定操作被触发,从服务端获取记录有被触发服务端接口的缓存实例所关联的更新的缓存数据。3.根据权利要求1或2所述的缓存数据处理方法,其特征在于,还包括:响应于第三数据依赖方访问缓存实例,确定第三数据依赖方访问的缓存实例是否记录有第一数据依赖方和/或访问的缓存实例的数据状态;若记录的第一数据依赖方为空和/或数据状态为未使用,从服务端获取所述访问的缓存实例的更新的缓存数据,若记录的第一数据依赖方不为空和/或数据状态为获取完成,在所述访问的缓存实例记录所述第三数据依赖方并允许所述第三数据依赖方获取所述访问的缓存实例的缓存数据。4.根据权利要求3所述的缓存数据处理方法,其特征在于,创建并管理多个缓存实例,包括:在创建所述多个缓存实例时为各缓存实例设置缓存初始值作为初始关联的缓存数据;其中,若记录的第一数据依赖方为空和/或数据状态为未使用,立即向所述第三数据依赖方返回所述缓存初始值。5.根据权利要求1或2所述的缓存数据处理方法,其特征在于,创建并管理多个缓存实例,包括:设置缓存管理器;由缓存管理器创建并管理所述多个缓存实例,并在所述缓存管理器中注册所述多个缓存实例各自的缓存编号,其中,数据依赖方能...

【专利技术属性】
技术研发人员:李俊王云龙程鹏辉
申请(专利权)人:百融至信北京征信有限公司
类型:发明
国别省市:

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

1