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

数据缓存处理方法、装置、缓存网格平台和存储介质与流程

2022-02-21 08:12:55 来源:中国专利 TAG:
数据缓存处理方法、装置、缓存网格平台和存储介质与流程

本申请涉及数据处理领域,尤其是涉及一种数据缓存处理方法、数据缓存处理装置、缓存网格平台和存储介质。

背景技术

随着互联网技术的飞速发展,服务网格(Service Mesh)是一个用于处理服务到服务相互通信的专用基础设施层,它负责通过包含现代云原生应用的复杂服务拓扑来安全可靠地传递请求。服务网格技术作为微服务和云原生架构的基础技术和架构模式正变得越来越流行。服务网格主要是网络基础设施组件,它使企业可以从基于微服务的应用程序中卸掉网络通信逻辑,以便企业可以完全专注于服务的业务逻辑;同时,为了提高服务访问速度,企业为每一服务提供了业务缓存功能。

相关技术在服务开发过程中,业务缓存逻辑与业务逻辑耦合在服务代码中,使得业务缓存逻辑的实现和业务服务绑定,进而实现服务的业务缓存功能。然而,该方法至少存在代码开发复杂和维护工作量增加的问题。



技术实现要素:

本申请实施例期望提供一种数据缓存处理方法、数据缓存处理装置、缓存网格平台和存储介质,以解决相关技术中至少存在代码开发复杂和维护工作量增加的问题。

本申请实施例的技术方案是这样实现的:

第一方面,本申请实施例提供一种数据缓存处理方法,所述方法包括:

通过目标服务的第一缓存代理,接收至少一个请求服务的第二缓存代理发送的业务请求信息,其中,所述业务请求信息包括统一资源定位符;

确定所述统一资源定位符对应的目标请求接口,若所述目标请求接口配置的目标缓存处理进程处于启用状态,调用所述目标缓存处理进程,对所述业务请求信息所请求的缓存数据库中的请求数据进行处理。

第二方面,本申请实施例提供一种数据缓存处理装置,所述装置包括:

接收模块,用于通过目标服务的第一缓存代理,接收至少一个请求服务的第二缓存代理发送的业务请求信息,其中,业务请求信息包括统一资源定位符;

确定模块,用于确定统一资源定位符对应的目标请求接口;

处理模块,用于若目标请求接口配置的目标缓存处理进程处于启用状态,调用目标缓存处理进程,对业务请求信息所请求的缓存数据库中的请求数据进行处理。

第三方面,本申请实施例提供一种缓存网格平台,所述缓存网格平台包括:缓存管理中心、缓存网格和缓存数据库;所述缓存管理中心包括信息管理模块和信息同步模块;

其中,所述信息管理模块用于为请求接口配置接口配置信息,以及所述请求接口对应的缓存处理进程配置缓存配置信息;

所述信息同步模块,用于将所述接口配置信息和所述缓存配置信息下发并同步到所述缓存网格包括的各个服务的缓存代理中;

所述缓存网格包括多个服务和所述多个服务中每一服务对应的缓存代理,其中,多个缓存代理包括第一缓存代理和第二缓存代理;

所述第一缓存代理用于接收至少一个请求服务的第二缓存代理发送的业务请求信息,其中,所述业务请求信息包括统一资源定位符;

确定所述统一资源定位符对应的目标请求接口,若所述目标请求接口配置的目标缓存处理进程处于启用状态,通过所述第一缓存代理调用所述目标缓存处理进程,对所述业务请求信息所请求的缓存数据库中的请求数据进行处理;

所述缓存数据库,用于存储所述业务请求信息所请求的请求数据。

第四方面,本申请实施例提供一种存储介质,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述的数据缓存处理方法的步骤。

应用本申请实施例实现以下有益效果:实现了通过缓存加快数据的访问速度,以减轻后端应用和数据存储的负载压力,改善系统的性能,提高数据的读取数度,降低了存储的访问压力,同时,减少了代码开发的工作量和维护系统平台工作量。

因为通过目标服务的第一缓存代理,接收至少一个请求服务的第二缓存代理发送的业务请求信息,其中,业务请求信息包括统一资源定位符;确定统一资源定位符对应的目标请求接口,若目标请求接口配置的目标缓存处理进程处于启用状态,通过第一缓存代理调用目标缓存处理进程,对业务请求信息所请求的缓存数据库中的请求数据进行处理;如此,通过对目标请求接口配置目标缓存处理进程处于启用状态,通过第一缓存代理调用目标缓存处理进程,对业务请求信息所请求的缓存数据库中的请求数据进行处理,实现了通过缓存加快数据的访问速度,以减轻后端应用和数据存储的负载压力,改善系统的性能,提高数据的读取数度,降低了存储的访问压力,同时,减少了代码开发的工作量和维护系统平台工作量。

附图说明

图1为本申请实施例提供的数据缓存处理方法的一个可选的流程示意图;

图2为本申请实施例提供的数据缓存处理方法的一个可选的流程示意图;

图3为本申请实施例提供的缓存网格平台一种可选的架构示意图;

图4为本申请实施例提供的缓存网格平台一种可选的结构框图;

图5为本申请实施例提供的数据缓存处理方法的一个可选的流程示意图;

