自动弹性,稳定交付
高可用与弹性伸缩
在构建现代应用架构时,高可用是保障业务连续性的关键要素,也是实现水平弹性伸缩的基础。而水平弹性伸缩通过精确匹配资源供给与需求变化,避免了资源浪费。在流量较低时自动缩减资源,从而减少不必要的开支;而在面临流量高峰时,又能快速扩展服务器实例数量,确保服务质量和用户体验不受影响。
阿里云 ALB+ESS 技术方案与传统方案对比
传统方案自建负载均衡节点,并且根据业务量的变化来手动实现资源的扩容和缩容,这些方案会带来高硬件成本、管理复杂、可运维性差等问题,同时这些方案需要投入较高的资源、时间和人力成本。本文推荐使用阿里云 ALB+ESS 的技术方案实现应用的水平弹性伸缩。
| 传统方案 | VS | 阿里云 ALB + ESS |
部署较复杂
传统高可用部署通常比较复杂,需要人工配置多级冗余系统,此外,对于后期维护需要专业的运维团队持续投入。 | 部署维护复杂度 |
简化配置过程
阿里云为应用高可用提供了高度集成的工具和服务,简化了配置过程。 |
较高固定成本
需要购买、维护设备,即使在低负载时也需要维持所有硬件,存在较高的固定成本。 | 成本效率 |
节省不必要的成本
费用随用随付,可以根据实际需要自动伸缩资源,节省了不必要的成本开销。 |
故障恢复较慢
故障恢复一般比较慢,需要人工介入检查并更换故障硬件或重启系统。 | 故障恢复 |
快速自动故障转移
具备快速的自动故障转移能力,有利于实现几乎零停机时间的故障恢复。 |
可伸缩性较差
可伸缩性较差,需要预先规划和购买额外的资源以应对未来可能增长的流量,导致资源长期闲置。 | 可伸缩性 |
极高伸缩性
具备极高的伸缩性,应对流量波动的能力更强。云服务提供的这两项服务可以实时自动调整资源,无需人工干预。 |
通过ALB和ESS提高可用性
单个 ALB 实例最大并发连接数最高可达 1000 万,最大新建连接数(CPS)最高可达 100 万,ALB 单实例七层处理能力高达 100 万 QPS。
ALB 最大可提供 99.995% SLA 可用性保障;弹性伸缩ESS提供健康检查功能,在 ECS 实例不健康时,自动增加相应类型的实例替换不健康的实例。
无需投入大量人力来调整计算资源,无需提前预备计算资源,也无需担心不能及时释放冗余资源。ESS 在适当的时间进行伸缩任务,降低资源拥有成本。
随需而动:自动弹性,稳定交付
通过 ALB+ESS 的技术方案提升应用的可用性,在接收到用户的请求时,ALB 能够根据请求内容将流量路由到目标分组内,其中 ALB 服务器分组与 ESS 弹性伸缩组进行关联,实现在业务需求量波动时,弹性伸缩 ESS 自动调整指定类型的 ECS 实例,以满足业务需求。