网站停服、秒杀大促…解析高可用网站架构云化

时间:2022-11-04 17:11:18
摘要:高可用架构的主要手段,是数据和服务的冗余备份及失效转移。

本文分享自华为云社区《高可用网站架构云化解决方案解析》,作者:琴棋书画-Linda。

一、背景

早期互联网产品用户量少,并发量低,数据量小,多数只需要单个应用服务器可以满足需要,而数据库和文件服务部署在外部单个服务器上。随着业务在线化、互联网化的高速发展,企业对核心业务系统的稳定性、可靠性、有效性、业务连续性等有了更高的要求。

在大规模网站系统中,硬件故障是常态,网站的高可用架构设计的主要目的就是保证服务器硬件故障时,服务依然可用、数据依然保存并能够访问。采用高可用系统架构支持重要系统、为关键业务提供7x24的不间断服务,已经成为众多企业保障业务稳定、持续运转的主要选择。

二、客户网站业务连续性、性能扩展性、数据可靠性的痛点

(一)单点故障导致网站停服

网站对用户提供服务时,如果只使用1台弹性云服务器ECS搭建应用,就面临极高的单点故障风险:当这台服务器因各种故障(磁盘故障、内存故障、网线松动等各种问题)离线或宕机时,整个网站业务也会完全停服。

(二)应对秒杀大促等运营场景的系统服务能力瓶颈

利用打折、秒杀等促销活动吸引用户,助推业务快速增长是互联网类型公司常见的运营手段。秒杀会对现有网站的冲击,因为秒杀活动只是网站的一个营销所附带的一个网络附加活动,这个活动具有的特点是:时间短,并发能力强。如果网站和原有应用部署在一起,必然会对网站本身的业务造成冲击,稍有不慎,整个网站就会发生瘫痪。

实际上,企业系统架构能力无法应对此类活动的案例并不鲜见,最近的案例如Costco促销期间网站宕机突发新冠疫情引发的核酸检测系统尖峰访问流量导致系统崩溃是类似的场景,如果系统提前采用基于云产品的高可用网站架构,相信能运行更加稳定。

(三) 数据可靠性痛点

网站后台存储数据丢失常见的原因有:停电、设备故障或故障、意外删除数据、不小心格式化硬盘、硬盘读写头损坏、软件崩溃、逻辑错误、固件损坏、硬盘驱动器物理损坏等。重要数据丢失且无备份会造成无可挽回的损失。

数据库是网站的核心组件,由于数据库性能、故障导致的可用性问题可能会带来业务严重受损。

三、高可用网站架构介绍

高可用架构的主要手段,是数据和服务的冗余备份及失效转移。一旦某些服务器宕机,就将服务切换到其他可用的服务器上,如果磁盘损坏,则从备份的磁盘读取数据。

高可用网站架构云化解决方案由弹性负载均衡ELB,弹性云服务器ECS,云数据库RDS for MySQL等(对象存储服务OBS,云备份CBR,云监控CES等可选服务)产品组成,解决方案的整体架构图如下:

网站停服、秒杀大促…解析高可用网站架构云化