图6为本申请实施例提供的数据缓存处理方法的一个可选的流程示意图;

图7为本申请实施例提供的数据缓存处理方法的一个可选的流程示意图;

图8为本申请实施例提供的数据缓存处理方法的一个可选的流程示意图;

图9为本申请实施例提供的数据缓存处理装置的一个可选的结构示意图;

图10为本申请实施例提供的缓存网格平台的一个可选的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。

应理解,说明书通篇中提到的“本申请实施例”或“前述实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“本申请实施例中”或“在前述实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中应用。在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。

本申请实施例提供了一种数据缓存处理方法,应用于缓存网格平台,参照图1所示,该方法包括以下步骤:

步骤101、通过目标服务的第一缓存代理,接收至少一个请求服务的第二缓存代理发送的业务请求信息。

其中,业务请求信息包括统一资源定位符。

本申请实施例中,缓存代理可以理解成缓存网格平台为每一服务部署节点上针对微服务进程引入的代理,使得缓存代理和微服务进程绑定部署。其中,缓存代理用于拦截服务所有的业务请求信息,缓存代理还用于转发服务所有的业务请求信息。这里,缓存代理又称缓存边车(side car)代理,服务又称微服务。

本申请实施例中,缓存代理包括网络代理,网络代理用于负责微服务环境下的服务注册、服务发现、和服务治理等基本网络通信功能,使微服务本身不再关注网络通讯的基础能力。

本申请实施例中,第一缓存代理为用于接收业务请求信息的代理,第二缓存代理为用于发送业务请求信息的代理,且发送业务请求信息的第二缓存代理可以为多个,且第一缓存代理和多个第二缓存代理之间通过组网连接构成缓存网格平台中的网状通信网格。这里,第一缓存代理以及第一缓存代理对应的服务,和至少一个第一缓存代理以及第一缓存代理对应服务构成缓存网格,缓存网格平台包括缓存网格(Cache Mesh)。

本申请实施例中,业务请求信息为至少一个请求服务从目标服务中获取与业务关联的请求数据的请求信息。业务请求信息中包括统一资源定位符,统一资源定位符(Uniform Resource Locator,URL)是因特网的万维网服务程序上用于指定信息位置的表示方法。

本申请实施例中,缓存网格平台通过目标服务的第一缓存代理,接收至少一个请求服务的第二缓存代理发送的业务请求信息,且通过第二缓存代理对业务请求信息进行解析,得到业务请求信息中包括的统一资源定位符,以使第一缓存代理根据统一资源定位符进行处理。

在一种可实现的应用场景中,本申请在构建缓存网格平台的过程中,以服务网格作为缓存网格平台中的微服务技术架构的基础设施层,如此,使得缓存网格平台中的网络通信等功能更加灵活、更加可靠和更加快速。

步骤102、确定统一资源定位符对应的目标请求接口,若目标请求接口配置的目标缓存处理进程处于启用状态,通过第一缓存代理调用目标缓存处理进程,对业务请求信息所请求的缓存数据库中的请求数据进行处理。

本申请实施例中,每一服务对外提供有多个请求接口,且缓存网格平台中的缓存管理中心为每一请求接口配置有对应的接口配置信息和缓存配置信息。需要说明的是,接口配置信息包括对请求接口配置的缓存处理进程的使用状态;其中,缓存处理进程的使用状态包括启用状态和禁用状态。

本申请实施例中,缓存数据库是以键值对(key-value)的形式存储数据的数据库,其中,缓存数据库又称缓存存储集群。

本申请实施例中,缓存网格平台通过目标服务的第一缓存代理,接收至少一个请求服务的第二缓存代理发送的业务请求信息的情况下,通过第一缓存代理,获取业务请求信息中包括的统一资源定位符,并基于统一资源定位符确定统一资源定位符对应的目标请求接口。进一步地,通过第一缓存代理获取缓存网格平台中的缓存管理中心为目标请求接口配置的目标接口配置信息,且目标接口配置信息中包括对目标请求接口配置的目标缓存处理进程的使用状态处于启用状态,通过第一缓存代理调用目标缓存处理进程,以使目标缓存处理进程对业务请求信息所请求的缓存数据库中的请求数据进行处理。

本申请实施例提供一种数据缓存处理方法,通过目标服务的第一缓存代理,接收至少一个请求服务的第二缓存代理发送的业务请求信息,其中,业务请求信息包括统一资源定位符;确定统一资源定位符对应的目标请求接口,若目标请求接口配置的目标缓存处理进程处于启用状态,通过第一缓存代理调用目标缓存处理进程,对业务请求信息所请求的缓存数据库中的请求数据进行处理;如此,通过对目标请求接口配置目标缓存处理进程处于启用状态,通过第一缓存代理调用目标缓存处理进程,对业务请求信息所请求的缓存数据库中的请求数据进行处理,实现了通过缓存加快数据的访问速度,以减轻后端应用和数据存储的负载压力,改善系统的性能,提高数据的读取数度,降低了存储的访问压力,同时,减少了代码开发的工作量和维护系统平台工作量。

本申请实施例提供了一种数据缓存处理方法,应用于缓存网格平台,参照图2所示,该方法包括以下步骤:

