一种微服务治理方法及系统技术方案

技术编号:36793162 阅读:13 留言:0更新日期:2023-03-08 22:49
本发明专利技术适用于微服务技术领域,提供了一种微服务治理方法及系统,包括以下步骤:采集微服务业务系统的故障数据;对故障数据进行分析,确定高频微服务前端请求组,为每个高频微服务前端请求组配置请求组治理策略;接收微服务治理策略,将所述微服务治理策略与微服务应用进行绑定;当配置完成的微服务被调用时,根据对应的微服务治理策略,重新启动所述微服务应用的微服务容器;接收微服务前端请求,对正在执行的所有微服务前端请求进行检测,当正在执行的微服务前端请求属于高频微服务前端请求组时,根据对应的请求组治理策略,重新启动所述微服务应用的微服务容器。请求组治理策略能够针对治理高频微服务前端请求组导致的问题,效果较为理想。效果较为理想。效果较为理想。

【技术实现步骤摘要】
一种微服务治理方法及系统


[0001]本专利技术涉及微服务治理
,具体是涉及一种微服务治理方法及系统。

技术介绍

[0002]微服务是一种架构,一个大型复杂软件应用一般由一个或多个微服务组成。系统中的各个微服务可被独立部署,各个微服务之间是松耦合的,每个微服务仅关注于完成一件任务。微服务架构下的各个微服务之间耦合度低,能单独部署也可以横向扩容,但是微服务的治理和监控是比较复杂的。微服务请求之间会有错综复杂的依赖关系,一个前端请求一般会依赖于多个后端服务。当此类请求越来越多,占用的计算机资源越来越多的时候,会造成业务系统崩溃。为了解决上述问题,目前会为每个微服务应用提前制定治理策略,不论产生何种微服务请求,都会使用所述治理策略,适用性不好,治理效果不理想,因此,需要提供一种微服务治理方法及系统,旨在解决上述问题。

技术实现思路

