[发明专利]微服务的拆分方法、装置、设备及存储介质有效
| 申请号: | 201910965806.7 | 申请日: | 2019-10-11 |
| 公开(公告)号: | CN110909015B | 公开(公告)日: | 2022-07-22 |
| 发明(设计)人: | 何任高;王伟力;吴继敏 | 申请(专利权)人: | 华为云计算技术有限公司 |
| 主分类号: | G06F16/242 | 分类号: | G06F16/242;G06F16/2455 |
| 代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 郝传鑫;熊永强 |
| 地址: | 550025 贵州省贵阳市*** | 国省代码: | 贵州;52 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 微服 拆分 方法 装置 设备 存储 介质 | ||
1.一种微服务的拆分方法,其特征在于,所述方法包括:
基于应用的SQL语句,生成所述SQL语句查询的多个表之间的关联关系图;
对所述关联关系图进行拆分,得到多个内部关联度更强的关系子图;
针对每个所述关系子图,从所述应用的程序代码中查找所述关系子图对应的目标函数及所述目标函数相关的关联函数,并将查找的所述关系子图对应的目标函数及所述目标函数相关的关联函数作为一个微服务。
2.如权利要求1所述的方法,其特征在于,所述基于应用的SQL语句,生成所述SQL语句查询的多个表之间的关联关系图包括:
对所述应用的SQL语句进行语法分析,得到所述SQL语句对应的语法树结构,所述语法树结构包括至少一个树节点及树节点之间的连接权重,每个树节点用于表征所述SQL语句查询的表,所述树节点之间的连接权重为所述树节点对应SQL语句被执行的频次;
对所述语法树结构中的至少一个树节点及树节点之间的连接权重进行图形构造,得到所述SQL语句查询的多个表之间的关联关系图。
3.如权利要求1所述的方法,其特征在于,所述针对每个所述关系子图,从所述应用的程序代码中查找所述目标函数相关的关联函数包括:
对所述应用的程序代码进行分析,生成函数调用有向图,所述函数调用有向图中记录有所述应用的至少一个代码函数及所述代码函数之间的调用关系;
根据所述关系子图对应的目标函数,从所述函数调用有向图中查找与所述目标函数存在调用关系的代码函数,并确定为所述目标函数相关的关联函数。
4.如权利要求2所述的方法,其特征在于,所述针对每个所述关系子图,从所述应用的程序代码中查找所述目标函数相关的关联函数包括:
对所述应用的程序代码进行分析,生成函数调用有向图,所述函数调用有向图中记录有所述应用的至少一个代码函数及所述代码函数之间的调用关系;
根据所述关系子图对应的目标函数,从所述函数调用有向图中查找与所述目标函数存在调用关系的代码函数,并确定为所述目标函数相关的关联函数。
5.如权利要求1至4任一项所述的方法,其特征在于,所述关联关系图中包括至少一个树节点及树节点之间的连接权重,所述对所述关联关系图进行拆分,得到多个内部关联度更强的关系子图包括:
按照高内聚低耦合原则,对所述关联关系图进行拆分,得到多个内部关联度更强的关系子图;其中,所述关系子图的内部关联度为所述关系子图中树节点之间的连接权重之和。
6.如权利要求1至4任一项所述的方法,其特征在于,所述对所述关联关系图进行拆分,得到多个内部关联度更强的关系子图包括:
按照预设约束条件,对所述关联关系图进行拆分,得到多个内部关联度更强的关系子图;其中,所述预设约束条件包括以下中的至少一项:所述关系子图中树节点的总数量大于或等于第一阈值、所述关联关系图中的孤立节点支持任意拆分到所述多个关系子图中的任一个、或所述关联关系图中的孤立节点支持独立拆分到一个关系子图。
7.如权利要求1至4任一项所述的方法,其特征在于,所述关联关系图中包括至少一个树节点及树节点之间的连接权重,所述对所述关联关系图进行拆分,得到多个内部关联度更强的关系子图包括:
获取第一树节点的第一邻居节点及所述第一邻居节点的第二邻居节点;其中,所述第一树节点为所述关联关系图中未被拆分的树节点,且所述第一树节点相关的连接权重之和大于第二树节点相关的连接权重之和,所述第二树节点为所述关联关系图中除所述第一树节点外的任一未被拆分的树节点;或者,所述第一树节点为所述第一树节点所在的关系子图对应栈中的任一树节点;
根据所述第一邻居节点的连接权重和所述第二邻居节点的连接权重,计算所述第一邻居节点的收益,并根据所述第一邻居节点的收益确定是否将所述第一邻居节点拆分到所述第一树节点所在的关系子图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为云计算技术有限公司,未经华为云计算技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910965806.7/1.html,转载请声明来源钻瓜专利网。





