[发明专利]基于运行态数据分析的微服务架构异味检测评估方法及系统在审
申请号: | 202210502872.2 | 申请日: | 2022-05-10 |
公开(公告)号: | CN114936128A | 公开(公告)日: | 2022-08-23 |
发明(设计)人: | 刘磊;贺祥;王忠杰;涂志莹 | 申请(专利权)人: | 哈尔滨工业大学 |
主分类号: | G06F11/30 | 分类号: | G06F11/30 |
代理公司: | 哈尔滨市阳光惠远知识产权代理有限公司 23211 | 代理人: | 陈晶 |
地址: | 150001 黑龙*** | 国省代码: | 黑龙江;23 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 运行 数据 分析 微服 架构 异味 检测 评估 方法 系统 | ||
本发明公开了一种基于运行态数据分析的微服务架构异味检测评估方法及系统,属于计算机服务技术领域,其中,该方法包括:收集预设微服务系统的静态服务信息、部署结构以及运行态数据;对静态服务信息、部署结构和运行态数据进行处理,以检测出预设微服务系统中存在的架构异味;计算架构异味进行响应时间腐化程度、Mem腐化程度和CPU腐化程度;根据架构异味和其造成的质量腐化程度进行可能性综合评估,以给出现阶段架构异味的优化方案。该方法能够减少开发人员人为操作次数,并优化微服务系统设计使其适应现阶段的运行环境,以优化微服务系统运行态下的运行质量。
技术领域
本发明涉及计算机服务技术领域,涉及一种基于运行态数据分析的微服务架构异味检测评估方法及系统,具体涉及了微服务系统运行态数据分析以及架构异味检测和评估方法。
背景技术
随着互联网时代的发展,各类软件面向的现实场景和业务逻辑也越来越复杂,而传统的单体软件架构则存在越来越多的限制,逐渐难以应对各类复杂的场景和业务。单体软件架构是指在有着功能逻辑模块的划分下,各开发团队在完成相应模块开发后将各个模块整合到一个单体应用中,并运行部署。由于业务逻辑不断复杂,功能模块越来越复杂,各模块代码的复杂度越来越高,整个代码也越来越臃肿,极大增加了持续集成和交付的复杂度。而微服务体系架构是近年来推出的软件架构风格,它将整个软件架构通过业务解耦的形式拆分为各个小型服务,各个服务之间高度解耦,并独立的进行开发、测试、部署、拓展等而不影响其它模块,这些模块之间相互之间通过定义好的API进行通信,完成软件的业务逻辑。因此越来越多的复杂系统开始从一体化软件架构转变为微服务架构。
根据软件工程理论,软件在长时间版本迭代开发中,其系统结构的设计质量往往伴有衰减的趋势,且会影响软件系统的正确性、性能、可靠性、可维护性等质量属性,这种现象称为架构腐化,其具体表现称为异味(bad smell)。在传统单体架构中,各个业务模块的开发团队代码写在一起,因此随着软件体系版本的迭代,软件体系也逐渐臃肿庞大,在其系统内部可能存在着大量的代码重复过多,代码复用不够等代码异味,以及各个业务模块之间的高耦合、低内聚、依赖环等架构异味(在设计和开发阶段被悄悄地、偶然地引入,其具体表现也更加抽象)。而采用微服务风格的软件,其业务逻辑被差分为各个小型服务,由各自的开发团队负责版本迭代,因此代码异味在微服务系统中存在较少。然而微服务虽然完成了业务解耦,但是各个服务之间依旧存在着一定的依赖关系,且考虑到微服务设计层次有着复杂的逻辑结构,因此架构异味更容易在微服务体系风格中出现。同时软件在长期运行时,服务对外提供的质量会受运行态并发因素,部署因素等一些运行态环境的影响而出现退化,服务对资源的利用效率也会下降,称之为运行态下的质量腐化。考虑到微服务风格的软件,其内部的每一个服务在运行时态下都存在多个运行实例,且为保证软件的正常运行,每个服务的实例都可以弹性的进行横向扩展,因此对于一些大型的软件,其运行实例甚至可以达到成百上千。在微服务风格的软件若是存在某些设计不当或某些部署方式不当,则在运行态微服务更加容易出现质量腐化的问题。因此当出现微服务的架构异味时,微服务运行态下的则更容易出现一些质量腐化问题。
一部分的微服务架构异味来自于微服务的设计层,在微服务的逻辑结构中有着较为明显的特征,称之为设计层架构异味。现有的研究中也有对这类架构异味的检测和修复方案,如通过静态扫描代码,或是对请求链路分析的方式,并在检测到架构异味后,基于一定的规则对架构异味进行消除。但是有时这类架构异味可能是开发人员对软件的业务逻辑,微服务特性以及部署的物理环境等多个设计指标进行综合评估,很难在它们之间达成完全的折中,故不得不在设计结果中保留一些架构异味作为一种妥协。并且,这些架构异味会对运行时态下微服务系统的非功能性指标和功能性指标造成一定的正面或负面影响,但在短时间内架构异味造成的质量腐化对于运行态的微服务系统而言是可以接受的,因此何时采用哪些方案对微服务系统进行优化,是现有的研究方法所欠缺的。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨工业大学,未经哈尔滨工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210502872.2/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置