步骤201、通过目标服务的第一缓存代理,接收至少一个请求服务的第二缓存代理发送的业务请求信息。

其中,业务请求信息包括统一资源定位符。

步骤202、解析统一资源定位符,确定统一资源地址采用的传输协议和对应的接口路径。

本申请实施例中,传输协议是浏览器和万维网服务器之间互相通信的规则,通过因特网传送万维网文档的数据传送协议。传输协议包括传输协议类型和传输协议中所请求的方法;这里,传输协议类型包括超文本传输协议(Hypertext transfer protocol,http),安全超文本传输协议(Secure Hypertext transfer protocol,https)和实时传输协议(Real-time Transport Protocol,RTP);传输协议类型还包括传输控制协议(Transmission Control Protocol,TCP)和远程过程调用(Remote Procedure Call,RPC);传输协议中所请求的方法包括GET请求方法、POST请求方法、PUT请求方法以及DELETE请求方法;其中,GET用于获取或查询数据资源信息,POST用于更新数据资源信息,PUT用于增加数据资源信息,DELETE用于删除数据资源信息。需要说明的是,对于传输协议,本申请不做具体限制。

本申请实施例中,接口路径是缓存网格平台为服务提供的接口的位置信息。

本申请实施例中,缓存网格平台中的缓存管理中心为每一请求接口配置有对应的接口配置信息和缓存配置信息,其中,接口配置信息包括接口标识(Identity document,ID)、服务标识(服务ID)、接口名称、传输协议、接口路径、元数据配置规则、缓存处理进程的使用状态、以及缓存事件类型。缓存配置信息包括序号,接口标识、缓存事件类型、缓存服务标识、业务主键构建规则、以及租户标识(tenantid)。需要说明的是,接口配置信息和缓存配置信息之间一一对应。示例性的,如表1所示,

本申请实施例中,缓存网格平台的缓存管理中心通过为每一请求接口配置有对应的接口配置信息和缓存配置信息,以实现缓存逻辑与业务服务逻辑解耦的目的,进而实现每一请求接口的缓存能力、每一请求接口的部署完全独立,对于业务服务而言完全透明、无感知,让业务服务开发不再关注缓存相关逻辑,进而加快数据的访问速度,以减轻后端应用和数据存储的负载压力,改善系统的性能,提高数据的读取数度,降低了存储的访问压力;同时,实现了在不停止服务进程的情况下,可以在缓存管理中心中动态地对业务的接口配置信息和缓存配置信息进行更新操作。

本申请其他实施例中,参照图3和图4所示,图3示出的是本申请实施例提供的缓存网格平台一种可选的架构示意图,图4示出的是本申请实施例提供的缓存网格平台一种可选的结构框图。其中,缓存网格平台4包括缓存管理中心41,缓存网格42和缓存数据库43,其中,缓存数据库43又称缓存存储集群。

上述缓存管理中心41是一个中心化的缓存管理服务,实现对缓存网格的整体管理和配置。缓存管理中心41包括缓存遥测处理模块411、信息管理模块412、信息同步模块413、缓存统计监控模块414、以及节点部署管理模块415。其中,缓存遥测处理模块411用于根据缓存代理上传的各自服务系统的运行情况、心跳等遥测数据进行统一监控和管理,以便根据遥测数据,确定每个缓存节点的通信状态,进而基于每个缓存节点的通信状态,对每一请求接口对应的服务的缓存处理进程的使用状态进行控制,从而保证服务的运行能力。信息管理模块412用于管理为每一服务的请求接口配置接口配置信息,以及请求接口对应的缓存处理进程配置缓存配置信息。信息同步模块413用于将接口配置信息和缓存配置信息下发并同步到缓存网格42包括的各个服务的缓存代理。缓存统计监控模块414用于对缓存的数据信息进行监控。节点部署管理模块415用于对缓存网格中的节点进行部署和管理。

上述缓存网格42中包括多个服务(又称微服务)和多个服务中每一服务对应的缓存代理,其中,多个缓存代理包括第一缓存代理和第二缓存代理。每个服务所在的服务节点采用缓存代理的部署方式,将缓存代理和微服务进程绑定部署,其中,缓存代理用于接收微服务进程的所有网络请求,缓存代理中的网络代理负责微服务环境下的服务注册、服务发现、和服务治理等基本网络通信功能,使微服务本身不再关注网络通讯的基础能力。此外,缓存网格在每一服务的缓存代理中增加了为请求接口配置的接口配置信息和缓存配置信息。缓存代理通过接口配置信息和缓存配置信息对请求业务信息进行判断,若请求业务信息命中缓存数据库中的请求数据,则在服务无感知的情况下,缓存代理直接返回请求数据,即不再请求微服务。

需要说明的是,在微服务架构下,服务节点很多,每个缓存代理中都有每一请求接口的接口配置信息和缓存配置信息。其中,缓存代理中每一请求接口的接口配置信息和缓存配置信息,还可以通过如下三种方式得到:

方式一:在服务节点部署启动时,缓存代理根据部署的服务ID或应用ID从缓存配置中心拉取相应的接口配置信息和缓存配置信息,完成本服务节点的缓存配置的初始化加载。

