开源自建的Spring Cloud和Dubbo应用迁移到EDAS后,可以拥有应用全生命周期管理的运维能力,监管控一体化、调用链查询和限流降级等微服务治理能力,以及金丝雀发布、离群实例摘除、无损下线和服务鉴权等微服务治理的差异化能力。

场景化应用管控

在EDAS的ECS集群或容器服务K8s集群中部署的应用,均支持部署、回滚、停止、重启、重置和手动扩缩等一系列应用的生命周期管理能力,同时可以根据实际场景需求来弹性伸缩应用实例。

无损发布和安全生产

EDAS的无损下线能力可以让应用在白天忽视应用流量的影响而正常发布应用,并且能够保证流量无损。由于EDAS具备应用发布的三板斧能力:可灰度,可观测,可回滚,使您可以在白天流量较大情况下正常发布应用。

无损下线

EDAS的无损下线功能,将原来的停止进程阶段注销服务变成了prestop阶段注销服务,将原来的依赖于注册中心推送,做到了服务提供者直接通知消费者从调用列表中摘除自己。使得下线感知的时间大大减短,从原来的分钟级别做到准实时,确保您的应用在下线时能做到业务无损。您无需做任何配置工作,EDAS应用默认开启无损下线能力。

EDAS如何做到无损下线?EDAS如何做到无损下线

安全生产三板斧

  • 可灰度

    支持金丝雀发布,支持应用按照流量比例或请求内容策略配置实现灰度。详细信息,请参见使用控制台金丝雀发布应用(K8s)

    可灰度
  • 可观测

    通过应用总览、新版发布变更记录和发布后自动生成发布报告来实现多维度全流程监控。详细信息,请参见服务和接口监控

    可观测
  • 可回滚

    支持发布过程一键回滚,并支持已运行应用回退至某历史版本。详细信息,请参见管理应用生命周期

    可回滚

监管控一体化

在EDAS上可以进行服务监控并迅速定位故障,您可以查看应用的健康状况关键指标,包括总请求量、平均响应时间等总体指标,应用所提供的服务、所依赖的服务的相关指标,以及 CPU 使用量、内存使用量等系统信息。

服务监控

实例监控

您可以查看JVM监控、主机监控和内存快照等信息。具体操作,请参见实例监控

实例监控

监控报警

通过创建报警,您可以制定针对特定监控对象的报警规则。当规则被触发时,系统会以您指定的报警方式向报警联系人分组发送报警信息,以提醒您采取必要的问题解决措施。具体操作,请参见创建应用监控告警并发送告警通知

监控报警

事件中心

EDAS支持查看K8s原生应用的事件信息、报警信息、诊断报告和微服务治理,帮助您了解应用运行时的状态,方便快速聚焦问题。具体操作,请参见事件中心

事件中心

限流降级

EDAS已支持使用AHAS实现Spring Cloud应用、Dubbo应用和HSF应用的限流降级,支持实时查看限流降级详情和动态变更规则,全面保障您的应用的可用性。详细信息,请参见限流降级简介

支持多种限流降级能力
  • 限流降级能力接入提供多种方式,如果您采用Java Agent方式接入则无需修改一行代码与配置。具体操作,请参见通过Java Agent接入
  • 如果您不采用Agent方式,则需要修改pom.xml,添加对应的Sentinel依赖。
注意 最好EDAS限流降级能力别与hstrix降级能力共用,可能会出现效果不符合预期的情况。如果您已经配了hstrix能力,并且打算使用EDAS限流降级能力,建议关闭hstrix规则。
限流降级

容错:单点故障自愈能力

线上常出现以下场景:
  • 某应用发布,灰度部分实例,但由于代码逻辑写的有问题,造成线程池满,客户端调用失败。
  • 某应用运行过程中,某几台实例由于磁盘满,或者是宿主机资源争抢导致load很高,客户端出现调用超时。
单点故障自愈能力
EDAS支持多种方式的离群实例摘除,可以保障业务的稳定性。
  • 客户端的节点摘除能力:
    • 实时性高
    • 需要关注错误率阈值、隔离机器的比例阈值,及被摘除后恢复时间
    • 更灵活的摘除策略:调整权重
  • 全局摘除:维度更加丰富的监管控一体化。
  • 摘除后动作:弹性扩容替换故障机器。

服务安全

当您的某个微服务应用有安全要求,不希望其它所有应用都能调用时,可以对调用该应用的其它应用进行鉴权,仅允许匹配鉴权规则的应用调用。服务鉴权能力可以保护您的核心应用服务与接口。

服务鉴权