[发明专利]基于动静态调用关系、并反映业务能力的微服务识别方法在审
| 申请号: | 202211470917.9 | 申请日: | 2022-11-23 |
| 公开(公告)号: | CN115730069A | 公开(公告)日: | 2023-03-03 |
| 发明(设计)人: | 章程;吴斯杰;王伟 | 申请(专利权)人: | 安徽大学 |
| 主分类号: | G06F16/35 | 分类号: | G06F16/35;G06F8/30 |
| 代理公司: | 合肥市泽信专利代理事务所(普通合伙) 34144 | 代理人: | 江楠竹 |
| 地址: | 230601 安徽省*** | 国省代码: | 安徽;34 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 静态 调用 关系 反映 业务 能力 微服 识别 方法 | ||
本发明涉及一种软件架构的识别迁移方法,具体为基于动静态调用关系、并反映业务能力的微服务识别方法、装置。本发明从静态和动态调用关系两个方面全面分析了单体系统的功能特征,通过这种方式收集的功能特征将比单一的特征更为全面。本发明对收集到的功能特征进行处理,其中对于动态执行轨迹进行过滤,对静态调用关系进行精简,去除了与业务能力无关的元素,这样经过处理的功能特征能更好地反映业务能力。本发明计算出单体系统中元素与元素之间的共同出现次数,并将其作为微服务识别的基础。本发明采用聚类算法得到聚类结果,以将单体系统中的元素迁移至微服务架构中。
技术领域
本发明涉及一种软件架构的识别迁移方法,本发明的适用对象是软件工程中的软件架构。本发明基于动静态调用关系进行功能特征收集,并针对业务能力进行反映,具体地来说,将传统的单体软件架构迁移到微服务架构当中,使得整个迁移过程高度自动化且较少地需要人为的参与。
背景技术
一个单体的软件系统将所有的资源都封装在一个单一的程序中。在一个单一的程序中,如果某处出现问题,它将使整个系统无法使用。虽然单体式应用程序很容易部署和开发,但随着软件规模不断扩大,单体应用将变得难以维护和扩展。
目前,绝大多数微服务识别方法通常寻找单体系统的功能特征,并根据高内聚力和低耦合度的原则,将单体系统的元素分类为不同的微服务。然而,现有多数微服务识别方法并没有考虑到微服务是基于业务能力(业务能力是从软件系统外部角度来观察,是现实世界直观的体现)而建立的,而纯粹的功能视角(功能视角是从单体软件部署与开发层面来考虑软件系统达到了什么样的目的)不能很好地反映微服务的特点。实际上,微服务的一个重要设计原则就是,微服务是基于业务能力来构建的。
如果微服务识别方法只考虑功能视角,那么微服务架构可能会退化为面向服务的架构或分布式架构,这样无法充分利用到微服务的独特优势,例如独立部署、技术异构、快速迭代等优点。此外,软件设计文档的缺乏也给这类方法带来了困难。总的来说,目前的微服务识别方法并不能很好的将单体软件架构迁移到微服务架构中。
发明内容
基于此,有必要针对目前多数微服务识别方法没有考虑到实际业务能力的问题,提供基于动静态调用关系、并反映业务能力的微服务识别方法。
本发明采用以下技术方案实现:
第一方面,本发明公开了基于动静态调用关系、并反映业务能力的微服务识别方法,其用于对软件架构进行识别迁移。
S1,获取单体系统的原始动态执行轨迹、原始静态调用关系,对原始动态执行轨迹进行过滤得到处理后的动态执行轨迹,对原始静态调用关系进行精简得到处理后的静态调用关系;
其中,所述对原始动态执行轨迹进行过滤的方法为:判断每一条原始动态执行轨迹是否含有操作数据库/操作实体类的方法;若是,则对这条轨迹进行保留;若否,则对这条轨迹进行删除;
所述对原始静态调用关系进行精简的方法为:从底部的起始点方法开始进行调用关系构造,找寻每个方法被哪些其他方法调用;不断向上进行构造直到寻找不到主动调用,保留找寻到的调用关系;
其中,处理后的动态执行轨迹和处理后的静态调用关系用于反映业务能力;
S2,统计处理后的动态执行轨迹、处理后的静态调用关系中的元素的共现次数,并构建出关联矩阵;
S3,基于关联矩阵,使用聚类识别算法得到微服务识别结果。
该基于动静态调用关系、并反映业务能力的微服务识别方法实现根据本公开的实施例的方法或过程。
第二方面,本发明公开了基于动静态调用关系、并反映业务能力的微服务识别装置,其使用了第一方面的基于动静态调用关系、并反映业务能力的微服务识别方法。所述微服务识别装置包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于安徽大学,未经安徽大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211470917.9/2.html,转载请声明来源钻瓜专利网。