方式二:缓存代理可以根据服务ID或应用ID每间隔固定时长访问缓存配置中心,以拉取最新的接口配置信息和缓存配置信息。

方式三:缓存配置中心每次对接口配置信息和缓存配置信息进行更新后,根据服务ID或应用ID、服务网际互连协议(Internet Protocol,IP)等信息为缓存代理推送最新的接口配置信息和缓存配置信息。如此,确保配置信息的管理和下发是通过中心化的缓存管理中心来实现,当缓存管理中心中的接口配置信息和/或缓存配置信息存在变动时,无需重启缓存代理,缓存代理可以从缓存管理中心拉取最新的接口配置信息和缓存配置信息,来完成动态配置和动态更新。此外,缓存代理还会将各自服务系统运行的情况、心跳等遥测数据上报给缓存管理中心进行统一的管理和监控。

上述缓存数据库43又称缓存存储集群,缓存存储集群作为缓存网格的缓存存储层,每个服务节点的缓存代理中都有缓存存储的适配接口,通过接口实现对缓存存储集群中的缓存数据的操作。

本申请实施例中,缓存网格平台通过目标服务的第一缓存代理,接收至少一个请求服务的第二缓存代理发送的业务请求信息,解析业务请求信息中的统一资源定位符,确定统一资源地址采用的传输协议和对应的接口路径。

本申请其他实施例中,缓存网格平台在每个缓存代理的服务中都内嵌了一个WebAssembly引擎,并在缓存代理内部定义了通用扩展应用程序接口(Application Programming Interface,API)来和其交互。缓存管理中心可以针对缓存代理进行缓存处理的各个环境进行动态编码扩展,理论上支持所有开发语言,最终将开发语言以WASM字节码的方式下发到缓存代理的服务中,通过WASM引擎可以在不停止服务的情况下,实现动态切换代码逻辑,保证了缓存能力高效、动态、灵活、可配置的前提下,实现了对多开发语言、跨技术栈的微服务场景支持,并且可实现在不重启服务的情况下完成缓存功能的动态配置,使得缓存功能真正成为了一种通用的基础设施能力,使缓存能力对于业务逻辑完全透明、无感知,大大降低服务缓存功能的开发、部署和维护成本。

这里,WebAssembly(WASM)是一种前端的技术,用于解决前端脚本语言的性能问题,WASM是一种字节码标准,WASM技术可以通过WASM引擎(功能与JAVA虚拟机类似)执行语言编译的字节码,编译成跨CPU架构的机器码,以实现跨平台的能力。

步骤203、确定与传输协议和接口路径匹配的目标请求接口。

本申请实施例中,缓存网格平台通过第一缓存代理,确定与传输协议和接口路径匹配的目标请求接口。

步骤204、获取缓存管理中心为目标请求接口配置的目标接口配置信息。

本申请实施例中,目标接口配置信息为缓存管理中心为目标请求接口所配置的接口信息。目标接口配置信息包括但不限于接口名称、传输协议、接口路径、元数据配置规则和缓存处理进程的使用状态。

步骤205、若基于目标接口配置信息,确定目标请求接口配置的目标缓存处理进程处于启用状态,获取缓存管理中心为目标缓存处理进程配置的目标缓存配置信息。

本申请实施例中,目标缓存配置信息为缓存管理中心为目标缓存处理进程所配置的缓存信息。目标缓存配置信息包括但不限于接口标识、缓存事件类型、缓存服务标识、以及业务主键构建规则。

本申请实施例中,若缓存管理平台基于目标接口配置信息,确定目标请求接口配置的目标缓存处理进程的使用状态处于启用状态,获取缓存管理中心为目标缓存处理进程配置的目标缓存配置信息。

步骤206、基于目标接口配置信息和目标缓存配置信息,通过第一缓存代理调用目标缓存处理进程,对业务请求信息所请求的缓存数据库中的请求数据进行处理。

本申请实施例中,参照图5所示,步骤206基于目标接口配置信息和目标缓存配置信息,通过第一缓存代理调用目标缓存处理进程,对业务请求信息所请求的缓存数据库中的请求数据进行处理,可以通过如下步骤实现:

步骤2061、获取缓存管理中心为目标请求接口配置的元数据配置规则,以及为目标缓存处理进程配置的业务主键构建规则。

其中,目标接口配置信息包括元数据配置规则,目标缓存配置信息包括业务主键构建规则。

本申请实施例中,元数据配置规则是为提取业务请求信息中包括的业务数据而设置的规则。这里,业务数据若以表单的格式进行传递,元数据配置规则中包括提取以表单格式传递的业务数据的规则;若业务数据包括在统一资源定位符中进行传递,元数据配置规则中包括提取在统一资源定位符中传递的业务数据的规则。示例性的,业务请求信息中业务数据包括在统一资源定位符中进行传递的格式可以为http/GET/api/CacheMesh/test?orderid=123,其中,业务数据为orderid=123。

本申请实施例中,业务主键构建规则用于构建业务主键设置的规则,示例性的,业务主键构建规则可以为key_ #id。其中,key表示业务,id表示业务对应的待操作对象的对象标识。

