Tous les produits
Search
Centre de documentation

:UpdateApplicationScalingRule

Dernière mise à jour :Aug 07, 2026

Met à jour la stratégie de mise à l'échelle automatique de l'application.

Description de l'opération

Remarques sur l'utilisation

Pour mettre à l'échelle une application au-delà de 50 instances, contactez le support technique de SAE pour être ajouté à la liste d'autorisation. Pour plus de détails, consultez Nous contacter.

Testez maintenant

Testez cette API dans OpenAPI Explorer, sans signature manuelle. Les appels réussis génèrent automatiquement du code SDK correspondant à vos paramètres. Téléchargez-le avec une sécurité intégrée des identifiants pour une utilisation locale. Testez cette API dans OpenAPI Explorer, sans signature manuelle. Les appels réussis génèrent automatiquement du code SDK correspondant à vos paramètres. Téléchargez-le avec une sécurité intégrée des identifiants pour une utilisation locale.

Test

Autorisation RAM

Le tableau ci-dessous décrit les autorisations nécessaires pour appeler cette API. Vous pouvez les définir dans une politique Resource Access Management (RAM). Les colonnes du tableau sont détaillées ci-dessous :

  • Action : les actions peuvent être utilisées dans l'élément Action des instructions de politique de permissions RAM pour accorder les autorisations nécessaires à l'exécution de l'opération.

  • API : l'API que vous pouvez appeler pour exécuter l'action.

  • Niveau d'accès : le niveau d'accès prédéfini accordé pour chaque API. Valeurs valides : create, list, get, update et delete.

  • Type de ressource : le type de ressource qui prend en charge l'autorisation pour exécuter l'action. Il indique si l'action prend en charge les permissions au niveau de la ressource. La ressource spécifiée doit être compatible avec l'action. Sinon, la politique sera inefficace.

    • Pour les API avec permissions au niveau de la ressource, les types de ressource requis sont marqués d'un astérisque (*). Spécifiez l'Alibaba Cloud Resource Name (ARN) correspondant dans l'élément Resource de la politique.

    • Pour les API sans permissions au niveau de la ressource, la valeur All Resources est affichée. Utilisez un astérisque (*) dans l'élément Resource de la politique.

  • Clé de condition : les clés de condition définies par le service. La clé permet un contrôle granulaire, applicable aux actions seules ou aux actions associées à des ressources spécifiques. En plus des clés de condition propres au service, Alibaba Cloud fournit un ensemble de clés de condition communes applicables à tous les services pris en charge par RAM.

  • Action dépendante : les actions dépendantes requises pour exécuter l'action. Pour mener à bien l'opération, l'utilisateur RAM ou le rôle RAM doit disposer des permissions pour toutes les actions dépendantes.

sae:UpdateApplicationScalingRule

update

*Application