[0003]针对现有技术存在的不足,本专利技术的目的在于提供一种微服务治理方法及系统,以解决上述
技术介绍
中存在的问题。
[0004]本专利技术是这样实现的,一种微服务治理方法,所述方法包括以下步骤:采集微服务业务系统的故障数据,每份故障数据包括一组微服务前端请求;对故障数据进行分析,确定高频微服务前端请求组,为每个高频微服务前端请求组配置请求组治理策略;接收微服务治理策略,将所述微服务治理策略与微服务应用进行绑定;当配置完成的微服务被调用时,根据对应的微服务治理策略,重新启动所述微服务应用的微服务容器;接收微服务前端请求,对正在执行的所有微服务前端请求进行检测,当正在执行的微服务前端请求属于高频微服务前端请求组时,根据对应的请求组治理策略,重新启动所述微服务应用的微服务容器。
[0005]作为本专利技术进一步的方案:所述对故障数据进行分析,确定高频微服务前端请求组的步骤,具体包括:根据故障数据中的微服务前端请求对故障数据进行分类,得到若干个故障数据类别,每一个故障数据类别中所有的故障数据完全相同;根据故障数据类别中微服务前端请求的组数对故障数据类别进行降序排列;确定排列在前N的故障数据类别为高频故障类别,高频故障类别中的任意一组微服务前端请求均为高频微服务前端请求组。
[0006]作为本专利技术进一步的方案:所述为每个高频微服务前端请求组配置请求组治理策略的步骤,具体包括:按照治理策略库中的治理策略依次对微服务容器进行重置;
每次重置后,运行高频微服务前端请求组中的所有微服务请求,得到运行效果;取运行效果最好所对应的治理策略为所述高频微服务前端请求组的请求组治理策略。
[0007]作为本专利技术进一步的方案:所述请求组治理策略和微服务治理策略为负载均衡策略、熔断治理策略、限流治理策略、容错治理策略或者降级治理策略。
[0008]作为本专利技术进一步的方案:所述容错治理策略为failover策略、failfast策略、failback策略和custome策略中的一种或多种;failover策略,指当前实例异常时,当前实例不重试,其他实例最多重试2次,参数值MaxAutoRetries=0,MaxAutoRetriesNextServer=2;failfast策略,指当前实例异常时,当前实例不重试,其他实例不重试,立即返回错误,参数值MaxAutoRetries=0,MaxAutoRetriesNextServer=0;failback策略,指当前实例异常时,当前实例最多重试2次,其他实例不重试,参数值MaxAutoRetries=2,MaxAutoRetriesNextServer=0;Custome策略,指当前实例异常时,自定义当前实例和其他实例的重试次数。
[0009]作为本专利技术进一步的方案:所述负载均衡策略包括响应时间权值机制、随机机制和轮论机制。
[0010]作为本专利技术进一步的方案:所述熔断治理策略包括熔断时间窗、请求失败率和窗口请求数。
[0011]本专利技术的另一目的在于提供一种微服务治理系统,所述系统包括:故障数据采集模块,用于采集微服务业务系统的故障数据,每份故障数据包括一组微服务前端请求;请求组治理策略模块,用于对故障数据进行分析,确定高频微服务前端请求组,为每个高频微服务前端请求组配置请求组治理策略;微服务治理策略模块,用于接收微服务治理策略,将所述微服务治理策略与微服务应用进行绑定;第一微服务容器重置模块,当配置完成的微服务被调用时,根据对应的微服务治理策略,重新启动所述微服务应用的微服务容器;第二微服务容器重置模块,用于接收微服务前端请求,对正在执行的所有微服务前端请求进行检测,当正在执行的微服务前端请求属于高频微服务前端请求组时,根据对应的请求组治理策略,重新启动所述微服务应用的微服务容器。
[0012]作为本专利技术进一步的方案:所述请求组治理策略模块包括:故障数据分类单元,用于根据故障数据中的微服务前端请求对故障数据进行分类,得到若干个故障数据类别,每一个故障数据类别中所有的故障数据完全相同;降序排列单元,用于根据故障数据类别中微服务前端请求的组数对故障数据类别进行降序排列;高频请求组确定单元,用于确定排列在前N的故障数据类别为高频故障类别,高频故障类别中的任意一组微服务前端请求均为高频微服务前端请求组。
[0013]作为本专利技术进一步的方案:所述请求组治理策略模块还包括:微服务容器重置单元,用于按照治理策略库中的治理策略依次对微服务容器进行重置;
运行效果获取单元,每次重置后,运行高频微服务前端请求组中的所有微服务请求,得到运行效果;请求组策略确定单元,用于取运行效果最好所对应的治理策略为所述高频微服务前端请求组的请求组治理策略。
[0014]与现有技术相比,本专利技术的有益效果是:本专利技术通过对故障数据进行分析,确定高频微服务前端请求组,为每个高频微服务前端请求组配置请求组治理策略;将所述微服务治理策略与微服务应用进行绑定;当配置完成的微服务被调用时,根据对应的微服务治理策略,重新启动所述微服务应用的微服务容器;并自动对正在执行的所有微服务前端请求进行检测,当正在执行的微服务前端请求属于高频微服务前端请求组时,根据对应的请求组治理策略,重新启动所述微服务应用的微服务容器。请求组治理策略能够很好的针对治理高频微服务前端请求组导致的问题,适用性更好,治理效果较为理想。
附图说明
[0015]图1为一种微服务治理方法的流程图。
[0016]图2为一种微服务治理方法中对故障数据进行分析,确定高频微服务前端请求组的流程图。
[0017]图3为一种微服务治理方法中为每个高频微服务前端请求组配置请求组治理策略的流程图。
[0018]图4为一种微服务治理系统的结构示意图。
[0019]图5为一种微服务治理系统中请求组治理策略模块的结构示意图。
具体实施方式
[0020]为了使本专利技术的目的、技术方案及优点更加清晰,以下结合附图及具体实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。
[0021]以下结合具本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种微服务治理方法,其特征在于,所述方法包括以下步骤:采集微服务业务系统的故障数据,每份故障数据包括一组微服务前端请求;对故障数据进行分析,确定高频微服务前端请求组,为每个高频微服务前端请求组配置请求组治理策略;接收微服务治理策略,将所述微服务治理策略与微服务应用进行绑定;当配置完成的微服务被调用时,根据对应的微服务治理策略,重新启动所述微服务应用的微服务容器;接收微服务前端请求,对正在执行的所有微服务前端请求进行检测,当正在执行的微服务前端请求属于高频微服务前端请求组时,根据对应的请求组治理策略,重新启动所述微服务应用的微服务容器。2.根据权利要求1所述的微服务治理方法,其特征在于,所述对故障数据进行分析,确定高频微服务前端请求组的步骤,具体包括:根据故障数据中的微服务前端请求对故障数据进行分类,得到若干个故障数据类别,每一个故障数据类别中所有的故障数据完全相同;根据故障数据类别中微服务前端请求的组数对故障数据类别进行降序排列;确定排列在前N的故障数据类别为高频故障类别,高频故障类别中的任意一组微服务前端请求均为高频微服务前端请求组。3.根据权利要求2所述的微服务治理方法,其特征在于,所述为每个高频微服务前端请求组配置请求组治理策略的步骤,具体包括:按照治理策略库中的治理策略依次对微服务容器进行重置;每次重置后,运行高频微服务前端请求组中的所有微服务请求,得到运行效果;取运行效果最好所对应的治理策略为所述高频微服务前端请求组的请求组治理策略。4.根据权利要求1所述的微服务治理方法,其特征在于,所述请求组治理策略和微服务治理策略为负载均衡策略、熔断治理策略、限流治理策略、容错治理策略或者降级治理策略。5.根据权利要求4所述的微服务治理方法,其特征在于,所述容错治理策略为failover策略、failfast策略、failback策略和custome策略中的一种或多种;failover策略,指当前实例异常时,当前实例不重试,其他实例最多重试2次,参数值MaxAutoRetries=0,MaxAutoRetriesNextServer=2;failfast策略,指当前实例异常时,当前实例不重试,其他实例不重试,立即返回错误,参数值MaxAutoRetries=0,MaxAutoRetriesNextServ...

【专利技术属性】
技术研发人员:苏伯平
申请(专利权)人:广州玖晔网络科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1