本申请实施例中,缓存网格平台中的缓存管理中心为目标请求接口配置有对应的目标接口配置信息和目标缓存配置信息,且目标接口配置信息中包括元数据配置规则,目标缓存配置信息中包括业务主键构建规则。此时,缓存网格平台获取缓存管理中心为目标请求接口配置的目标接口配置信息中的元数据配置规则,以及获取为目标缓存处理进程配置的目标缓存配置信息中的业务主键构建规则。

步骤2062、按照元数据配置规则,从业务请求信息中提取业务元数据。

步骤2063、按照业务主键构建规则,构建业务元数据的业务主键。

本申请实施例中,缓存网格平台通过第一缓存代理获取缓存管理中心为目标请求接口配置的元数据配置规则,以及为目标缓存处理进程配置的业务主键构建规则之后,缓存网格平台通过第一缓存代理按照元数据配置规则,从业务请求信息中提取业务元数据,按照业务主键构建规则,构建业务元数据的业务主键。

在一种可实现的应用场景中,以业务请求信息中包括的业务数据在统一资源定位符中进行传递为例,http/GET/api/CacheMesh/test?orderid=123,为用于查询id=123的订单;http/GET/api/CacheMesh/test?productid=123,为用于查询id=123的商品。此时,缓存网格平台通过第一缓存代理,按照元数据配置规则,从业务请求信息中提取业务元数据,得到订单业务的业务元数据为orderid=123,商品业务的业务元数据为productid=123;进一步地,缓存网格平台通过第一缓存代理,,按照业务主键规则,构建订单业务对应的业务元数据的业务主键为order_ #123,构建商品业务对应的业务元数据的业务主键为product_ #123。

步骤2064、通过第一缓存代理调用目标缓存处理进程,基于业务主键,对缓存数据库中的请求数据进行处理。

本申请实施例中,基于业务主键对缓存数据库中的请求数据进行处理包括:基于业务主键,对缓存数据库中的请求数据进行查询处理,或者对缓存数据库中的请求数据进行删除处理。

本申请实施例中,步骤2064通过第一缓存代理调用目标缓存处理进程,基于业务主键,对缓存数据库中的请求数据进行处理,可以通过如下两种方式实现:

方式一:若缓存管理中心为目标缓存处理进程配置的缓存事件类型为缓存写入类型,通过第一缓存代理调用目标缓存处理进程,从缓存数据库中查找与业务主键对应的请求数据。

其中,目标缓存配置信息包括缓存事件类型。

本申请实施例中,缓存写入类型可以表示为Cacheable。

本申请实施例中,若缓存管理中心为目标缓存处理进程配置的缓存事件类型为缓存写入类型,通过第一缓存代理调用目标缓存处理进程,从缓存数据库中查找到与业务主键对应的请求数据,即缓存命中;同时,第一缓存代理向第二缓存代理发送针对业务请求信息的请求数据;如此,第一缓存代理通过业务主键请求命中缓存数据库中的缓存数据,则直接获取缓存数据库中针对业务请求信息的请求数据,不再请求目标服务,即目标服务无感知,同时,对缓存数据库中的缓存数据的缓存命中率越高,缓存的利用率也就越高。

方式二:若缓存管理中心为目标缓存处理进程配置的缓存事件类型为缓存清理类型,通过第一缓存代理调用目标缓存处理进程,从缓存数据库中删除与业务主键对应的请求数据。

本申请实施例中,缓存清理类型可以表示为CacheEvict。

本申请实施例中,参照图6所示,步骤2064通过第一缓存代理调用目标缓存处理进程,基于业务主键,对缓存数据库中的请求数据进行处理,可以通过如下步骤实现:

步骤A1、若通过第一缓存代理调用目标缓存处理进程,从缓存数据库中未查找到与业务主键对应的请求数据,通过第一缓存代理向目标服务发送第一调用请求。

其中,第一调用请求用于请求调用目标服务,从关系型数据库中查找业务主键对应的请求数据。

本申请实施例中,缓存数据库的优先级高于关系型数据库的优先级。

本申请实施例中,缓存网格平台通过第一缓存代理确定业务元数据的业务主键之后,首先通过第一缓存代理调用目标缓存处理进程,从优先级高的缓存数据库中查找与业务主键对应的请求数据,若从缓存数据库中未查找到与业务主键对应的请求数据,则通过第一缓存代理向目标服务发送,用于请求调用目标服务,以使目标服务从关系型数据中查找与业务主键对应的请求数据的第一调用请求。

步骤A2、接收目标服务针对第一调用请求反馈的请求数据。

本申请实施例中,缓存网格平台通过第一缓存代理向目标服务发送第一调用请求之后,目标服务基于第一调用请求从关系型数据中查找与业务主键对应的请求数据,并将针对第一调用请求获取的请求数据发送给第一缓存代理;缓存网格平台通过第一缓存代理接收目标服务针对第一调用请求反馈的请求数据,同时,第一缓存代理向第二缓存代理发送针对业务请求信息的请求数据。

步骤A3、将请求数据发送至缓存数据库,以存储请求数据至缓存数据库中。

本申请实施例中,缓存网格平台通过第一缓存代理接收目标服务针对第一调用请求反馈的请求数据之后,将请求数据发送至缓存数据库,以存储请求数据至缓存数据库中。

