一种微服务数据初始化方法技术

技术编号:39518217 阅读:10 留言:0更新日期:2023-11-25 18:56
本发明专利技术实施例公开了一种微服务数据初始化方法

【技术实现步骤摘要】
一种微服务数据初始化方法、系统、电子设备及存储介质


[0001]本专利技术实施例涉及计算机
,尤其涉及一种微服务数据初始化方法

系统

电子设备及存储介质


技术介绍

[0002]目前,在对微服务系统进行初始部署时通常都会有对数据进行初始化的要求

微服务的数据基本上可以分为两种:第一种是本服务中的数据,例如本服务的内存容量配置或本服务的
API

Application Programming Interface,
应用程序编程接口)接口信息等;第二种是全局配置数据,例如菜单配置

权限配置

组织配置或人员配置等

无论是哪种数据,在微服务架构中,都是由某个单独的服务进行统一管理

例如菜单配置是由专门的菜单管理服务来进行管理的

[0003]针对微服务中的数据初始化,通常是通过执行
SQL

Structured Query Language
,结构化查询语言)脚本进行注入

也即,各个服务编辑好相应的
SQL
脚本,在各个微服务系统启动时连接相应的数据库,以通过
SQL
脚本将数据写入相应的数据库中

或者,在所有微服务启动完成之后,统一的将所有的
SQL
脚本注入数据库中

[0004]然而,
SQL
脚本注入的方式对于全局配置数据来说存在较大的耦合性,需要确定管理全局配置数据的服务的数据库的数据模型以及表结构,以根据数据库的数据模型以及表结构编写该服务对应的
SQL
脚本

但是,一旦数据库的数据模型发生变化或表项字段发生变更,该服务对应的
SQL
脚本需要跟随一起修改,提高了维护成本,而且修改过程极易出错导致同一服务的不同版本间存在不兼容的情况,从而使得微服务系统无法持续迭代拓展


技术实现思路

[0005]本专利技术实施例提供一种微服务数据初始化方法

系统

电子设备及存储介质,能够降低微服务数据初始化过程的耦合性,提高微服务数据的初始化效率,降低维护成本,同时提高了同一服务不同版本的兼容性

[0006]根据本专利技术的一方面,提供了一种微服务数据初始化方法,包括:
[0007]通过数据源模块获取待初始化数据,并确定所述待初始化数据对应的目标服务;
[0008]通过解释器模块获取所述目标服务对应的历史数据,并根据所述目标服务对所述待初始化数据进行数据格式转换,得到待初始化格式数据;
[0009]通过所述解释器模块根据所述历史数据和所述待初始化格式数据确定目标初始化数据;
[0010]通过执行器模块将所述目标初始化数据写入所述目标服务对应的数据库,以完成所述待初始化数据的初始化

[0011]根据本专利技术的另一方面,提供了一种微服务数据初始化系统,包括:
[0012]数据源模块,用于获取待初始化数据,并确定所述待初始化数据对应的目标服务;
[0013]解释器模块,用于获取所述目标服务对应的历史数据,并根据所述目标服务对所
述待初始化数据进行数据格式转换,得到待初始化格式数据;
[0014]所述解释器模块,还用于根据所述历史数据和所述待初始化格式数据确定目标初始化数据;
[0015]执行器模块,用于将所述目标初始化数据写入所述目标服务对应的数据库,以完成所述待初始化数据的初始化

[0016]根据本专利技术的另一方面,提供了一种电子设备,所述电子设备包括:
[0017]至少一个处理器;以及
[0018]与所述至少一个处理器通信连接的存储器;其中,
[0019]所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本专利技术任一实施例所述的微服务数据初始化方法

[0020]根据本专利技术的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本专利技术任一实施例所述的微服务数据初始化方法

[0021]本专利技术实施例的技术方案,通过数据源模块获取待初始化数据,并确定待初始化数据对应的目标服务,通过解释器模块获取目标服务对应的历史数据,并根据目标服务对待初始化数据进行数据格式转换得到待初始化格式数据,以通过解释器模块根据历史数据和待初始化格式数据确定目标初始化数据,从而通过执行器模块将目标初始化数据写入目标服务对应的数据库,完成待初始化数据的初始化,解决了现有技术中由于微服务数据初始化过程耦合性较高导致的维护成本较高以及版本兼容性较差的问题,能够降低微服务数据初始化过程的耦合性,提高微服务数据的初始化效率,降低维护成本,同时提高了同一服务不同版本的兼容性

[0022]应当理解,本部分所描述的内容并非旨在标识本专利技术的实施例的关键或重要特征,也不用于限制本专利技术的范围

