论文部分内容阅读
近年来,在云计算与大数据技术快速发展的大环境下,微服务架构逐渐兴起。随着微服务系统服务量的快速增长,传统的服务发现机制和服务降级策略已经不能满足微服务系统的需求。考虑到服务之间存在关联性,可以从服务之间的关联性入手对服务发现技术和服务降级技术进行优化,因此本文提出了基于关联矩阵的微服务发现优化方法以及基于服务关联性的微服务降级技术优化方法。本文主要包括以下三方面内容:(1)针对目前微服务系统中服务发现时延较长、代价较大的问题,本文提出了基于关联矩阵的服务发现算法(Association Matrix Based Service Discovery,AMBSD),通过构建服务关联矩阵来表示服务之间的关联关系,对服务发现整体过程的时延和代价进行理论分析,得出了算法可执行的条件,并通过轮询方法、功能分解启发式方法及AMBSD算法在服务发现时延和代价方面的对比实验验证了AMBSD算法在缩短服务发现时延以及降低服务发现代价方面的有效性。(2)针对现有的微服务降级策略易导致用户服务请求阻塞形成雪崩效应,且未考虑到服务降级的层次性,易导致系统不稳定等问题,本文提出了基于服务关联性的分级降级算法(Service Relevance Based Hierarchical Degradation,SRBHD),通过对微服务系统稳定性和服务降级优先级的理论分析,得出了划分可降级服务和其他服务的阈值范围,并通过自动化超时降级算法、自动化限流降级算法和SRBHD算法在提升系统可用性和系统负载情况方面的对比实验,验证了SRBHD算法在提升微服务系统稳定性以及系统负载情况的有效性。(3)针对现有的微服务管理系统缺乏UI服务降级界面,缺乏显示降级过程及结果的功能等问题,本文设计并实现了包含服务注册、服务发现、服务监控以及服务降级功能的微服务管理原型系统,系统可进行一键注册,并包含对集群、容器组、服务的性能监控,且包含显示服务降级过程及结果的界面,各个模块相互协调,操作简单且安全稳定。通过服务实例的注册及发现以及系统访问高峰期自动化服务降级的实验,验证了本系统在系统访问高峰期能够保持比较稳定的状态。综上所述,本文分别针对微服务的服务发现和服务降级两个方面提出了优化算法,提出的算法能够有效地降低服务发现的时延和代价并有效地保证系统的稳定性,同时设计并实现了整合服务注册及发现、服务降级为一体的操作简便、运行高效、安全稳定的微服务管理原型系统。