由上述可知,本申请通过对每一请求接口设置接口配置信息和缓存配置信息,进而基于接口配置信息中的传输协议、接口路径、元数据配置规则、目标缓存处理进程的使用状态和缓存事件类型,以及缓存配置信息中的业务主键构建规则,获取针对业务请求信息中的业务主键;并基于业务主键先从优先级高的缓存数据库中查找与业务主键对应的请求数据;若缓存数据库中未查找与业务主键对应的请求数据,才会进一步请求调用目标服务,使得目标服务从关系型数据库中查找与业务主键对应的请求数据。如此,实现了先通过缓存加快数据的访问速度,以减轻后端应用和数据存储的负载压力,改善系统的性能,提高数据的读取数度,降低了存储的访问压力,同时,让有限的资源服务更多的用户;进一步地,实现了在不停止服务进程的情况下,可以在缓存管理中心中动态地对业务的接口配置信息和缓存配置信息进行更新操作。

本申请实施例提供了一种数据缓存处理方法,应用于缓存网格平台,参照图7所示,该方法包括以下步骤:

步骤301、通过目标服务的第一缓存代理,接收至少一个请求服务的第二缓存代理发送的业务请求信息。

其中,业务请求信息包括统一资源定位符。

步骤302、解析统一资源定位符,确定统一资源地址采用的传输协议和对应的接口路径。

步骤303、确定与传输协议和接口路径匹配的目标请求接口。

步骤304、获取缓存管理中心为目标请求接口配置的目标接口配置信息。

步骤305、若基于目标接口配置信息,确定目标请求接口配置的目标缓存处理进程处于禁用状态,通过第一缓存代理向目标服务发送第二调用请求。

其中,第二调用请求用于请求调用目标服务,从关系型数据库中查找业务请求信息对应的请求数据。

步骤306、接收目标服务针对第二调用请求反馈的请求数据。

本申请实施例中,缓存网格平台通过第一缓存代理接收至少一个请求服务的第二缓存代理发送的业务请求信息,解析业务请求信息包括的统一资源定位符,确定统一资源地址采用的传输协议和对应的接口路径;进一步地,若目标请求接口配置的目标缓存处理进程处于禁用状态,通过第一缓存代理向目标服务发送第二调用请求;然后,目标服务基于第二调用请求从关系型数据中查找与业务请求信息对应的请求数据,并将针对第二调用请求获取的请求数据发送给第一缓存代理,通过第一缓存代理向第二缓存代理发送针对业务请求信息的请求数据。如此,实现了当目标请求接口配置的目标缓存处理进程处于禁用状态,无法从缓存数据库中获取缓存数据时,缓存网格平台通过第一缓存代理向目标服务发送第二调用请求,使得目标服务从关系型数据库中查找业务请求信息对应的请求数据。

本申请实施例提供了一种数据缓存处理方法,应用于缓存网格平台,参照图8所示,该方法包括以下步骤401至步骤404;或步骤401至步骤403,以及步骤405至步骤408;或步骤401至步骤403、步骤405至步骤407,以及步骤409;或步骤401至步骤403、步骤405,以及步骤410:

步骤401、通过目标服务的第一缓存代理,接收至少一个请求服务的第二缓存代理发送的业务请求信息。

其中,业务请求信息包括统一资源定位符。

步骤402、解析统一资源定位符,确定统一资源地址采用的传输协议和对应的接口路径,确定与传输协议和接口路径匹配的目标请求接口。

步骤403、判断缓存管理中心是否对目标请求接口配置有目标接口配置信息。

本申请实施例中,若缓存网格平台通过第一缓存代理,确定缓存管理中心未对目标请求接口配置有目标接口配置信息,则执行步骤404;若确定缓存管理中心对目标请求接口配置有目标接口配置信息,则执行步骤405。

步骤404、通过第一缓存代理向目标服务发送第二调用请求,接收目标服务针对第二调用请求反馈的请求数据。

其中,第二调用请求用于请求调用目标服务,从关系型数据库中查找业务请求信息对应的请求数据。

步骤405、若基于目标接口配置信息,确定目标请求接口配置的目标缓存处理进程处于启用状态,获取缓存管理中心为目标缓存处理进程配置的目标缓存配置信息,基于目标缓存配置信息,确定缓存管理中心为目标缓存处理进程配置的缓存事件类型。

其中,目标缓存配置信息中包括缓存事件类型。

步骤406、若缓存管理中心为目标缓存处理进程配置的缓存事件类型为缓存写入类型,获取目标接口配置信息中的元数据配置规则,以及目标缓存配置信息中的业务主键构建规则;按照元数据配置规则,从业务请求信息中提取业务元数据;按照业务主键构建规则,构建业务元数据的业务主键。

其中,目标接口配置信息包括元数据配置规则,目标缓存配置信息包括业务主键构建规则。

步骤407、通过第一缓存代理调用目标缓存处理进程,判断缓存数据库中针对业务主键的请求数据是否存在。

本申请实施例中,若缓存网格平台通过第一缓存代理,调用目标缓存处理进程,确定缓存数据库中针对业务主键的请求数据存在,则执行步骤408;若缓存网格平台通过第一缓存代理,调用目标缓存处理进程,确定缓存数据库中针对业务主键的请求数据不存在,则执行步骤409。

