作者 | 代序 阿里如斯原生技能团队
导读:本次课程先容在 SAE 场景下,如何借助压测工具与 SAE 弹性能力来应对大匆匆的实践。紧张包含 3 部分要点:传统大匆匆面临的寻衅、SAE 大匆匆方案以及快速压测验证。
一次常见的大匆匆活动,技能职员常日会从下面几个方面动手,进行准备事情:

要完成上述准备事情,常常会碰着如下痛点:
系统核心全链路,短缺全局关系视角。须要花大量韶光,整理依赖关系。链路高下游问题、定位问题比较耗时。压测与在线应急保障过程中,汇总链路高下游问题,定位问题比较耗时,短缺快速定位剖析工具。业务开拓迭代快,须要常态化压测支持。大量重复性人力投入,给大家造成很大包袱。预留资源本钱高,须要频繁扩缩容。须要产品化支持自动弹性伸缩,降落自建机房等高本钱高闲置的固定投入。SAE 大匆匆办理方案首先,SAE 是一款面向运用的 Serverless PaaS 平台,在传统 PaaS 功能之外,供应了完备的全链路监控、微做事管理等能力,并借助 Serverless 能力,最大程度进行快速扩缩容、降落手工运维本钱。
SAE 供应的办理方案,将从三方面入手:
指标可视化:借助运用监控 ARMS 供应丰富的 JVM、全链路 Tracing 、慢 SQL 等功能,便捷地评估水位、定位问题;运用高可用:借助 AHAS 限流降级能力,流量激增时,保护核心做事,保障可用性不完备跌 0;性能压测:借助压测工具如 PTS,仿照单机压测或全链路压测,验证容量方案、创造运用问题。快速压测验证那么如何通过 SAE ,进行一次快速的大匆匆压测验证呢?下面将进行一次完全的展示:
第一步:不雅观察运用监控指标,大致拟定弹性/压测/限流降级通过不雅观察运用监控,对日常业务的监控指标,有一个大致的观点。以一个范例的电商类运用为例。
从监控情形看:
该运用为 HTTP 微做事运用;运用依赖大量 HTTP 微做事调用,少量利用 Redis / MySQL 做事,适宜利用单机 + 分布式压测工具,分别进行压测;QPS 指标,比较 CPU、MEM 和 RT 指标,对业务更敏感,更适宜作为弹性策略指标。第二步:选择得当的压测工具根据业务诉求,可以选择快速利用的工具,或功能完全的压测工具。
譬如单机 HTTP 压测工具 ab、wrk,可以供应大略快速的压测办法,但只支持单机、不支持高下文。如果我们须要支持 WebSocket 、常态化压测,云产品 PTS 可以供应较为完全的做事,比较自建本钱更低。第三步:配置 SAE 弹性伸缩策略 + AHAS 限流降级策略无需精准设置,选择一些得当的指标,配置 SAE 弹性伸缩策略,或额外配置 AHAS 限流策略 / ARMS 告警。
对 API 类型,可通过对 API QPS、SQL QPS 等指标进行限流,保障超过系统水位的要求,快速 failover,降落对容量内业务的 SLA;并选择运用监控指标 QPS、RT,配置弹性规则,让系统进行弹性伸缩;对付打算型运用,则可选择更敏感的指标,如 CPU、Memory 对运用进行扩缩容。第四步:实行压测 – 不雅观察结果 – 优化代码 – 调度策略配置1)根据压测与监控结果,看是否有必要优化代码,或调度 SAE 弹性伸缩策略、AHAS 限流策略。2)实行压测,查看压测结果,创造存在失落败要求。3)查看监控非常,创造存在 GC 非常。通过 SAE 掌握台,优化 JVM 参数办理。4)再次压测,验证问题是否办理。5)如此重复一两轮,办理个中创造的紧张问题,可以更从容地面对大匆匆。
点击文章左下角【理解更多】不雅观看详细演示过程!