微服务分库方法、系统和介质技术方案

技术编号:26890666 阅读:25 留言:0更新日期:2020-12-29 16:07
本发明专利技术公开了一种微服务分库方法、系统和介质,该方法包括以下步骤:扫描数据库中所有的表,创建概要表,所述概要表存储所述所有的表的表名;将所述概要表中的所述表名进行加前后缀处理之后,构建DFA树;扫描微服务的所有配置文件和Java的源代码文件,将得到的表名的字符串通过所述DFA树进行匹配,将匹配完成的表名及其对应的微服务的名称存储到微服务表;对所述微服务表中的数据进行调整处理之后,进行微服务分库处理。本发明专利技术至少具有以下有益效果:能够通过程序算法,便捷的查询出微服务使用到的数据库表。

【技术实现步骤摘要】
微服务分库方法、系统和介质
本专利技术涉及业务中台架构领域,特别涉及一种微服务分库方法、系统和介质。
技术介绍
目前微服务架构趋势越来越明显,中台领域也逐渐明朗,传统的单个服务已经越来越满足不了高并发,高可用的需求了,公司原有系统的状况为15个微服务都同时访问同一个数据库,为了提高存储的性能,通常情况下会对每个微服务进行拆分成一个库来处理,以减轻存储压力,我们需要把这个数据库中的表格,按照微服务中使用的表格来进行拆分和归类。现有的分库方法是通过人工去查找每个微服务中所属的表格,这种方式需要对每个微服务中的文件都进行一次排查,工作量大,并且容易出错。找回,也会费一番周折,耗时耗力。
技术实现思路
本专利技术旨在至少解决现有技术中存在的技术问题之一。为此,本专利技术提出一种微服务分库方法,能够通过程序算法,便捷的查询出微服务使用到的数据库表,并进行自动划分微服务,创建数据库,迁移数据表和数据。本专利技术还提出一种微服务分库系统。本专利技术还提出一种实施上述微服务分库方法的计算机可读存储介质。<br>根据本专利技术本文档来自技高网...

【技术保护点】
1.一种微服务分库方法,其特征在于,所述方法包括以下步骤:/nS100、扫描数据库中所有的表,创建概要表,所述概要表存储所述所有的表的表名;/nS200、将所述概要表中的所述表名进行加前后缀处理之后,构建DFA树;/nS300、扫描微服务的所有配置文件和Java的源代码文件,将得到的表名的字符串通过所述DFA树进行匹配,将匹配完成的表名及其对应的微服务的名称存储到微服务表;/nS400、对所述微服务表中的数据进行调整处理之后,进行微服务分库处理。/n

【技术特征摘要】
1.一种微服务分库方法,其特征在于,所述方法包括以下步骤:
S100、扫描数据库中所有的表,创建概要表,所述概要表存储所述所有的表的表名;
S200、将所述概要表中的所述表名进行加前后缀处理之后,构建DFA树;
S300、扫描微服务的所有配置文件和Java的源代码文件,将得到的表名的字符串通过所述DFA树进行匹配,将匹配完成的表名及其对应的微服务的名称存储到微服务表;
S400、对所述微服务表中的数据进行调整处理之后,进行微服务分库处理。


2.根据权利要求1所述的微服务分库方法,其特征在于,所述方法还包括:
将所有微服务的源代码放置在同一文件夹。


3.根据权利要求1所述的微服务分库方法,其特征在于,所述步骤S200包括:
将单个字符作为前缀添加的到所述表名的前面,作为后缀添加到所述表名的后面,基于添加过所述前缀和后缀的表名构建DFA树。


4.根据权利要求1所述的微服务分库方法,其特征在于,所述步骤S300包括:
S301、逐行扫描一微服务的配置文件或Java的源代码文件,扫描到SQL语句;
S302、将所述SQL语句作为输入字符串输入到所述DFA树进行匹配;
S303、当匹配到前缀字符时开始基于所述DFA树进行表名匹配;
S304、匹配成功后将匹配到的表名和所述微服务的名称存储到所述微服务表中。


5.根据权利要求1所述的微服务分库方法,其特征在于,所述步骤S400包括:
S401、根据各微服务的业务,对所述微服务表中的数据进行调整。


6.根据权利要求1所述的微服务分...

【专利技术属性】
技术研发人员:高智意何伟李珂辰
申请(专利权)人:珠海市卓轩科技有限公司
类型:发明
国别省市:广东;44

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

1