CN115934765A - 微服务***间的数据共享方法、装置及电子设备 - Google Patents
微服务***间的数据共享方法、装置及电子设备 Download PDFInfo
- Publication number
- CN115934765A CN115934765A CN202211242321.3A CN202211242321A CN115934765A CN 115934765 A CN115934765 A CN 115934765A CN 202211242321 A CN202211242321 A CN 202211242321A CN 115934765 A CN115934765 A CN 115934765A
- Authority
- CN
- China
- Prior art keywords
- cache configuration
- data
- service system
- micro service
- configuration information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 79
- 230000008859 change Effects 0.000 claims description 36
- 238000012986 modification Methods 0.000 claims description 24
- 230000004048 modification Effects 0.000 claims description 24
- 238000012545 processing Methods 0.000 description 27
- 230000008569 process Effects 0.000 description 10
- 238000004590 computer program Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请关于一种微服务***间的数据共享方法、装置及电子设备,涉及分布式核心***技术领域,其中,该方法包括:获取缓存配置表;其中,缓存配置表包括针对至少一个微服务***的缓存配置信息;在缓存配置表中针对第一微服务***的目标缓存配置信息存在更新时,和/或,在第一微服务***中目标缓存配置信息对应的目标数据存在更新时,从第一微服务***的数据库表中获取待更新目标数据;根据待更新目标数据,对指定存储器中的数据进行更新处理,其中,指定存储器中存储缓存配置表中各个缓存配置信息对应的数据,以便至少一个微服务***直接进行调用,从而保证指定存储器与数据库表中数据一致,从而提高微服务***从指定存储器中获取的数据的准确性。
Description
技术领域
本申请涉及分布式核心***技术领域,尤其涉及一种微服务***间的数据共享方法、装置及电子设备。
背景技术
目前,集中式***发展为分布式***后,从应用到数据库均拆分成多个独立的微服务***,因为***边界的划分,无法直接查到原来可以直接通过数据库查询到的数据(例如,机构信息、币种信息等),需要通过微服务***获取。对于访问频率比较高的数据,且基本没有逻辑处理,通过微服务***获取,给提供数据的微服务***造成很大的压力,并且通过微服务***获取耗时较长。
发明内容
本申请提供一种微服务***间的数据共享方法、装置及电子设备,以至少在一定程度上解决相关技术中的技术问题之一。本申请的技术方案如下:
根据本申请实施例的第一方面,提供一种微服务***间的数据共享方法,应用于第一微服务***,包括:获取缓存配置表;其中,所述缓存配置表包括针对至少一个微服务***的缓存配置信息;在所述缓存配置表中针对所述第一微服务***的目标缓存配置信息存在更新时,和/或,在所述第一微服务***中所述目标缓存配置信息对应的目标数据存在更新时,从所述第一微服务***的数据库表中获取待更新目标数据;根据所述待更新目标数据,对指定存储器中的数据进行更新处理,其中,所述指定存储器中存储所述缓存配置表中各个缓存配置信息对应的数据,以便至少一个所述微服务***直接进行调用。
可选地,所述方法还包括:在所述第一微服务***初次启动时,根据所述第一微服务***的第一标识查询所述缓存配置表,获取针对所述第一微服务***的目标缓存配置信息;获取所述第一微服务***的数据库表中与所述目标缓存配置信息对应的目标数据;将所述目标缓存信息对应的目标数据缓存至所述指定存储器中。
可选地,所述获取所述第一微服务***的数据库表中与所述目标缓存配置信息对应的目标数据,包括:针对每个目标缓存配置信息,根据所述目标缓存配置信息中数据库表的第二标识,确定所述第一微服务***中与所述第二标识对应的目标数据库表;根据所述目标缓存配置信息中的数据查询条件查询所述目标数据库表,获取所述目标缓存配置信息对应的目标数据。
可选地,所述在所述缓存配置表中针对所述第一微服务***的目标缓存配置信息存在更新时,从所述第一微服务***的数据库表中获取待更新目标数据,包括:在所述缓存配置表中针对所述第一微服务***的目标缓存配置信息存在更新时,获取所述目标缓存配置信息中存在更新的第一缓存配置信息;将所述第一微服务***中所述第一缓存配置信息对应的目标数据,确定为所述待更新目标数据。
可选地,所述根据所述待更新目标数据,对指定存储器中的数据进行更新处理,包括:确定所述第一缓存配置信息的更新类型;在所述更新类型为修改类型时,获取所述指定存储器中第一缓存配置信息对应的变更前缓存配置信息;根据所述待更新目标数据,对所述指定存储器中所述变更前缓存配置信息对应的目标数据进行更新处理。
可选地,所述方法还包括:在所述更新类型为新增类型时,将所述待更新目标数据,添加到所述指定存储器中;在所述更新类型为删除类型时,对所述指定存储器中的所述待更新目标数据进行删除处理。
可选地,在根据所述待更新目标数据,对所述指定存储器中所述变更前缓存配置信息对应的目标数据进行更新处理之前,所述方法还包括:对所述指定存储器中所述变更前缓存配置信息对应的目标数据进行失效处理,并设置失效时间。
可选地,所述在所述第一微服务***中所述目标缓存配置信息对应的目标数据存在更新时,从所述第一微服务***的数据库表中获取待更新目标数据,包括:获取所述第一微服务***中对应的目标数据存在更新的第二缓存配置信息;将所述第一微服务***中所述第二缓存配置信息对应的目标数据,确定为所述待更新目标数据。
可选地,所述根据所述待更新目标数据,对指定存储器中的数据进行更新处理,包括:确定所述待更新数据的更新类型;在所述更新类型为修改类型时,获取所述指定存储器中所述第二缓存信息对应的目标数据,作为变更前数据;根据所述待更新数据对所述指定存储器中的所述变更前数据进行更新处理。
可选地,所述方法还包括:在所述更新类型为新增类型时,将所述待更新数据,添加到所述指定存储器中;在所述更新类型为删除类型时,对所述指定存储器中的所述待更新数据进行删除处理。
可选地,在根据所述待更新数据对所述指定存储器中的所述变更前数据进行更新处理之前,所述方法还包括:对所述指定存储器中的所述变更前数据进行失效处理,并设置失效时间。
可选地,所述方法还包括:向所述指定存储器发送查询请求,其中,所述查询请求包括数据查询条件以及待查询微服务***;在未获取到所述指定存储器中与所述数据查询条件对应的待查询数据时,确定所述待查询微服务***是否为所述第一微服务***;在所述待查询微服务***为所述第一微服务***时,根据所述数据查询条件查询所述第一微服务***的数据库表,获取所述待查询数据;在所述待查询微服务***不为所述第一微服务***时,调用所述待查询服务***,获取所述待查询服务***中与所述数据查询条件对应的待查询数据。
根据本申请实施例的第二方面,提供了一种微服务***间的数据共享装置,应用于第一微服务***,包括:第一获取模块,用于获取缓存配置表;其中,所述缓存配置表包括针对至少一个微服务***的缓存配置信息;第二获取模块,用于在所述缓存配置表中针对所述第一微服务***的目标缓存配置信息存在更新时,和/或,在所述第一微服务***中所述目标缓存配置信息对应的目标数据存在更新时,从所述第一微服务***的数据库表中获取待更新目标数据;第一更新模块,用于根据所述待更新目标数据,对指定存储器中的数据进行更新处理,其中,所述指定存储器中存储所述缓存配置表中各个缓存配置信息对应的数据,以便至少一个所述微服务***直接进行调用。
可选地,所述装置还包括:第三获取模块、第四获取模块和缓存模块;所述第三获取模块,用于在所述第一微服务***初次启动时,根据所述第一微服务***的第一标识查询所述缓存配置表,获取针对所述第一微服务***的目标缓存配置信息;所述第四获取模块,用于获取所述第一微服务***的数据库表中与所述目标缓存配置信息对应的目标数据;所述缓存模块,用于将所述目标缓存信息对应的目标数据缓存至所述指定存储器中。
可选地,所述第四获取模块具体用于,针对每个目标缓存配置信息,根据所述目标缓存配置信息中数据库表的第二标识,确定所述第一微服务***中与所述第二标识对应的目标数据库表;根据所述目标缓存配置信息中的数据查询条件查询所述目标数据库表,获取所述目标缓存配置信息对应的目标数据。
可选地,所述第二获取模块具体用于,在所述缓存配置表中针对所述第一微服务***的目标缓存配置信息存在更新时,获取所述目标缓存配置信息中存在更新的第一缓存配置信息;将所述第一微服务***中所述第一缓存配置信息对应的目标数据,确定为所述待更新目标数据。
可选地,所述第一更新模块具体用于,确定所述第一缓存配置信息的更新类型;在所述更新类型为修改类型时,获取所述指定存储器中所述第一缓存配置信息对应的变更前缓存配置信息;根据所述待更新目标数据,对所述指定存储器中所述变更前缓存配置信息对应的目标数据进行更新处理。
可选地,所述装置还包括:第一添加模块和第一删除模块;所述第一添加模块,用于在所述更新类型为新增类型时,将所述待更新目标数据,添加到所述指定存储器中;所述第一删除模块,用于在所述更新类型为删除类型时,对所述指定存储器中所述待更新目标数据进行删除处理。
可选地,所述装置还包括:第一失效模块,用于对所述指定存储器中所述变更前缓存配置信息对应的目标数据进行失效处理,并设置失效时间。
可选地,所述第二获取模块还用于,获取所述第一微服务***中对应的目标数据存在更新的第二缓存配置信息;将所述第一微服务***中所述第二缓存配置信息对应的目标数据,确定为所述待更新目标数据。
所述装置还包括:第一确定模块、第五获取模块和第二更新模块;所述第一确定模块,用于确定所述待更新数据的更新类型;所述第五获取模块,用于在所述更新类型为修改类型时,获取所述指定存储器中所述第二缓存信息对应的目标数据,作为变更前数据;所述第二更新模块,用于根据所述待更新数据对所述指定存储器中的所述变更前数据进行更新处理。
可选地,所述装置还包括:第二添加模块和第二删除模块;所述第二添加模块,用于在所述更新类型为新增类型时,将所述待更新数据,添加到所述指定存储器中;所述第二删除模块,用于在所述更新类型为删除类型时,对所述指定存储器中的所述待更新数据进行删除处理。
可选地,所述装置还包括:第二失效模块,用于对所述指定存储器中的所述变更前数据进行失效处理,并设置失效时间。
可选地,所述装置还包括:发送模块、第二确定模块、第一处理模块和第二处理模块;所述发送模块,用于向所述指定存储器发送查询请求,其中,所述查询请求包括数据查询条件以及待查询微服务***;所述第二确定模块,用于在未获取到所述指定存储器中与所述数据查询条件对应的待查询数据时,确定所述待查询微服务***是否为所述第一微服务***;所述第一处理模块,用于在所述待查询微服务***为所述第一微服务***时,根据所述数据查询条件查询所述第一微服务***的数据库表,获取所述待查询数据;所述第二处理模块,用于在所述待查询微服务***不为所述第一微服务***时,调用所述待查询服务***,获取所述待查询服务***中与所述数据查询条件对应的待查询数据。
根据本申请实施例的第三方面,提供一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如本申请第一方面实施例所述的微服务***间的数据共享方法。
根据本申请实施例的第四方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如本申请第一方面实施例所述的微服务***间的数据共享方法。
根据本申请实施例的第五方面,提供一种计算机程序产品,包括:计算机程序,所述计算机程序被处理器执行时实现如本申请第一方面实施例所述的微服务***间的数据共享方法。
本申请的实施例提供的技术方案至少带来以下有益效果:
通过获取缓存配置表;其中,缓存配置表包括针对至少一个微服务***的缓存配置信息;在缓存配置表中针对第一微服务***的目标缓存配置信息存在更新时,和/或,在第一微服务***中目标缓存配置信息对应的目标数据存在更新时,从所述第一微服务***的数据库表中获取待更新目标数据;根据待更新目标数据,对指定存储器中的数据进行更新处理,其中,指定存储器中存储缓存配置表中各个缓存配置信息对应的数据,以便至少一个微服务***直接进行调用,由此,在第一微服务***的目标缓存配置信息存在更新或者目标缓存配置信息对应的目标数据存在更新时,通过从数据库表中获取待更新目标数据,以对指定存储器中的数据进行更新处理,从而保证指定存储器与数据库表中数据一致,从而提高微服务***从指定存储器中获取的数据的准确性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理,并不构成对本申请的不当限定。
图1是本申请第一实施例所示出的微服务***间的数据共享方法的流程示意图;
图2是本申请第二实施例所示出的微服务***间的数据共享方法的流程示意图;
图3是本申请第三实施例所示出的微服务***间的数据共享方法的流程示意图;
图4为本申请第四实施例所示出微服务***间的数据共享方法的流程示意图;
图5为本申请第五实施例所示出微服务***间的数据共享方法的流程示意图;
图6是本申请第六实施例所示出的微服务***间的数据共享装置的结构示意图;
图7是本申请一示例性实施例所示出的电子设备的结构示意图。
具体实施方式
为了使本领域普通人员更好地理解本申请的技术方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
下面参考附图描述本申请实施例的微服务***间的数据共享方法、装置及电子设备。
图1是本申请第一实施例所示出的微服务***间的数据共享方法的流程示意图。
需要说明的是,在本申请实施例中,该微服务***间的数据共享方法的执行主体可以为微服务***间的数据共享装置,该微服务***间的数据共享装置可被配置于电子设备中,以使该电子设备可以执行微服务***间的数据共享功能。
其中,电子设备可以包括但不限于微服务***、服务器,微服务***之间、微服务***与服务器之间可以进行通信。
需要说明的是,提供共享数据(目标数据)的微服务***可以为多个,微服务***间的数据共享处理方法可以应用第一微服务***,第一微服务***为提供共享数据(目标数据)的多个微服务***中的一个微服务***,使用共享数据的微服务***可以与提供共享数据的微服务***进行通信,即可以与第一微服务***进行通信。
如图1所示,该微服务***间的数据共享方法可以包括以下步骤:
步骤101,获取缓存配置表;其中,缓存配置表包括针对至少一个微服务***的缓存配置信息。
需要说明的是,在获取缓存配置表之前,针对使用共享数据的微服务***对共享数据的需求,配置缓存配置表及缓存配置信息,其中,缓存配置表用于存放多个微服务***的缓存配置信息,配置完成的缓存配置表存储在多个微服务***中。
其中,缓存配置信息可以包括:缓存配置表的标识(ID)、数据库表的标识、数据库表结果字段、查询条件、是否唯一、是否开启缓存、微服务***的***标识等信息。
其中,缓存配置表的标识(ID),例如缓存配置表的编号、名称;数据库表的标识指的是与缓存配置信息对应的数据的来源数据库表的标识,例如数据库表的编号、表名;微服务***的***标识,例如***编号、***名称等,本申请实施例对此不做具体限定。
其中,微服务***例如可以为公共运营***、存款***、贷款***、核算***等***,可以根据实际需要进行设定,本申请实施例对此不作具体限定。
在本申请实施例中,获取缓存配置表的过程可以为,根据微服务***的***配置文件中配置的***标识进行查询,得到与该***标识对应的缓存配置表。
针对第一微服务***,可以根据第一微服务***的***配置文件中配置的***标识进行查询,得到与该***标识对应的缓存配置表。
步骤102,在缓存配置表中针对第一微服务***的目标缓存配置信息存在更新时,和/或,在第一微服务***中目标缓存配置信息对应的目标数据存在更新时,从第一微服务***的数据库表中获取待更新目标数据。
其中,第一微服务***例如可以为公共运营***、存款***、贷款***、核算***等***,本申请实施例对此不作具体限定。
其中,第一微服务***的目标缓存配置信息与缓存配置信息相同,可以参见缓存配置信息的相关描述,此处不在详细说明。
在一种实施方式中,在缓存配置表中针对第一微服务***的目标缓存配置信息存在更新的场景可以为,目标缓存配置信息存在修改、删除、新增。
其中,以目标缓存配置信息存在修改为例,目标缓存配置信息中某条缓存配置信息存在变化,例如查询条件变化,可以是人为进行查询条件的变化,如工作人员在终端上修改字段的描述,或者其他机器修改了字段的信息等,基于上述触发形式,以使缓存配置表所在电子设备响应于人为操作,或修改指令等执行上述步骤:从第一微服务***的数据库表中获取待更新目标数据;以目标缓存配置信息存在删除为例,目标缓存配置信息中删除了某个缓存配置信息;以目标缓存配置信息存在新增为例,目标缓存配置信息中新增了一个缓存配置信息。通过删除来触发获取待更新目标数据就不再赘述了。
在另一种实施方式中,在第一微服务***中目标缓存配置信息对应的目标数据存在更新,即数据库表中对应的目标数据存在更新,对应的场景可以为,以数据库表为币种表为例,币种表中包括美元和人民币,由于业务需求,需要增加英镑,则需更新数据库表中对应的目标数据。通过更新目标数据来触发获取待更新目标数据就不再赘述了。
在本申请实施例中,在存在更新的场景下,根据存在更新的缓存配置信息,查询数据库表,从数据库表中获取待更新目标数据。
在本申请实施例中,提供共享数据的微服务***(例如,第一微服务***)提供共享数据操作方法SDK(Software Development Kit,软件开发工具包),SDK中包含操作缓存数据的各种方法,例如,共享数据查询方法,共享数据维护方法。
其中,共享数据维护方法供提供共享数据的微服务***使用,共享数据维护方法,例如从第一微服务***的数据库表中获取待更新目标数据的方法,具体执行过程可以采用本申请的各实施例中的任一种方式实现,本申请实施例并不对此作出限定。
其中,共享数据查询方法供使用共享数据的微服务***使用,使用共享数据的微服务***可以集成SDK,调用SDK中的共享数据查询方法,获取共享数据(共享的目标数据)。
可选地,在使用共享数据的微服务***未获取到共享数据或者指定存储器不可用时,根据使用共享数据的微服务***的***配置文件中的***标识及数据查询条件中的***标识,确定使用共享数据的微服务***是否是提供共享数据的微服务***本身,若使用共享数据的微服务***是提供共享数据的微服务***本身,则直接查询自身的数据库表,获取共享数据;若使用共享数据的微服务***不是提供共享数据的微服务***本身,则调用提供共享数据的微服务***,获取共享数据。
步骤103,根据待更新目标数据,对指定存储器中的数据进行更新处理,其中,指定存储器中存储缓存配置表中各个缓存配置信息对应的数据,以便至少一个微服务***直接进行调用。
在本申请实施例中,待更新目标数据对应的更新场景,即缓存配置信息更新或者目标数据存在更新,确定缓存配置信息更新或者目标数据存在更新的更新类型,根据更新类型对指定存储器中的数据进行更新处理。
综上,通过获取缓存配置表;其中,缓存配置表包括针对至少一个微服务***的缓存配置信息;在缓存配置表中针对第一微服务***的目标缓存配置信息存在更新时,和/或,在第一微服务***中目标缓存配置信息对应的目标数据存在更新时,从第一微服务***的数据库表中获取待更新目标数据;根据待更新目标数据,对指定存储器中的数据进行更新处理,其中,指定存储器中存储缓存配置表中各个缓存配置信息对应的数据,以便至少一个微服务***直接进行调用,由此,在第一微服务***的目标缓存配置信息存在更新或者目标缓存配置信息对应的目标数据存在更新时,通过从数据库表中获取待更新目标数据,以对指定存储器中的数据进行更新处理,从而保证指定存储器与数据库表中数据一致,从而提高微服务***从指定存储器中获取的数据的准确性。
图2是本申请第二实施例所示出的微服务***间的数据共享方法的流程示意图。需要说明的是,本申请实施例的微服务***间的数据共享方法可应用于第一微服务***。
如图2所示,该微服务***间的数据共享方法可包括如下步骤:
步骤201,获取缓存配置表;其中,缓存配置表包括针对至少一个微服务***的缓存配置信息。
步骤202,在缓存配置表中针对第一微服务***的目标缓存配置信息存在更新时,和/或,在第一微服务***中目标缓存配置信息对应的目标数据存在更新时,从第一微服务***的数据库表中获取待更新目标数据。
步骤203,根据待更新目标数据,对指定存储器中的数据进行更新处理,其中,指定存储器中存储缓存配置表中各个缓存配置信息对应的数据,以便至少一个微服务***直接进行调用。
需要说明的是,步骤201、步骤202和步骤203的执行过程可以分别采用本申请的各实施例中的任一种方式实现,本申请实施例并不对此作出限定,也不再赘述。
步骤204,在第一微服务***初次启动时,根据第一微服务***的第一标识查询缓存配置表,获取针对第一微服务***的目标缓存配置信息。
其中,第一标识可以为第一微服务***的***名称、***编号,本申请实施例对此不作具体限定。
在本申请实施例中,第一微服务***的第一标识在第一微服务***的***配置文件中有配置,根据***配置文件中配置的第一标识进行查询,得到与第一标识对应的缓存配置表,获取缓存配置表中针对第一微服务***的目标缓存配置信息。
步骤205,获取第一微服务***的数据库表中与目标缓存配置信息对应的目标数据。
作为一种实施方式,第一微服务***执行步骤205的过程例如可以为,针对每个目标缓存配置信息,根据目标缓存配置信息中数据库表的第二标识,确定第一微服务***中与第二标识对应的目标数据库表;根据目标缓存配置信息中的数据查询条件查询目标数据库表,获取目标缓存配置信息对应的目标数据。
其中,数据查询条件可以包括目标缓存配置信息中的数据库表的表名、数据库表结果字段、查询条件等查询关键词;第二标识可以为数据库表的编号、表名,本申请实施例对此不作限定。
可选地,根据数据查询条件查询目标数据库表,获取目标缓存配置信息对应的目标数据的过程例如可以为,将目标缓存配置信息中数据库表的表名、数据库表结果字段、查询条件,根据SQL语法进行拼接得到SQL语句,根据SQL语句对目标数据库表进行查询,得到目标缓存配置信息对应的目标数据。
步骤206,将目标缓存信息对应的目标数据缓存至指定存储器中。
综上,通过获取缓存配置表;其中,缓存配置表包括针对至少一个微服务***的缓存配置信息;在缓存配置表中针对第一微服务***的目标缓存配置信息存在更新时,和/或,在第一微服务***中目标缓存配置信息对应的目标数据存在更新时,从第一微服务***的数据库表中获取待更新目标数据;根据待更新目标数据,对指定存储器中的数据进行更新处理,其中,指定存储器中存储缓存配置表中各个缓存配置信息对应的数据,以便至少一个微服务***直接进行调用;在第一微服务***初次启动时,根据第一微服务***的第一标识查询缓存配置表,获取针对第一微服务***的目标缓存配置信息;获取第一微服务***的数据库表中与目标缓存配置信息对应的目标数据;将目标缓存信息对应的目标数据缓存至指定存储器中,由此,在第一微服务***的目标缓存配置信息存在更新或者目标缓存配置信息对应的目标数据存在更新时,通过从数据库表中获取待更新目标数据,以对指定存储器中的数据进行更新处理,从而保证指定存储器与数据库表中数据一致,从而提高微服务***从指定存储器中获取的数据的准确性。
为了清楚地说明上述实施例,在缓存配置表中针对第一微服务***的目标缓存配置信息存在更新时,如何从第一微服务***的数据库表中获取待更新目标数据,即共享数据维护方法,本申请提出另一种微服务***间的数据共享方法。
图3是本申请第三实施例所示出的微服务***间的数据共享方法的流程示意图。需要说明的是,本申请实施例的微服务***间的数据共享方法可应用于第一微服务***。
如图3所示,该微服务***间的数据共享方法可包括如下步骤:
步骤301,获取缓存配置表;其中,缓存配置表包括针对至少一个微服务***的缓存配置信息。
需要说明的是,步骤301的执行过程可以分别采用本申请的各实施例中的任一种方式实现,本申请实施例并不对此作出限定,也不再赘述。
步骤302,在缓存配置表中针对第一微服务***的目标缓存配置信息存在更新时,获取目标缓存配置信息中存在更新的第一缓存配置信息。
其中,目标缓存配置信息存在更新可以为缓存配置表中新增了一个缓存配置信息,也可以为删除了一个缓存配置信息,或者某个缓存配置信息存在修改,例如查询条件变化。
在本申请实施例中,在一种实施方式中,若目标缓存配置信息存在更新为新增了一个缓存配置信息,则第一缓存配置信息为新增的缓存配置信息;在另一种实施方式中,若目标缓存配置信息存在更新为删除了一个缓存配置信息,则第一缓存配置信息为删除的缓存配置信息;在另一种实施方式中,若目标缓存配置信息存在更新为某个缓存配置信息存在修改,则第一缓存配置信息为存在修改的缓存配置信息。
步骤303,将第一微服务***中第一缓存配置信息对应的目标数据,确定为待更新目标数据。
在本申请实施例中,第一微服务***根据第一缓存配置信息查询数据库表,获取第一缓存配置信息对应的目标数据,将该目标数据确定为待更新目标数据。
步骤304,根据待更新目标数据,对指定存储器中的数据进行更新处理,其中,指定存储器中存储缓存配置表中各个缓存配置信息对应的数据,以便至少一个微服务***直接进行调用。
作为一种实施方式,第一微服务***确定第一缓存配置信息的更新类型;在更新类型为修改类型时,获取指定存储器中第一缓存配置信息对应的变更前缓存配置信息;根据待更新目标数据,对指定存储器中变更前缓存配置信息对应的目标数据进行更新处理。
可选地,在更新类型为新增类型时,将待更新目标数据,添加到指定存储器中;在更新类型为删除类型时,对指定存储器中的待更新目标数据进行删除处理。
因此,在第一缓存配置信息为存在修改的缓存配置信息时,第一微服务***指定存储器中第一缓存配置信息对应的变更前缓存配置信息,将指定存储器中变更前缓存配置信息对应的目标数据进行更新处理;在第一缓存配置信息为新增的缓存配置信息时,第一微服务***将第一缓存配置信息对应的目标数据,添加到指定存储器中;在第一缓存配置信息为删除的缓存配置信息时,第一微服务***对指定存储器中第一缓存配置信息对应的目标数据进行删除处理,以确保第一微服务***的数据库表的目标数据和指定存储器的数据一致,使得从指定存储器中读取的数据准确、可靠。
在一些实施例中,在步骤304之前,即在根据待更新数据,对指定存储器中的目标数据进行更新处理之前,第一微服务***对指定存储器中变更前缓存配置信息对应的目标数据进行失效处理,并设置失效时间。
其中,失效时间可以根据实际需要进行设定,本申请实施例对此不做限定。
因为,在对目标数据进行更新的过程中,若有对指定存储器中数据进行查询的查询请求,且未对指定存储器中变更前缓存配置信息对应的目标数据进行失效处理,则查询到的目标数据是变更前缓存配置信息对应的目标数据,导致查询结果是错误的。
因此,在更新指定存储器中变更前缓存配置信息对应的目标数据之前,对指定存储器中变更前缓存配置信息对应的目标数据进行失效处理,从而确保查询结果的正确性,另外,不对指定存储器中变更前缓存配置信息对应的目标数据进行删除,避免所有的查询请求全部换到数据库,减轻数据库表的访问压力。
综上,通过获取缓存配置表;其中,缓存配置表包括针对至少一个微服务***的缓存配置信息;在缓存配置表中针对第一微服务***的目标缓存配置信息存在更新时,获取目标缓存配置信息中存在更新的第一缓存配置信息;将第一微服务***中第一缓存配置信息对应的目标数据,确定为待更新目标数据;根据待更新目标数据,对指定存储器中的数据进行更新处理,其中,指定存储器中存储缓存配置表中各个缓存配置信息对应的数据,以便至少一个微服务***直接进行调用,由此,在第一微服务***的目标缓存配置信息存在更新或者目标缓存配置信息对应的目标数据存在更新时,通过从数据库表中获取待更新目标数据,以对指定存储器中的数据进行更新处理,从而保证指定存储器与数据库表中数据一致,从而提高微服务***从指定存储器中获取的数据的准确性。
为了清楚地说明上述实施例,在第一微服务***中目标缓存配置信息对应的目标数据存在更新时,如何从第一微服务***的数据库表中获取待更新目标数据,即共享数据维护方法,本申请提出另一种微服务***间的数据共享方法。
图4是本申请第四实施例所示出的微服务***间的数据共享方法的流程示意图。需要说明的是,本申请实施例的微服务***间的数据共享方法可应用于第一微服务***。
如图4所示,该微服务***间的数据共享方法可包括如下步骤:
步骤401,获取缓存配置表;其中,缓存配置表包括针对至少一个微服务***的缓存配置信息。
需要说明的是,步骤401的执行过程可以分别采用本申请的各实施例中的任一种方式实现,本申请实施例并不对此作出限定,也不再赘述。
步骤402,获取第一微服务***中对应的目标数据存在更新的第二缓存配置信息。
在本申请实施例中,在第一微服务***的数据库表中对应的目标数据存在更新时,获取存在更新的目标数据对应的第二缓存配置信息。
步骤403,将第一微服务***中第二缓存配置信息对应的目标数据,确定为待更新目标数据。
步骤404,根据待更新目标数据,对指定存储器中的数据进行更新处理,其中,指定存储器中存储缓存配置表中各个缓存配置信息对应的数据,以便至少一个微服务***直接进行调用。
作为一种实施方式,第一微服务***确定待更新数据的更新类型;在更新类型为修改类型时,获取指定存储器中第二缓存信息对应的目标数据,作为变更前数据;根据待更新数据对指定存储器中的变更前数据进行更新处理。
可选地,在更新类型为新增类型时,将待更新数据,添加到指定存储器中;在更新类型为删除类型时,对指定存储器中的待更新数据进行删除处理。
因此,在待更新目标数据为新增的数据时,第一微服务***可以直接将待更新目标数据,更新到指定存储器中;在待更新目标数据为删除的数据时,第一微服务***可以直接对指定存储器中待更新目标数据进行删除处理,以确保第一微服务***的数据库表的目标数据和指定存储器的数据一致,使得从指定存储器中读取的数据准确、可靠。
在本申请实施例中,在根据待更新数据对指定存储器中的变更前数据进行更新处理之前,第一微服务***对指定存储器中的变更前数据进行失效处理,并设置失效时间。
其中,失效时间可以根据实际需要进行设定,本申请对此不做限定。
因为,在对变更前数据进行更新的过程中,若有对指定存储器中数据进行查询的查询请求,且未对指定存储器中变更前数据进行失效处理,则查询到的是变更前数据,导致查询结果是错误的。
因此,在变更前数据进行更新处理之前,对指定存储器中变更前数据进行失效处理,从而确保查询结果的正确性,另外,不对指定存储器中变更前数据进行删除,避免所有的查询请求全部换到数据库表,减轻数据库表的访问压力。
综上,通过获取缓存配置表;其中,缓存配置表包括针对至少一个微服务***的缓存配置信息;获取第一微服务***中对应的目标数据存在更新的第二缓存配置信息;将第一微服务***中第二缓存配置信息对应的目标数据,确定为待更新目标数据;根据待更新目标数据,对指定存储器中的数据进行更新处理,其中,指定存储器中存储缓存配置表中各个缓存配置信息对应的数据,以便至少一个微服务***直接进行调用,由此,在第一微服务***的目标缓存配置信息存在更新或者目标缓存配置信息对应的目标数据存在更新时,通过从数据库表中获取待更新目标数据,以对指定存储器中的数据进行更新处理,从而保证指定存储器与数据库表中数据一致,从而提高微服务***从指定存储器中获取的数据的准确性。
图5是本申请第五实施例所示出的微服务***间的数据共享方法的流程示意图。需要说明的是,本申请实施例的微服务***间的数据共享方法可应用于第一微服务***。
如图5所示,该微服务***间的数据共享方法可包括如下步骤:
步骤501,获取缓存配置表;其中,缓存配置表包括针对至少一个微服务***的缓存配置信息。
步骤502,在缓存配置表中针对第一微服务***的目标缓存配置信息存在更新时,和/或,在第一微服务***中目标缓存配置信息对应的目标数据存在更新时,从第一微服务***的数据库表中获取待更新目标数据。
步骤503,根据待更新目标数据,对指定存储器中的数据进行更新处理,其中,指定存储器中存储缓存配置表中各个缓存配置信息对应的数据,以便至少一个微服务***直接进行调用。
需要说明的是,步骤501至503的执行过程可以分别采用本申请的各实施例中的任一种方式实现,本申请实施例并不对此作出限定,也不再赘述。
步骤504,向指定存储器发送查询请求,其中,查询请求包括数据查询条件以及待查询微服务***。
其中,数据查询条件可以包括目标缓存配置信息中数据库表的表名、数据库表结果字段、查询条件等查询关键词;第二标识可以为数据库表的编号、表名,本申请实施例对此不作限定。
可选地,向指定存储器发送查询请求,以便指定存储器根据查询请求中数据查询条件,确定数据库表的表名、数据库表结果字段、查询条件等查询关键词,根据SQL语法将数据库表的表名、数据库表结果字段、查询条件进行拼接,得到SQL语句,根据SQL语句对指定存储器进行查询,得到查询结果,以根据查询结果,确定是否获取到指定存储器中与数据查询条件对应的待查询数据。
步骤505,在未获取到指定存储器中与数据查询条件对应的待查询数据时,确定待查询微服务***是否为第一微服务***。
在一种实施方式中,未获取到待查询数据可以是指定存储器中不存在待查询数据;在另一种实施方式中,未获取到待查询数据可以是指定存储器不可用,返回错误指示。
在一些实施例中,数据查询条件中可以包括***标识,第一微服务***可以将***配置文件中的***标识和数据查询条件中的***标识进行比较,若***标识一致,则说明待查询微服务***为第一微服务***;若***标识不一致,则说明待查询微服务***不是第一微服务***。
步骤506,在待查询微服务***为第一微服务***时,根据数据查询条件查询第一微服务***的数据库表,获取待查询数据。
在本申请实施例中,在待查询微服务***为第一微服务***时,说明第一微服务***为待查询数据的提供者,即待查询数据的使用者为提供者本身。
可选地,待查询数据位于第一微服务***的数据库表中,第一微服务***可以直接查询自身的数据库表,获取待查询数据。
步骤507,在待查询微服务***不为第一微服务***时,调用待查询服务***,获取待查询服务***中与数据查询条件对应的待查询数据。
在本申请实施例中,在待查询微服务***不为第一微服务***时,待查询数据的使用者不是数据提供者本身,例如待查询微服务***可以为第二微服务***,提供待查询数据,第一微服务***无法直接查询第二微服务***的数据库表,可以调用第二微服务***,获取待查询数据。
综上,通过获取缓存配置表;其中,缓存配置表包括针对至少一个微服务***的缓存配置信息;在缓存配置表中针对第一微服务***的目标缓存配置信息存在更新时,和/或,在第一微服务***中目标缓存配置信息对应的目标数据存在更新时,从第一微服务***的数据库表中获取待更新目标数据;根据待更新目标数据,对指定存储器中的数据进行更新处理,其中,指定存储器中存储缓存配置表中各个缓存配置信息对应的数据,以便至少一个微服务***直接进行调用;向指定存储器发送查询请求,其中,查询请求包括数据查询条件以及待查询微服务***;在未获取到指定存储器中与数据查询条件对应的待查询数据时,确定待查询微服务***是否为第一微服务***;在待查询微服务***为第一微服务***时,根据数据查询条件查询第一微服务***的数据库表,获取待查询数据;在待查询微服务***不为第一微服务***时,调用待查询服务***,获取待查询服务***中与数据查询条件对应的待查询数据,由此,在第一微服务***的目标缓存配置信息存在更新或者目标缓存配置信息对应的目标数据存在更新时,通过从数据库表中获取待更新目标数据,以对指定存储器中的数据进行更新处理,从而保证指定存储器与数据库表中数据一致,从而提高微服务***从指定存储器中获取的数据的准确性。另外,在待查询微服务***不为第一微服务***时,调用第二微服务***,获取待查询数据,从而保证服务的高可用。
为了更加清楚地说明上述实施例,现举例进行说明。
举例而言,首先根据对缓存数据(目标数据)的需求,可以配置缓存配置表及缓存配置信息,缓存配置表用于存放多个微服务***的缓存配置信息,配置完成的缓存配置表存储在多个微服务***中,缓存配置信息可以包括:缓存配置信息对应的数据的来源数据库表的标识、数据库表结果字段、查询条件、是否唯一、微服务***的***标识等信息,在第一微服务***初次启动时,根据第一微服务***的***配置文件中的***标识(第一标识)进行查询,得到与该***标识对应的缓存配置表,获取针对第一微服务***的目标缓存配置信息,根据目标缓存配置信息中数据库表的标识(第二标识),确定对应的目标数据库表,将目标缓存配置信息中数据库表的表名、数据库表结果字段、查询条件进行拼接,得到SQL语句,根据SQL语句查询目标数据库表,获取目标缓存配置信息对应的目标数据(SQL语句执行结果),将目标数据缓存至指定存储器(缓存服务)中。
在缓存配置表中针对第一微服务***的目标缓存配置信息存在更新时,获取目标缓存配置信息中存在更新的第一缓存配置信息;将第一微服务***中第一缓存配置信息对应的目标数据,确定为待更新目标数据,确定第一缓存配置信息的更新类型,在更新类型为新增类型时,获取指定存储器中第一缓存配置信息对应的变更前缓存配置信息,根据待更新数据,对变更前缓存配置信息对应的目标数据进行更新;在更新类型为删除类型时,对指定存储器中待更新数据进行删除处理;在更新类型为修改类型时,将待更新目标数据,添加到指定存储器中。
在对指定存储器中变更前缓存配置信息对应的目标数据进行更新处理之前,对变更前缓存配置信息对应的目标数据进行失效处理,并设置失效时间,以避免对指定存储器的查询请求全部转移到数据库表,从而减轻数据库表的访问压力。
在第一微服务***中目标缓存配置信息对应的目标数据存在更新时,获取第一微服务***中对应的目标数据存在更新的第二缓存配置信息;将第一微服务***中第二缓存配置信息对应的目标数据,确定为待更新目标数据,确定待更新数据的更新类型,在更新类型为修改类型时,获取指定存储器中第二缓存信息对应的目标数据,作为变更前数据,根据待更新数据对指定存储器中的变更前数据进行更新处理;在更新类型为新增类型时,将待更新数据,添加到指定存储器中;在更新类型为删除类型时,对指定存储器中的待更新数据进行删除处理。
在对指定存储器中变更前数据进行更新处理之前,对指定存储器中的变更前数据进行失效处理,并设置失效时间,以避免对指定存储器的查询请求全部转移到数据库表,从而减轻数据库表的访问压力。
第一微服务***向指定存储器发送查询请求,以便指定存储器可以根据接收到的查询请求查询目标数据,在得到查询结果时,直接返回查询结果;在未得到查询到结果或缓存服务不可用时,确定待查询微服务***是否为第一微服务***,若待查询微服务***为第一微服务***,则第一微服务***可以直接操作数据库表,获取待查询数据;若待查询微服务***不为第一微服务***,第一微服务***则自动调用远程微服务***,例如第二微服务***,获取待查询数据,从而保证服务的高可用。
本申请实施例的微服务***间的数据共享方法,通过在第一微服务***的目标缓存配置信息存在更新或者目标缓存配置信息对应的目标数据存在更新时,通过从数据库表中获取待更新目标数据,以对指定存储器中的数据进行更新处理,从而保证指定存储器与数据库表中数据一致,从而提高微服务***从指定存储器中获取的数据的准确性,且调用指定存储器中获取数据,减少微服务***间的调用,从而减轻提供共享数据的微服务***的访问压力。另外,在待查询微服务***不为第一微服务***时,调用第二微服务***,获取待查询数据,从而保证服务的高可用。
与上述图1至图5实施例提供的微服务***间的数据共享方法相对应,本申请还提供一种微服务***间的数据共享装置,由于本申请实施例提供的微服务***间的数据共享装置与上述图1至图5实施例提供的微服务***间的数据共享方法相对应,因此在微服务***间的数据共享方法的实施方式也适用于本申请实施例提供的微服务***间的数据共享装置,在本申请实施例中不再详细描述。
图6是本申请第六实施例所示出的微服务***间的数据共享装置的结构示意图。本申请实施例的微服务***间的数据共享装置可应用于第一微服务***。
参照图6,该微服务***间的数据共享装置600可以包括:第一获取模块610、第二获取模块620、第一更新模块630。
其中,第一获取模块610,用于获取缓存配置表;其中,所述缓存配置表包括针对至少一个微服务***的缓存配置信息;第二获取模块620,用于在所述缓存配置表中针对所述第一微服务***的目标缓存配置信息存在更新时,和/或,在所述第一微服务***中所述目标缓存配置信息对应的目标数据存在更新时,从所述第一微服务***的数据库表中获取待更新目标数据;第一更新模块630,用于根据所述待更新目标数据,对指定存储器中的数据进行更新处理,其中,所述指定存储器中存储所述缓存配置表中各个缓存配置信息对应的数据,以便至少一个所述微服务***直接进行调用。
作为本申请实施例的一种可能的实现方式,所述装置还包括:第三获取模块、第四获取模块和缓存模块;所述第三获取模块,用于在所述第一微服务***初次启动时,根据所述第一微服务***的第一标识查询所述缓存配置表,获取针对所述第一微服务***的目标缓存配置信息;所述第四获取模块,用于获取所述第一微服务***的数据库表中与所述目标缓存配置信息对应的目标数据;所述缓存模块,用于将所述目标缓存信息对应的目标数据缓存至所述指定存储器中。
作为本申请实施例的一种可能的实现方式,所述第四获取模块具体用于,针对每个目标缓存配置信息,根据所述目标缓存配置信息中数据库表的第二标识,确定所述第一微服务***中与所述第二标识对应的目标数据库表;根据所述目标缓存配置信息中的数据查询条件查询所述目标数据库表,获取所述目标缓存配置信息对应的目标数据。
作为本申请实施例的一种可能的实现方式,所述第二获取模块620具体用于,在所述缓存配置表中针对所述第一微服务***的目标缓存配置信息存在更新时,获取所述目标缓存配置信息中存在更新的第一缓存配置信息;将所述第一微服务***中所述第一缓存配置信息对应的目标数据,确定为所述待更新目标数据。
作为本申请实施例的一种可能的实现方式,所述第一更新模块630具体用于,确定所述第一缓存配置信息的更新类型;在所述更新类型为修改类型时,获取所述指定存储器中所述第一缓存配置信息对应的变更前缓存配置信息;根据所述待更新目标数据,对所述指定存储器中所述变更前缓存配置信息对应的目标数据进行更新处理。
作为本申请实施例的一种可能的实现方式,所述装置还包括:第一添加模块和第一删除模块;所述第一添加模块,用于在所述更新类型为新增类型时,将所述待更新目标数据,添加到所述指定存储器中;所述第一删除模块,用于在所述更新类型为删除类型时,对所述指定存储器中所述待更新目标数据进行删除处理。
作为本申请实施例的一种可能的实现方式,所述装置还包括:第一失效模块,用于对所述指定存储器中所述变更前缓存配置信息对应的目标数据进行失效处理,并设置失效时间。
作为本申请实施例的一种可能的实现方式,所述第二获取模块620还用于,获取所述第一微服务***中对应的目标数据存在更新的第二缓存配置信息;将所述第一微服务***中所述第二缓存配置信息对应的目标数据,确定为所述待更新目标数据。
本申请实施例的一种可能的实现方式,所述装置还包括:第一确定模块、第五获取模块和第二更新模块;所述第一确定模块,用于确定所述待更新数据的更新类型;所述第五获取模块,用于在所述更新类型为修改类型时,获取所述指定存储器中所述第二缓存信息对应的目标数据,作为变更前数据;所述第二更新模块,用于根据所述待更新数据对所述指定存储器中的所述变更前数据进行更新处理。
作为本申请实施例的一种可能的实现方式,所述装置还包括:第二添加模块和第二删除模块;所述第二添加模块,用于在所述更新类型为新增类型时,将所述待更新数据,添加到所述指定存储器中;所述第二删除模块,用于在所述更新类型为删除类型时,对所述指定存储器中的所述待更新数据进行删除处理。
作为本申请实施例的一种可能的实现方式,所述装置还包括:第二失效模块,用于对所述指定存储器中的所述变更前数据进行失效处理,并设置失效时间。
作为本申请实施例的一种可能的实现方式,所述装置还包括:发送模块、第二确定模块、第一处理模块和第二处理模块;所述发送模块,用于向所述指定存储器发送查询请求,其中,所述查询请求包括数据查询条件以及待查询微服务***;所述第二确定模块,用于在未获取到所述指定存储器中与所述数据查询条件对应的待查询数据时,确定所述待查询微服务***是否为所述第一微服务***;所述第一处理模块,用于在所述待查询微服务***为所述第一微服务***时,根据所述数据查询条件查询所述第一微服务***的数据库表,获取所述待查询数据;所述第二处理模块,用于在所述待查询微服务***不为所述第一微服务***时,调用所述待查询服务***,获取所述待查询服务***中与所述数据查询条件对应的待查询数据。
本申请实施例的微服务***间的数据共享装置,通过获取缓存配置表;其中,缓存配置表包括针对至少一个微服务***的缓存配置信息;在缓存配置表中针对第一微服务***的目标缓存配置信息存在更新时,和/或,在第一微服务***中目标缓存配置信息对应的目标数据存在更新时,从所述第一微服务***的数据库表中获取待更新目标数据;根据待更新目标数据,对指定存储器中的数据进行更新处理,其中,指定存储器中存储缓存配置表中各个缓存配置信息对应的数据,以便至少一个微服务***直接进行调用,由此,在第一微服务***的目标缓存配置信息存在更新或者目标缓存配置信息对应的目标数据存在更新时,通过从数据库表中获取待更新目标数据,以对指定存储器中的数据进行更新处理,从而保证指定存储器与数据库表中数据一致,从而提高微服务***从指定存储器中获取的数据的准确性。
在示例性实施例中,还提出了一种电子设备。
其中,电子设备包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,处理器被配置为执行指令,以实现如前述任一实施例提出的微服务***间的数据共享方法。
作为一种示例,图7是本申请一示例性实施例所示出的电子设备700的结构示意图,如图7所示,上述电子设备700,还可以包括:
存储器710及处理器720,连接不同组件(包括存储器710和处理器720)的总线730,存储器710存储有计算机程序,当处理器720执行所述程序时实现本申请实施例所述的点云图像增强方法。
总线730表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,***总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及***组件互连(PCI)总线。
电子设备700典型地包括多种电子设备可读介质。这些介质可以是任何能够被电子设备700访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器710还可以包括易失性存储器形式的计算机***可读介质,例如随机存取存储器(RAM)740和/或高速缓存存储器750。电子设备700可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机***存储介质。仅作为举例,存储***760可以用于读写不可移动的、非易失性磁介质(图7未显示,通常称为“硬盘驱动器”)。尽管图7中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线730相连。存储器710可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。
具有一组(至少一个)程序模块770的程序/实用工具780,可以存储在例如存储器710中,这样的程序模块770包括——但不限于——操作***、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块770通常执行本申请所描述的实施例中的功能和/或方法。
电子设备700也可以与一个或多个外部设备790(例如键盘、指向设备、显示器791等)通信,还可与一个或者多个使得用户能与该电子设备700交互的设备通信,和/或与使得该电子设备700能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口792进行。并且,电子设备700还可以通过网络适配器793与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器793通过总线730与电子设备700的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备700使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID***、磁带驱动器以及数据备份存储***等。
处理器720通过运行存储在存储器710中的程序,从而执行各种功能应用以及数据处理。
需要说明的是,本实施例的电子设备的实施过程和技术原理参见前述对本申请实施例的微服务***间的数据共享方法的解释说明,此处不再赘述。
在示例性实施例中,还提供了一种包括指令的计算机可读存储介质,例如包括指令的存储器,上述指令可由电子设备的处理器执行以完成上述任一实施例提出的微服务***间的数据共享方法。可选地,计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供一种计算机程序产品,包括计算机程序/指令,其特征在于,所述计算机程序/指令被处理器执行时实现上述任一实施例提出的微服务***间的数据共享方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (10)
1.一种微服务***间的数据共享方法,其特征在于,应用于第一微服务***,包括:
获取缓存配置表;其中,所述缓存配置表包括针对至少一个微服务***的缓存配置信息;
在所述缓存配置表中针对所述第一微服务***的目标缓存配置信息存在更新时,和/或,在所述第一微服务***中所述目标缓存配置信息对应的目标数据存在更新时,从所述第一微服务***的数据库表中获取待更新目标数据;
根据所述待更新目标数据,对指定存储器中的数据进行更新处理,其中,所述指定存储器中存储所述缓存配置表中各个缓存配置信息对应的数据,以便至少一个所述微服务***直接进行调用。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述第一微服务***初次启动时,根据所述第一微服务***的第一标识查询所述缓存配置表,获取针对所述第一微服务***的目标缓存配置信息;
获取所述第一微服务***的数据库表中与所述目标缓存配置信息对应的目标数据;
将所述目标缓存信息对应的目标数据缓存至所述指定存储器中。
3.根据权利要求2所述的方法,其特征在于,所述获取所述第一微服务***的数据库表中与所述目标缓存配置信息对应的目标数据,包括:
针对每个目标缓存配置信息,根据所述目标缓存配置信息中数据库表的第二标识,确定所述第一微服务***中与所述第二标识对应的目标数据库表;
根据所述目标缓存配置信息中的数据查询条件查询所述目标数据库表,获取所述目标缓存配置信息对应的目标数据。
4.根据权利要求1所述的方法,其特征在于,所述在所述缓存配置表中针对所述第一微服务***的目标缓存配置信息存在更新时,从所述第一微服务***的数据库表中获取待更新目标数据,包括:
在所述缓存配置表中针对所述第一微服务***的目标缓存配置信息存在更新时,获取所述目标缓存配置信息中存在更新的第一缓存配置信息;
将所述第一微服务***中所述第一缓存配置信息对应的目标数据,确定为所述待更新目标数据。
5.根据权利要求4所述的方法,其特征在于,所述根据所述待更新目标数据,对指定存储器中的数据进行更新处理,包括:
确定所述第一缓存配置信息的更新类型;
在所述更新类型为修改类型时,获取所述指定存储器中所述第一缓存配置信息对应的变更前缓存配置信息;
根据所述待更新目标数据,对所述指定存储器中所述变更前缓存配置信息对应的目标数据进行更新处理。
6.根据权利要求1所述的方法,其特征在于,所述在所述第一微服务***中所述目标缓存配置信息对应的目标数据存在更新时,从所述第一微服务***的数据库表中获取待更新目标数据,包括:
获取所述第一微服务***中对应的目标数据存在更新的第二缓存配置信息;
将所述第一微服务***中所述第二缓存配置信息对应的目标数据,确定为所述待更新目标数据。
7.根据权利要求6所述的方法,其特征在于,所述根据所述待更新目标数据,对指定存储器中的数据进行更新处理,包括:
确定所述待更新数据的更新类型;
在所述更新类型为修改类型时,获取所述指定存储器中所述第二缓存信息对应的目标数据,作为变更前数据;
根据所述待更新数据对所述指定存储器中的所述变更前数据进行更新处理。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
向所述指定存储器发送查询请求,其中,所述查询请求包括数据查询条件以及待查询微服务***;
在未获取到所述指定存储器中与所述数据查询条件对应的待查询数据时,确定所述待查询微服务***是否为所述第一微服务***;
在所述待查询微服务***为所述第一微服务***时,根据所述数据查询条件查询所述第一微服务***的数据库表,获取所述待查询数据;
在所述待查询微服务***不为所述第一微服务***时,调用所述待查询服务***,获取所述待查询服务***中与所述数据查询条件对应的待查询数据。
9.一种微服务***间的数据共享装置,其特征在于,应用于第一微服务***,包括:
第一获取模块,用于获取缓存配置表;其中,所述缓存配置表包括针对至少一个微服务***的缓存配置信息;
第二获取模块,用于在所述缓存配置表中针对所述第一微服务***的目标缓存配置信息存在更新时,和/或,在所述第一微服务***中所述目标缓存配置信息对应的目标数据存在更新时,获取待更新目标数据;
第一更新模块,用于根据所述待更新目标数据,对指定存储器中的数据进行更新处理,其中,所述指定存储器中存储所述缓存配置表中各个缓存配置信息对应的数据,以便至少一个所述微服务***直接进行调用。
10.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至8中任一项所述的微服务***间的数据共享方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211242321.3A CN115934765A (zh) | 2022-10-11 | 2022-10-11 | 微服务***间的数据共享方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211242321.3A CN115934765A (zh) | 2022-10-11 | 2022-10-11 | 微服务***间的数据共享方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115934765A true CN115934765A (zh) | 2023-04-07 |
Family
ID=86651598
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211242321.3A Pending CN115934765A (zh) | 2022-10-11 | 2022-10-11 | 微服务***间的数据共享方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115934765A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109491653A (zh) * | 2018-11-21 | 2019-03-19 | 泰康保险集团股份有限公司 | 微服务架构下的组件共享方法、装置、电子设备 |
CN109922151A (zh) * | 2019-03-12 | 2019-06-21 | 浪潮通用软件有限公司 | 一种微服务之间的数据共享方法 |
CN111078789A (zh) * | 2019-11-25 | 2020-04-28 | 泰康保险集团股份有限公司 | 数据共享方法及装置、存储介质、电子设备 |
CN112579118A (zh) * | 2019-09-30 | 2021-03-30 | 北京国双科技有限公司 | 微服务的配置信息更新方法、装置、***、介质和设备 |
CN114238399A (zh) * | 2021-11-19 | 2022-03-25 | 中国建设银行股份有限公司 | 缓存刷新***、方法、装置、计算机设备和存储介质 |
WO2022134358A1 (zh) * | 2020-12-24 | 2022-06-30 | 平安科技(深圳)有限公司 | 微服务数据的处理方法、装置、微服务处理平台及介质 |
CN115129740A (zh) * | 2022-09-01 | 2022-09-30 | 山东大学 | 一种云原生环境下的分布式微服务数据库更新方法及*** |
-
2022
- 2022-10-11 CN CN202211242321.3A patent/CN115934765A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109491653A (zh) * | 2018-11-21 | 2019-03-19 | 泰康保险集团股份有限公司 | 微服务架构下的组件共享方法、装置、电子设备 |
CN109922151A (zh) * | 2019-03-12 | 2019-06-21 | 浪潮通用软件有限公司 | 一种微服务之间的数据共享方法 |
CN112579118A (zh) * | 2019-09-30 | 2021-03-30 | 北京国双科技有限公司 | 微服务的配置信息更新方法、装置、***、介质和设备 |
CN111078789A (zh) * | 2019-11-25 | 2020-04-28 | 泰康保险集团股份有限公司 | 数据共享方法及装置、存储介质、电子设备 |
WO2022134358A1 (zh) * | 2020-12-24 | 2022-06-30 | 平安科技(深圳)有限公司 | 微服务数据的处理方法、装置、微服务处理平台及介质 |
CN114238399A (zh) * | 2021-11-19 | 2022-03-25 | 中国建设银行股份有限公司 | 缓存刷新***、方法、装置、计算机设备和存储介质 |
CN115129740A (zh) * | 2022-09-01 | 2022-09-30 | 山东大学 | 一种云原生环境下的分布式微服务数据库更新方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11593337B2 (en) | Data processing method, device, and a storage medium | |
CN113360519B (zh) | 数据处理方法、装置、设备和存储介质 | |
US11243921B2 (en) | Database expansion system, equipment, and method of expanding database | |
CN111522631A (zh) | 分布式事务处理方法、装置、服务器及介质 | |
CN108595505B (zh) | 数据查询的方法和装置 | |
EP3376403A1 (en) | Method of accessing distributed database and device providing distributed data service | |
CN113568924B (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN111475519A (zh) | 数据缓存方法及装置 | |
US7752225B2 (en) | Replication and mapping mechanism for recreating memory durations | |
CN111125170A (zh) | 一种微服务的跨服务数据获取方法、装置及微服务设备 | |
CN113094431A (zh) | 读写分离方法、装置及服务器 | |
CN111031126B (zh) | 集群缓存共享方法、***、设备及存储介质 | |
US10067808B2 (en) | Nondeterministic operation execution environment utilizing resource registry | |
US20110276572A1 (en) | Configuration management device, medium and method | |
CN115934765A (zh) | 微服务***间的数据共享方法、装置及电子设备 | |
CN112395284A (zh) | 数据处理方法、装置、数据库***、电子设备及存储介质 | |
CN114489772A (zh) | 工作流执行方法及装置、存储介质、设备 | |
CN112612530B (zh) | 类查询方法及装置 | |
CN114201496A (zh) | 数据更新方法、装置、电子设备、***及存储介质 | |
CN113157722A (zh) | 一种数据处理方法、装置、服务器、***及存储介质 | |
CN116932633A (zh) | 数据访问管理方法、装置及设备 | |
CN115470224A (zh) | 缓存更新方法、装置、设备、***、存储介质及产品 | |
CN114676165A (zh) | 数据的查询方法、装置、电子设备及计算机可读介质 | |
CN112416786A (zh) | 一种测试方法、装置、设备及存储介质 | |
CN113220760A (zh) | 一种数据处理方法、装置、服务器及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |