Updated on 2024-04-19 GMT+08:00

Auto Flow Control

Scenarios

Auto Flow Control allows you to set criteria, such as the vCPU threshold and maximum number of active connections. When the criteria are met, the system automatically performs flow control on sessions to ensure the availability of core services in scenarios such as high burst traffic and abnormal reads/writes.

Prerequisites

To use this function, you need to subscribe to Intelligent O&M first.

  1. In the Auto Flow Control area, click Subscribe. In the displayed dialog box, you can learn about the value-added functions and billing rules.
  2. If you enable Collect Slow Query Logs and Collect All SQL Statements, slow query logs and all SQL statements are collected and analyzed from multiple angles. For details, see Viewing Slow Query Logs and Top SQL.
Figure 1 Subscribing to Intelligent O&M

Procedure

  1. Log in to the management console.
  2. Click in the upper left corner and select a region and a project.
  3. Click in the upper left corner of the page and choose Databases > Relational Database Service.
  4. On the Instances page, click the DB instance name.
  5. In the navigation pane, choose DBA Assistant > Historical Diagnosis.
  6. Click SQL Explorer and then Auto Flow Control.
  7. Click Auto Flow Control.
  8. Toggle on and configure required parameters. For details about the parameters, see Table 1.

    Figure 2 Example

    Example for setting Auto Flow Control parameters

    Set Time Window to 15:00-18:00, Max. Duration to Last 5 minutes, vCPU usage ≥ to 90%, Active sessions ≥ to 20, and and Duration (min) to 5. When all the criteria are met, Auto Flow Control is triggered. If your vCPU usage or number of active sessions falls below the threshold during the time window, flow control ends.

    Table 1 Parameter description

    Parameter

    Description

    Database

    The name of the database for which auto flow control needs to be enabled. Ensure that the database you select is consistent with the one specified in your SQL statements, or the auto flow control policy will fail.

    If the database name is not specified, auto flow control is applied to all databases by default.

    Username

    The name of the user that auto flow control is applied.

    Time Window

    The time when flow control is applied. Auto flow control can be triggered only once within the time window.

    If you have obtained the permissions for customizing a time window for auto flow control, you can create a custom time window within the period from 00:00 to 23:59.

    Max. Duration

    Maximum length of time that SQL statements matching the auto flow control policy can be throttled within the time window.

    vCPU usage

    vCPU usage threshold for the instance. You also need to specify the relationship between the vCPU usage and active sessions. Their relationship can be and or or.

    Active sessions

    Threshold for active sessions. Value range: 1 to 5000

    Duration (min)

    How long vCPU usage and active sessions exceed the specified values. The duration can range from 2 minutes to 60 minutes.

    For example, if you set vCPU usage ≥ to 90%, Active sessions ≥ to 1000, and Duration (min) to 30, auto flow control will be triggered only when the vCPU usage and active sessions exceed 90% and 1,000 for 30 minutes.

    Max. Active Connections

    Maximum number of active connections allowed. The value can range from 1 to 5000. Auto flow control stops when the number of active connections drops to this limit.

  9. Click OK.
  10. You will see a record generated on the page every time Auto Flow Control is triggered. You can see historical details, too.

Follow-up Operations

After auto flow control is enabled, you can determine whether to kill sessions based on service requirements. To learn how to kill sessions, see Managing Real-Time Sessions.