acs:sae:{#regionId}:{#accountId}:application/{#namespaceid}/{#appid}

Aucune Aucune

Syntaxe de la requête

PUT /pop/v1/sam/scale/applicationScalingRule HTTP/1.1

Paramètres de requête

Paramètre

Type

Requis

Description

Exemple

AppId

string

Oui

L'identifiant de l'application.

7171a6ca-d1cd-4928-8642-7d5cfe69****

ScalingRuleName

string

Oui

Le nom de la stratégie de mise à l'échelle automatique. Le nom doit commencer par une lettre minuscule, contenir uniquement des lettres minuscules, des chiffres et des traits d'union (-), et ne pas dépasser 32 caractères.

Remarque

Vous ne pouvez pas modifier le nom d'une stratégie de mise à l'échelle automatique après sa création.

timer-0800-2100

ScalingRuleTimer

string

Non

La configuration de la stratégie de mise à l'échelle planifiée. Ce paramètre est requis pour les stratégies de mise à l'échelle planifiée.

Ce paramètre comprend les champs suivants :

  • beginDate et endDate : les dates de début et de fin de la période d'effet de la stratégie.

    • Si les deux paramètres sont définis sur null, la stratégie est toujours active. Il s'agit de la valeur par défaut.

    • Si vous définissez beginDate sur 2021-03-25 et endDate sur 2021-04-25, la stratégie est effective pendant un mois.

  • period : le planning d'exécution de la stratégie. Valeurs valides :

    • * * * : exécute la stratégie à une heure spécifiée chaque jour.

    • * * Fri,Mon : exécute la stratégie à une heure spécifiée les jours de la semaine spécifiés. Vous pouvez sélectionner plusieurs jours. L'heure est dans le fuseau horaire UTC+8. Valeurs valides :

      • Sun : dimanche

      • Mon : lundi

      • Tue : mardi

      • Wed : mercredi

      • Thu : jeudi

      • Fri : vendredi

      • Sat : samedi

    • 1,2,3,28,31 * * : exécute la stratégie à une heure spécifiée les jours spécifiés d'un mois. La valeur est comprise entre 1 et 31. Si un jour spécifié n'existe pas dans un mois donné (par exemple, le 31), la stratégie l'ignore.

  • schedules : les heures de déclenchement et le nombre cible d'instances correspondant. Vous pouvez spécifier jusqu'à 20 points dans le temps. Ce champ comprend les paramètres suivants :

    • atTime : l'heure de déclenchement. Le format est HH:mm, par exemple 08:00.

    • targetReplicas : le nombre cible d'instances d'application. La valeur est comprise entre 1 et 50.

      Remarque

      Pour assurer la continuité des activités, nous vous recommandons de définir le nombre minimum d'instances survivantes pour chaque déploiement progressif sur 1 ou plus. Si vous définissez ce paramètre sur 0, votre application sera interrompue lors d'une mise à niveau.

{"beginDate":null,"endDate":null,"period":"* * *","schedules":[{"atTime":"08:00","targetReplicas":10},{"atTime":"20:00","targetReplicas":3}]}

ScalingRuleMetric

string

Non

La configuration de la stratégie de mise à l'échelle basée sur des métriques. Ce paramètre est requis pour les stratégies de mise à l'échelle basées sur des métriques.

Ce paramètre comprend les champs suivants :

  • maxReplicas : le nombre maximum d'instances d'application.

  • minReplicas : le nombre minimum d'instances d'application.

  • metricType : la métrique qui déclenche la stratégie. Valeurs valides :

    • CPU : l'utilisation du processeur.

    • MEMORY : l'utilisation de la mémoire.

    • QPS : le QPS moyen d'une instance unique d'une application Java sur une période d'une minute.

    • RT : le RT moyen de toutes les interfaces de service d'une application Java sur une période d'une minute.

    • tcpActiveConn : le nombre moyen de connexions TCP actives par instance sur une période de 30 secondes.

    • SLB_QPS : le QPS moyen d'un SLB orienté Internet, mesuré par instance sur une période de 15 secondes.

    • SLB_RT : le RT moyen d'un SLB orienté Internet sur une période de 15 secondes.

    • INTRANET_SLB_QPS : le QPS moyen d'un SLB orienté interne, mesuré par instance sur une période de 15 secondes.

    • INTRANET_SLB_RT : le RT moyen d'un SLB orienté interne sur une période de 15 secondes.

  • metricTargetAverageUtilization : la valeur cible pour le metricType spécifié.

    • Utilisation cible du processeur, en pourcentage.

    • Utilisation cible de la mémoire, en pourcentage.

    • QPS cible.

    • RT cible, en millisecondes.

    • Nombre moyen de connexions TCP actives, en connexions/seconde.

    • QPS cible du SLB orienté Internet.

    • RT cible du SLB orienté Internet, en millisecondes.

    • QPS cible du SLB orienté interne.

    • RT cible du SLB orienté interne, en millisecondes.

  • slbId : l'identifiant du SLB.

  • slbProject : le projet Simple Log Service.

  • slbLogstore : le Logstore Simple Log Service.

  • vport : le port d'écoute du SLB. HTTP et HTTPS sont tous deux pris en charge.

  • scaleUpRules : les règles de scale-out.

  • scaleDownRules : les règles de scale-in.

  • step : la taille de pas pour une action de scale-out ou de scale-in. Elle définit le nombre maximum d'instances pouvant être ajoutées ou supprimées à la fois.

  • disabled : indique si le scale-in doit être désactivé. La désactivation du scale-in empêche l'application de réduire son échelle, ce qui peut atténuer les risques pendant les pics de trafic.

    • true : désactive le scale-in.

    • false : active le scale-in. Il s'agit de la valeur par défaut.

  • stabilizationWindowSeconds : le temps de refroidissement, en secondes, pour une action de mise à l'échelle. La valeur doit être un entier compris entre 0 et 3 600. La valeur par défaut est 0.

Remarque

Si vous spécifiez plusieurs métriques, un scale-out est déclenché lorsqu'une métrique atteint sa cible. Le nombre d'instances ne dépassera pas maxReplicas. Un scale-in n'est déclenché que lorsque toutes les métriques sont inférieures à leurs cibles. Le nombre d'instances ne descendra pas en dessous de minReplicas.

{"maxReplicas":3,"minReplicas":1,"metrics":[{"metricType":"CPU","metricTargetAverageUtilization":20},{"metricType":"MEMORY","metricTargetAverageUtilization":30},{"metricType":"tcpActiveConn","metricTargetAverageUtilization":20},{"metricType":"SLB_QPS","MetricTargetAverageUtilization":25,"slbId":"lb-xxx","slbProject":"aliyun-fc-cn-hangzhou-d95881d9-5d3c-5f26-a6b8-************","slbLogstore":"function-log","vport":"80"},{"metricType":"SLB_RT","MetricTargetAverageUtilization":35,"slbId":"lb-xxx","slbProject":"aliyun-fc-cn-hangzhou-d95881d9-5d3c-5f26-a6b8-************","slbLogstore":"function-log","vport":"80"}],"scaleUpRules":{"step":"100","disabled":false,"stabilizationWindowSeconds":0},"scaleDownRules":{"step":"100","disabled":false,"stabilizationWindowSeconds":300}}

MinReadyInstances

integer

Non

Le nombre minimum d'instances qui doivent rester disponibles lors d'un déploiement progressif. Valeurs valides :

  • Si vous définissez ce paramètre sur 0, votre application subira des interruptions de service lors d'un déploiement progressif.

  • Si vous définissez ce paramètre sur -1, le système utilise une valeur recommandée, qui correspond à 25 % du nombre actuel d'instances. Par exemple, si vous avez 5 instances, le nombre minimum d'instances survivantes est de 2 (5 × 25 % = 1,25, arrondi à l'entier supérieur).

Remarque

Pour assurer la continuité des activités, nous vous recommandons de définir le nombre minimum d'instances survivantes pour chaque déploiement progressif sur 1 ou plus.

3

MinReadyInstanceRatio

integer

Non

Le pourcentage minimum d'instances qui doivent rester disponibles lors d'un déploiement progressif. Valeurs valides :

  • -1 : une valeur initiale indiquant qu'aucun pourcentage n'est utilisé.

  • 0 à 100 : un pourcentage arrondi à l'entier supérieur. Par exemple, si vous avez 5 instances et que vous définissez ce paramètre sur 50, le nombre minimum d'instances survivantes est de 3.

Remarque

Si vous spécifiez à la fois MinReadyInstances et MinReadyInstanceRatio, et que MinReadyInstanceRatio n'est pas -1, MinReadyInstanceRatio est prioritaire. Par exemple, si MinReadyInstances est défini sur 5 et MinReadyInstanceRatio sur 50, le système utilise 50 % pour calculer le nombre minimum d'instances survivantes.

-1

EnableIdle

boolean

Non

Indique si le mode inactif doit être activé ou désactivé.

ScalingRuleType

string

Non

timing

Éléments de réponse

Élément

Type

Description

Exemple

object

Les informations renvoyées.

RequestId

string

L'identifiant de la requête.

91F93257-7A4A-4BD3-9A7E-2F6EAE6D****

TraceId

string

L'identifiant de trace utilisé pour interroger les détails de l'appel.

0a98a02315955564772843261e****

Data

object

Les données de réponse.

Timer

object

La configuration de la mise à l'échelle planifiée.

EndDate

string

The end date of the short-term scheduled scaling policy.

  • If BeginDate and EndDate are both set to null, the policy is long-term by default.

  • If you specify a date range, for example, BeginDate is set to 2021-03-25 and EndDate is set to 2021-04-25, the policy is effective for one month.

2021-04-25

BeginDate

string

The start date of the short-term scheduled scaling policy.

  • If BeginDate and EndDate are both set to null, the policy is long-term by default.

  • If you specify a date range, for example, BeginDate is set to 2021-03-25 and EndDate is set to 2021-04-25, the policy is effective for one month.

2021-03-25

Schedules

array<object>

The schedules for the scaling policy.

object

The configuration for a specific trigger schedule.

AtTime

string

The time at which the scaling action is triggered. Format: HH:mm.

08:00

TargetReplicas

integer

The target number of instances.

3

MinReplicas

integer

The minimum number of instances.

1

MaxReplicas

integer

The maximum number of instances.

10

Period

string

The recurrence schedule for the scaling policy.

  • * * *: The policy runs at a specified time every day.

  • * * Fri,Mon: The policy runs at a specified time on specific days of a week. You can select multiple days. The time is in the GMT+8 time zone. Valid values:

    • Sun: Sunday

    • Mon: Monday

    • Tue: Tuesday

    • Wed: Wednesday

    • Thu: Thursday

    • Fri: Friday

    • Sat: Saturday

  • 1,2,3,28,31 * *: The policy runs at a specified time on specific days of a month. You can select multiple days. If a month does not have a specific day, such as the 31st, the policy skips that day.

* * *

UpdateTime

integer

L'heure de mise à jour de la stratégie de mise à l'échelle, en millisecondes.

1616642248938

AppId

string

L'identifiant de l'application.

7171a6ca-d1cd-4928-8642-7d5cfe69****

CreateTime

integer

L'heure de création de la stratégie de mise à l'échelle, en millisecondes.

1616642248938

LastDisableTime

integer

L'heure de la dernière désactivation de la stratégie de mise à l'échelle, en millisecondes.

1641882854484

ScaleRuleEnabled

boolean

Indique si la stratégie de mise à l'échelle est activée. Valeurs valides :

  • true : activée.

  • false : désactivée.

true

ScaleRuleType

string

Le type de la stratégie de mise à l'échelle. Valeurs valides :

  • timing : mise à l'échelle planifiée

  • metric : mise à l'échelle basée sur des métriques

  • mix : mise à l'échelle hybride

timing

Metric

object

La configuration de la mise à l'échelle basée sur des métriques.

Metrics

array<object>

The metrics that trigger scaling actions.

object

The configuration for a specific metric trigger.

MetricTargetAverageUtilization

integer

The target value for the specified metric. The unit varies based on the metric type.

  • Target CPU utilization, in percentage.

  • Target memory usage, in percentage.

  • Target queries per second (QPS).

  • Target response time, in milliseconds.

  • The target number of active TCP connections.

  • Target QPS for the public-facing SLB instance.

  • Target response time of the public-facing SLB instance, in milliseconds.

  • Target QPS for the internal SLB instance.

  • Target response time of the internal SLB instance, in milliseconds.

20

MetricType

string

The metric that triggers the scaling policy. Valid values:

  • CPU: CPU utilization.

  • MEMORY: memory usage.

  • QPS: The average queries per second (QPS) per instance over the last minute. This applies only to Java applications.

  • RT: The average response time (RT) of all service interfaces in the application over the last minute. This applies only to Java applications.

  • tcpActiveConn: The average number of active TCP connections per instance over the last 30 seconds.

  • SLB_QPS: The average QPS from the public-facing SLB, per instance, over the last 15 seconds.

  • SLB_RT: The average response time of a public-facing SLB instance over the last 15 seconds.

  • INTRANET_SLB_QPS: The average QPS from the internal SLB, per instance, over the last 15 seconds.

  • INTRANET_SLB_RT: The average response time of an internal SLB instance over the last 15 seconds.

CPU

SlbProject

string

The name of the Log Service Project for SLB access logs.

test

SlbLogstore

string

The name of the Logstore for SLB access logs.

test

Vport

string

The SLB port.

80

SlbId

string

The SLB instance ID.

lb-xxx

MaxReplicas

integer

The maximum number of instances.

3

MinReplicas

integer

The minimum number of instances.

1

ScaleRuleName

string

Le nom de la stratégie de mise à l'échelle.

test

EnableIdle

boolean

Indique si le mode inactif doit être activé.

Message

string

Le message de réponse.

  • success est renvoyé si la requête aboutit.

  • Un message d'erreur est renvoyé si la requête échoue.

success

ErrorCode

string

Le code d'erreur.

  • Ce paramètre n'est renvoyé que si la requête échoue.

  • Pour plus d'informations, consultez la section Codes d'erreur de cette rubrique.

Code

string

Le code d'état HTTP ou un code d'erreur POP.

  • 2xx : la requête a abouti.

  • 3xx : la requête a été redirigée.

  • 4xx : une erreur côté client s'est produite.

  • 5xx : une erreur côté serveur s'est produite.

200

Success

boolean

Indique si la requête a abouti. Valeurs valides :

  • true : la requête a abouti.

  • false : la requête a échoué.

true

Exemples

JSON format

{
  "RequestId": "91F93257-7A4A-4BD3-9A7E-2F6EAE6D****",
  "TraceId": "0a98a02315955564772843261e****",
  "Data": {
    "Timer": {
      "EndDate": "2021-04-25",
      "BeginDate": "2021-03-25",
      "Schedules": [
        {
          "AtTime": "08:00",
          "TargetReplicas": 3,
          "MinReplicas": 1,
          "MaxReplicas": 10
        }
      ],
      "Period": "* * *"
    },
    "UpdateTime": 1616642248938,
    "AppId": "7171a6ca-d1cd-4928-8642-7d5cfe69****",
    "CreateTime": 1616642248938,
    "LastDisableTime": 1641882854484,
    "ScaleRuleEnabled": true,
    "ScaleRuleType": "timing",
    "Metric": {
      "Metrics": [
        {
          "MetricTargetAverageUtilization": 20,
          "MetricType": "CPU",
          "SlbProject": "test",
          "SlbLogstore": "test",
          "Vport": "80",
          "SlbId": "lb-xxx"
        }
      ],
      "MaxReplicas": 3,
      "MinReplicas": 1
    },
    "ScaleRuleName": "test",
    "EnableIdle": false
  },
  "Message": "success",
  "ErrorCode": "",
  "Code": "200",
  "Success": true
}

Codes d'erreur

Code de statut HTTP

Code d'erreur

Message d'erreur

Description

400 InvalidScalingRuleDate.BeginAfterEnd The specified beginning time is later than the ending time. The specified begin date is later than the end date.
400 InvalidScalingRuleDate.Format The specified date is invalid. The specified date is invalid. The correct format is yyyy-MM-dd .
400 InvalidScalingRuleName.NotFound The specified ScalingRuleName does not exist. The specified ScalingRuleName does not exist.
400 InvalidScalingRuleTime.Conflict The specified scaling rule time is invalid. Another schedule has been set for the specified time range. Please set a different time. The specified scaling rule time is invalid. Another schedule has been set for the specified time range. Please set a different time.
400 InvalidScalingRuleTime.Format The specified time is invalid. The specified time is invalid. The correct format is HH:mm .
400 QuotaExceeded.ScalingRuleTime The maximum number of scaling policy trigger time is exceeded. Scaling rule time quota exceeded.
400 NoComputeResourceQuota.Exceed Your compute resource is insufficient. Please contact us to raise the quota.
400 NoComputeResourceQuota.App.Exceed You can create %s instances for each application. Please submit a ticket to raise the quota. You can create %s instances for each application. please join the DingTalk group 32874633 for technical support.
400 NoComputeResourceQuota.User.Exceed Your account is limited to create %s instances. Please submit a ticket to raise the quota. Your account is limited to create %s instances. please join the DingTalk group 32874633 for technical support.
400 System.Upgrading The system is being upgraded. Please try again later.
400 MinReadyInstances.Not.Smaller.Replicas The minimum number of available instances must be less than the number of application instances. The minimum number of available instances must be less than the number of application instances.
400 MinReadyInstanceRatio.Invalid The ratio of minimum available instances must be between 0 and 100.
400 Application.ChangerOrderRunning An application change process is in progress. Please try again later. An application change process is in progress. Please try again later.

Consultez Codes d'erreur pour la liste complète.

Notes de version

Consultez Notes de version pour la liste complète.