步骤408、从缓存数据库中查找与业务主键对应的请求数据,并向第二缓存代理发送针对业务请求信息的请求数据。

步骤409、通过第一缓存代理向目标服务发送第一调用请求,并接收目标服务针对第一调用请求反馈的请求数据。

其中,第一调用请求用于请求调用目标服务,从关系型数据库中查找业务主键对应的请求数据。

步骤410、若缓存管理中心为目标缓存处理进程配置的缓存事件类型为缓存清理类型,获取目标接口配置信息中的元数据配置规则,以及目标缓存配置信息中的业务主键构建规则;按照元数据配置规则,从业务请求信息中提取业务元数据;按照业务主键构建规则,构建业务元数据的业务主键,调用目标缓存处理进程,从缓存数据库中删除与业务主键对应的请求数据。

其中,目标接口配置信息包括元数据配置规则,目标缓存配置信息包括业务主键构建规则。

由上述可知,本申请实现了先通过缓存加快数据的访问速度,以减轻后端应用和数据存储的负载压力,改善系统的性能,提高数据的读取数度,降低了存储的访问压力,同时,让有限的资源服务更多的用户;进一步地,实现了在不停止服务进程的情况下,可以在缓存管理中心中动态地对业务的接口配置信息和缓存配置信息进行更新操作。

需要说明的是,本实施例中与其它实施例中相同步骤和相同内容的说明,可以参照其它实施例中的描述,此处不再赘述。

本申请实施例提供一种数据缓存处理装置,该数据缓存处理装置可以应用于图1~图2、图5~图7对应的实施例提供的一种数据缓存处理方法中,参照图9所示,该数据缓存处理装置9包括:

接收模块901,用于通过目标服务的第一缓存代理,接收至少一个请求服务的第二缓存代理发送的业务请求信息,其中,业务请求信息包括统一资源定位符;

确定模块902,用于确定统一资源定位符对应的目标请求接口;

处理模块903,用于若目标请求接口配置的目标缓存处理进程处于启用状态,通过第一缓存代理调用目标缓存处理进程,对业务请求信息所请求的缓存数据库中的请求数据进行处理。

本申请其他实施例中,数据缓存处理装置9还包括获取模块,获取模块,用于获取缓存管理中心为目标请求接口配置的目标接口配置信息;若基于目标接口配置信息,确定目标请求接口配置的目标缓存处理进程处于启用状态,获取缓存管理中心为目标缓存处理进程配置的目标缓存配置信息;处理模块903,还用于基于目标接口配置信息和目标缓存配置信息,通过第一缓存代理调用目标缓存处理进程,对业务请求信息所请求的缓存数据库中的请求数据进行处理。

本申请其他实施例中,获取模块,还用于获取缓存管理中心为目标请求接口配置的元数据配置规则,以及为目标缓存处理进程配置的业务主键构建规则,其中,目标接口配置信息包括元数据配置规则,目标缓存配置信息包括业务主键构建规则;按照元数据配置规则,从业务请求信息中提取业务元数据;按照业务主键构建规则,构建业务元数据的业务主键;通过第一缓存代理调用目标缓存处理进程,基于业务主键,对缓存数据库中的请求数据进行处理。

本申请其他实施例中,处理模块903,还用于若缓存管理中心为目标缓存处理进程配置的缓存事件类型为缓存写入类型,通过第一缓存代理调用目标缓存处理进程,从缓存数据库中查找与业务主键对应的请求数据,其中,目标缓存配置信息包括缓存事件类型。

本申请其他实施例中,处理模块903,还用于若缓存管理中心为目标缓存处理进程配置的缓存事件类型为缓存清理类型,通过第一缓存代理调用目标缓存处理进程,从缓存数据库中删除与业务主键对应的请求数据。

本申请其他实施例中,处理模块903,还用于若通过第一缓存代理调用目标缓存处理进程,从缓存数据库中未查找到与业务主键对应的请求数据,通过第一缓存代理向目标服务发送第一调用请求;其中,第一调用请求用于请求调用目标服务,从关系型数据库中查找业务主键对应的请求数据;接收模块901,还用于接收目标服务针对第一调用请求反馈的请求数据;发送模块,用于将请求数据发送至缓存数据库,以存储请求数据至缓存数据库中。

本申请其他实施例中,处理模块903,还用于若基于目标接口配置信息,确定目标请求接口配置的目标缓存处理进程处于禁用状态,通过第一缓存代理向目标服务发送第二调用请求,其中,第二调用请求用于请求调用目标服务,从关系型数据库中查找业务请求信息对应的请求数据;接收模块901,还用于接收目标服务针对第二调用请求反馈的请求数据。

本申请其他实施例中,处理模块903,还用于解析统一资源定位符,确定统一资源地址采用的传输协议和对应的接口路径;确定模块902,还用于确定与传输协议和接口路径匹配的目标请求接口。

本申请实施例提供一种缓存网格平台,该缓存网格平台可以用于实施图1~图2、图5~图7对应的实施例提供的一种数据缓存处理方法,参照图10所示,该缓存网格平台4包括:缓存管理中心41、缓存网格42和缓存数据库43;所述缓存管理中心41包括信息管理模块411和信息同步模块412;

