版权所有:内蒙古大学图书馆 技术提供:维普资讯• 智图
内蒙古自治区呼和浩特市赛罕区大学西街235号 邮编: 010021
作者机构:南京大学软件学院江苏南京210023 计算机软件新技术国家重点实验室(南京大学)江苏南京210023
出 版 物:《软件学报》 (Journal of Software)
年 卷 期:2021年第32卷第5期
页 面:1284-1301页
核心收录:
学科分类:08[工学] 0835[工学-软件工程] 081202[工学-计算机软件与理论] 0812[工学-计算机科学与技术(可授工学、理学学位)]
基 金:国家自然科学基金(62072227,61802173) 国家重点研发计划(2019YFE0105500) 江苏省政府间双边创新项目(BZ2020017) 计算机软件新技术国家重点实验室(南京大学)创新项目(ZZKT2019B01)
摘 要:近年来,微服务架构已经成为软件工程领域比较流行的架构风格,其天然支持DevOps和持续交付以及可伸缩性、可扩展性好等特性,驱动着业界实践者纷纷向微服务架构迁移.然而,采用微服务架构也面临诸多挑战,其中最关键的是缺乏自动化、一体化的解决方案来高效支持面向微服务的拆分设计以及候选微服务架构的评估.为了应对该挑战,对已有的数据流驱动的微服务化拆分方法的局限问题(例如效率和灵活性)进行改进,在此基础上,提出了一种优化的微服务化拆分方法(DFD-A).该方法通过动、静态分析相结合的方式,实现了更加高效的数据流信息自动化收集,同时,采用两阶段的聚类算法来取代完全基于自定义规则的微服务化拆分算法.同时实现了原型工具来支持从数据收集分析、服务拆分到候选微服务架构评估的完整且自动化的过程.案例研究结果表明,该优化方法DFD-A及其原型工具在保证拆分结果有效性的基础上,可以更加高效、灵活地支持面向微服务的自动化拆分与评估.