Updated on 2025-05-22 GMT+08:00

RES13-01 Automatic Elastic Scaling

When the system traffic bursts, automatic elastic scale-out can be performed to reduce the risk of service interruptions.

  • Risk level

    High

  • Key strategies

    Elastic scaling requires technologies such as separation of service processing logic from data and state externalization to support rapid increase or decrease of system processing capabilities.

    There are two ways to scale a system. One is to change the processing capability of a single node, involving its CPU, memory, and storage, which is called vertical scaling. The other is to change the processing capability of the system by changing the number of nodes without changing the processing capability of a single node, which is called horizontal scaling.

    Horizontal scaling is recommended during system design. When horizontal scaling is used, services and data are decoupled. That is, the service processing logic must be separated from data, and data (states) is externalized. In this way, service nodes (including resources) are stateless and can be quickly added or removed as required, thereby scaling the system processing capabilities.

    The system can automatically detect node faults or resource insufficiency and then add nodes to implement horizonal scaling, increasing the system capacity to meet processing needs.

    Huawei Cloud provides the Auto Scaling (AS) service to automatically adjust resources, such as Elastic Cloud Server (ECS) instances and bandwidth, based on the load in an AS group and scaling rules. When service demands increase, AS automatically adds ECS instances or bandwidth resources to ensure normal service capabilities. When service demands decrease, AS automatically reduces ECS instances or bandwidth resources to reduce costs.

    In addition, Huawei Cloud provides some cloud services with built-in scaling capabilities, which are transparent to users or only require simple configurations.

    • Object Storage Service (OBS), Scalable File Service (SFS), and FunctionGraph automatically expand their service processing capabilities based on the number of requests, which is transparent to users.
    • Relational Database Service (RDS) supports a maximum of five read replicas. Read replicas can be expanded online. The CPU and memory can be easily scaled up or down. The storage capacity can be expanded online.
    • Cloud Container Engine (CCE) supports automatic scaling of nodes and workloads. Policies can be created to configure alarm-based scaling (triggered by the excessive CPU or memory usage), scheduled scaling, or periodic scaling.
  • Related cloud services and tools
    • AS
    • CCE
    • RDS
    • OBS
    • SFS
    • FunctionGraph