其中,所述信息管理模块411用于为请求接口配置接口配置信息,以及所述请求接口对应的缓存处理进程配置缓存配置信息;所述信息同步模块412,用于将所述接口配置信息和所述缓存配置信息下发并同步到所述缓存网格包括的各个服务的缓存代理中;

所述缓存网格42包括多个服务和所述多个服务中每一服务对应的缓存代理,其中,多个缓存代理包括第一缓存代理和第二缓存代理;

所述第一缓存代理用于接收至少一个请求服务的第二缓存代理发送的业务请求信息,其中,业务请求信息包括统一资源定位符;

确定统一资源定位符对应的目标请求接口,若目标请求接口配置的目标缓存处理进程处于启用状态,通过第一缓存代理调用目标缓存处理进程,对业务请求信息所请求的缓存数据库中的请求数据进行处理;

所述缓存数据库,用于存储所述业务请求信息所请求的请求数据。

基于前述实施例,本申请的实施例提供一种计算机存储介质,该计算机存储介质存储有一个或者多个程序,该一个或者多个程序可被一个或者多个处理器执行,以实现如下步骤:

通过目标服务的第一缓存代理,接收至少一个请求服务的第二缓存代理发送的业务请求信息,其中,业务请求信息包括统一资源定位符;

确定统一资源定位符对应的目标请求接口,若目标请求接口配置的目标缓存处理进程处于启用状态,通过第一缓存代理调用目标缓存处理进程,对业务请求信息所请求的缓存数据库中的请求数据进行处理。

在本申请的其他实施例中,该一个或者多个程序可被一个或者多个处理器执行,还可以实现以下步骤:

获取缓存管理中心为目标请求接口配置的目标接口配置信息;若基于目标接口配置信息,确定目标请求接口配置的目标缓存处理进程处于启用状态,获取缓存管理中心为目标缓存处理进程配置的目标缓存配置信息;基于目标接口配置信息和目标缓存配置信息,通过第一缓存代理调用目标缓存处理进程,对业务请求信息所请求的缓存数据库中的请求数据进行处理。

在本申请的其他实施例中,该一个或者多个程序可被一个或者多个处理器执行,还可以实现以下步骤:

获取缓存管理中心为目标请求接口配置的元数据配置规则,以及为目标缓存处理进程配置的业务主键构建规则,其中,目标接口配置信息包括元数据配置规则,目标缓存配置信息包括业务主键构建规则;按照元数据配置规则,从业务请求信息中提取业务元数据;按照业务主键构建规则,构建业务元数据的业务主键;通过第一缓存代理调用目标缓存处理进程,基于业务主键,对缓存数据库中的请求数据进行处理。

在本申请的其他实施例中,该一个或者多个程序可被一个或者多个处理器执行,还可以实现以下步骤:

若缓存管理中心为目标缓存处理进程配置的缓存事件类型为缓存写入类型,通过第一缓存代理调用目标缓存处理进程,从缓存数据库中查找与业务主键对应的请求数据,其中,目标缓存配置信息包括缓存事件类型。

在本申请的其他实施例中,该一个或者多个程序可被一个或者多个处理器执行,还可以实现以下步骤:

若缓存管理中心为目标缓存处理进程配置的缓存事件类型为缓存清理类型,通过第一缓存代理调用目标缓存处理进程,从缓存数据库中删除与业务主键对应的请求数据。

在本申请的其他实施例中,该一个或者多个程序可被一个或者多个处理器执行,还可以实现以下步骤:

若通过第一缓存代理调用目标缓存处理进程,从缓存数据库中未查找到与业务主键对应的请求数据,通过第一缓存代理向目标服务发送第一调用请求;其中,第一调用请求用于请求调用目标服务,从关系型数据库中查找业务主键对应的请求数据;接收目标服务针对第一调用请求反馈的请求数据;将请求数据发送至缓存数据库,以存储请求数据至缓存数据库中。

在本申请的其他实施例中,该一个或者多个程序可被一个或者多个处理器执行,还可以实现以下步骤:

若基于目标接口配置信息,确定目标请求接口配置的目标缓存处理进程处于禁用状态,通过第一缓存代理向目标服务发送第二调用请求,其中,第二调用请求用于请求调用目标服务,从关系型数据库中查找业务请求信息对应的请求数据;接收目标服务针对第二调用请求反馈的请求数据。

在本申请的其他实施例中,该一个或者多个程序可被一个或者多个处理器执行,还可以实现以下步骤:

解析统一资源定位符,确定统一资源地址采用的传输协议和对应的接口路径;确定与传输协议和接口路径匹配的目标请求接口。

需要说明的是,上述计算机存储介质/存储器可以是只读存储器(Read Only Memory,ROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性随机存取存储器(Ferromagnetic Random Access Memory,FRAM)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(Compact Disc Read-Only Memory,CD-ROM)等存储器;也可以是包括上述存储器之一或任意组合的各种终端,如移动电话、计算机、平板设备、个人数字助理等。

在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。

上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。

另外,在本申请各实施例中的各功能单元可以全部集成在一个处理模块中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

本申请所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

再多了解一些

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

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

相关文献