本专利技术的其它特征将通过以下的说明书而变得容易理解

附图说明
[0023]为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图

[0024]图1是本专利技术实施例一提供的一种微服务数据初始化方法的流程图;
[0025]图2是本专利技术实施例二提供的一种微服务数据初始化方法的流程图;
[0026]图3是本专利技术实施例二提供的一种异或运算的示意图;
[0027]图4是本专利技术实施例三提供的一种微服务数据初始化方法的流程图;
[0028]图5是本专利技术实施例四提供的一种微服务数据初始化系统的示意图;
[0029]图6是本专利技术实施例五提供的一种微服务数据初始化系统的架构示意图;
[0030]图7是本专利技术实施例五提供的一种解释器数据处理过程的示意图;
[0031]图8是实现本专利技术实施例的微服务数据初始化方法的电子设备的结构示意图

具体实施方式
[0032]为了使本
的人员更好地理解本专利技术方案,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚

完整地描述,显然,所描述的实施例仅仅是本专利技术一部分的实施例,而不是全部的实施例

基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本专利技术保护的范围

[本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种微服务数据初始化方法,其特征在于,包括:通过数据源模块获取待初始化数据,并确定所述待初始化数据对应的目标服务;通过解释器模块获取所述目标服务对应的历史数据,并根据所述目标服务对所述待初始化数据进行数据格式转换,得到待初始化格式数据;通过所述解释器模块根据所述历史数据和所述待初始化格式数据确定目标初始化数据;通过执行器模块将所述目标初始化数据写入所述目标服务对应的数据库表,以完成所述待初始化数据的初始化
。2.
根据权利要求1所述的方法,其特征在于,所述通过数据源模块获取待初始化数据,包括:通过所述数据源模块获取数据源数据;其中,所述数据源数据是由数据库数据转换得到的,或根据服务开发需求确定的;通过所述数据源模块对所述数据源数据进行数据拆分得到拆分数据;其中,不同的拆分数据对应微服务系统中不同的服务;通过所述数据源模块根据所述拆分数据对应的服务,确定所述拆分数据对应的预设数据规则;通过所述数据源模块根据所述拆分数据对应的预设数据规则对所述拆分数据进行数据处理,得到所述待初始化数据
。3.
根据权利要求1所述的方法,其特征在于,在所述通过解释器模块根据所述目标服务对所述待初始化数据进行数据格式转换,得到待初始化格式数据之前,还包括:通过所述解释器模块对所述历史数据和所述待初始化数据进行一致性校验;所述通过解释器模块根据所述目标服务对所述待初始化数据进行数据格式转换,得到待初始化格式数据,包括:通过所述解释器模块在确定未通过所述一致性校验的情况下,根据所述目标服务对所述待初始化数据进行数据格式转换,得到待初始化格式数据
。4.
根据权利要求1或3所述的方法,其特征在于,在所述通过解释器模块根据所述目标服务对所述待初始化数据进行数据格式转换,得到待初始化格式数据之前,还包括:通过所述解释器模块确定所述目标服务对应的目标数据规则,并根据所述目标数据规则对所述待初始化数据进行规则解析;所述通过解释器模块根据所述目标服务对所述待初始化数据进行数据格式转换,得到待初始化格式数据,包括:通过所述解释器模块在确定规则解析结果满足目标规则条件的情况下,根据所述目标服务对所述待初始化数据进行数据格式转换,得到待初始化格式数据
。5.
根据权利要求1所述的方法,其特征在于,在所述通过解释器模块根据所述目标服务对所述待初始化数据进行数据格式转换,得到待初始化格式数据之前,还包括:通过所述数据源模块,确定所述解释器模块中与所述待初始化数据对应的目标解释器模块;其中,所述解释器模块的数量为至少一个;所述通过解释器模块获取所述目标服务对应的历史数据,并根据所述目标服务对所述待初始化数据进行数据格式转换,得到待初始化格式数据,包括:
通过所述目标解释器模块获取所述目标服务对应的历史数据,并根据所述目标服务对所述待初始化数据进行数据格式转换,得到待初始化格式数据;所述通过所述解释器模块根据所述历史数据和所述待初始化格式数据确定目标初始化数据,包括:通过所述目标解释器模块根据所述历史数据和所述待初始化格式数据确定目标初始化数据
。...

【专利技术属性】
技术研发人员:傅涛田文利郑轶胡志锋陈尔严刘其端姚杰童业
申请(专利权)人:博智安全科技股份有限公司
类型:发明
国别省市:

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

1