
# RES13-01 采用自动弹性扩缩容
当系统突发流量时，通过自动弹性扩容，可减少业务中断影响。
- **风险等级**
  高
  
- **关键策略**
  弹性扩缩容需要通过业务处理逻辑与数据分离、状态外置等技术手段支撑系统处理能力的快速增加或减少。
  系统扩容和缩容的处理方式有两种，一种是改变单机的处理能力，包括CPU、内存、存储等，称之为纵向伸缩；另一种是单机节点处理能力不变，通过增加节点的数量来改变系统的处理能力，称之为横向伸缩。
  系统设计时一般建议采用横向伸缩。采用横向伸缩时，要求业务与数据解耦，即将系统的业务处理逻辑与数据分离、数据（状态）外置，以实现业务节点（含资源）无状态，按需快速增加或减少，从而实现系统业务处理能力的伸缩。
  当节点故障或资源不足时，系统需要自动检测和扩展节点，以实现自动横向扩缩容，自动增加资源容量，解决业务处理能力不足的问题，无需人工干预。
  
  华为云提供AS弹性伸缩服务，可以根据伸缩组内的负载情况，及伸缩规则，自动调整ECS实例、带宽等资源。当业务需求增长时，AS自动增加弹性云服务器（ECS）实例或带宽资源，以保证业务能力；当业务需求下降时，AS自动缩减弹性云服务器（ECS）实例或带宽资源，以节约成本。
  此外，华为云还提供了一些内嵌伸缩能力的云服务，对用户无感知或仅需简单配置：
  - OBS、SFS、FunctionGraph等服务会根据请求量自动扩展业务处理能力，用户无感知。
  
  - RDS服务最多支持5个只读副本，可在线扩展只读负载；一键规格变更实现CPU、内存扩容/缩容；在线存储容量扩容。
  
  - CCE服务支持配置自动扩容集群节点和工作负载，伸缩策略支持告警（按CPU或内存使用率触发）、定时、周期多种方式。
   
- **相关云服务和工具**
  - 弹性伸缩 AS
  
  - 云容器引擎 CCE
  
  - 云数据库 RDS
  
  - 对象存储服务 OBS
  
  - 弹性文件服务 SFS
  
  - 函数工作流 FunctionGraph
   
 
