首页 微服务引擎 实践教程 微服务治理 AHAS流量防护迁移MSE微服务治理

AHAS流量防护迁移MSE微服务治理

更新时间: 2024-06-04 15:32:25

AHAS中流量防护模块将在微服务治理MSE中继续演进。对于使用AHAS流量防护模块的现有用户,建议将该模块迁移至MSE中继续使用。本文介绍如何将AHAS流量防护模块迁移到MSE。

MSE微服务治理介绍

MSE微服务治理中心无侵入增强主流Spring Cloud、Apache Dubbo等开源微服务框架,提供丰富的服务治理和流量防护功能,旨在帮助企业解决开发测试态、变更态以及运行态的各种稳定性和安全风险,低成本实现微服务敏捷开发,全面增强微服务线上稳定性并提升研发效率。相较于AHAS流量防护,MSE微服务治理企业版价格与AHAS流量防护价格一致,流量防护能力与AHAS基本对齐,除此之外还包含全链路灰度、无损上下线等变更时稳定性保障能力,覆盖更全面的稳定性场景。

AHAS流量防护与MSE流量防护差异

MSE流量防护大部分能力以及框架支持均与AHAS流量防护保持一致。同时也在AHAS流量防护的基础之上进行了功能的优化和精简,具体差异如下。

功能差异

分类

差异点

AHAS 流量防护

MSE 流量防护

核心能力

流量防护基础规则类型

主动降级规则

建议配置阈值为0的流控/隔离规则。

自动重试规则

实际场景下效果不佳,MSE侧不支持。

流量防护规则配置

流控效果支持预热启动

建议使用 MSE 无损上下线基于调度的预热。

扩展能力

场景化规则

WEB 防护规则

对应热点参数防护(RPC)。

网关防护

网关防护规则

不针对请求属性对应流控规则/并发隔离。

针对请求属性对应的热点参数防护(HTTP)。

请求分组

实际场景下效果不佳,MSE侧不支持。

兜底防护能力

默认熔断规则

重构优化中,后续上线。

系统规则

升级为系统防护(目前支持基于CPU使用率的自适应过载保护)。

集群流控

集群流控

应用场景下效果不佳,MSE侧不支持,推荐在网关侧(MSE 云原生网关)使用。

可观测配套

指标监控

流量相关指标以及系统指标,支持回放以及历史查询

精简指标,保留流量相关指标以及CPU使用率,支持回放。

事件

限流事件

标准方式对接 MSE 统一事件中心。

告警

系统告警以及自定义告警

标准方式对接云监控告警。

部分差异详情

请求分组

请求分组往往用于在网关侧配置接口级别的限流,但是这种方式会引入一定的性能损耗,并且在很多场景下是不适用的,不利于系统整体的稳定性,例如:

  • 微服务架构下,不是所有流量都经过网关,后端应用的实际流量与网关侧流量并非完全一致。

  • 网关侧的某一接口的后续链路往往会涉及多个微服务和外部依赖,对应关系难以梳理,要想达到良好的防护效果,还是需要在链路的每一层根据容量评估去配置相应的限流。

  • 在慢调用场景下,由于各个调用环节的超时配置不一致,网关侧配置隔离等措施不能起到实际的保护效果。

出于系统整体稳定性的考虑,推荐在网关侧配置路由维度限流,应用侧配置接口维度限流,层层防护,在保障稳定性的同时减少误限以及性能损耗。

集群流控

集群流控能力适用于网关层,用于控制进入系统的总流量。推荐将网关迁移至MSE云原生网关,获得更优秀的性能表现以及更加丰富的功能,在MSE云原生网关可以配置路由级别整体阈值的限流策略。详情请参见配置限流策略

框架差异

MSE 通过Java Agent技术实现了常用框架的无侵入埋点支持,开箱即用,支持的框架以及版本,详情可参见微服务治理支持的Java框架。与AHAS 相比,常用框架中仅 Redis 暂时不支持,后续将支持。对于不支持的框架,可以搭配开源 Sentinel SDK 使用实现灵活的自定义埋点,可参见如何在微服务治理中添加自定义接口

迁移指引

对于应用以及规则数较少的用户可以采用先下后上的方式进行迁移,对于应用以及规则数较多的用户,推荐使用平滑迁移方案。

上一篇: 通过云效构建CI/CD实现微服务全链路灰度 下一篇: AHAS应用迁移至MSE(Agent 接入方式)
阿里云首页 微服务引擎 相关技术圈