すべてのプロダクト
Search
ドキュメントセンター

Serverless App Engine:UpdateApplicationScalingRule

最終更新日:Apr 29, 2026

アプリケーションの auto scaling ポリシーの更新

操作説明

注意事項

アプリケーションを 50 インスタンスを超えてスケーリングするには、SAE テクニカルサポートに連絡してホワイトリストへの追加を依頼してください。詳細については、「お問い合わせ」をご参照ください。

今すぐお試しください

この API を OpenAPI Explorer でお試しください。手作業による署名は必要ありません。呼び出しに成功すると、入力したパラメーターに基づき、資格情報が組み込まれた SDK コードが自動的に生成されます。このコードをダウンロードしてローカルで使用できます。

テスト

RAM 認証

下表に、この API を呼び出すために必要な認証情報を示します。認証情報は、RAM (Resource Access Management) ポリシーを使用して定義できます。以下で各列名について説明します。

  • アクション:特定のリソースに対して実行可能な操作。ポリシー構文ではAction要素として指定します。

  • API:アクションを具体的に実行するための API。

  • アクセスレベル:各 API に対して事前定義されているアクセスの種類。有効な値:create、list、get、update、delete。

  • リソースタイプ:アクションが作用するリソースの種類。リソースレベルでの権限をサポートするかどうかを示すことができます。ポリシーの有効性を確保するため、アクションの対象として適切なリソースを指定してください。

    • リソースレベルの権限を持つ API の場合、必要なリソースタイプはアスタリスク (*) でマークされます。ポリシーのResource要素で対応する ARN を指定してください。

    • リソースレベルの権限を持たない API の場合、「すべてのリソース」と表示され、ポリシーのResource要素でアスタリスク (*) でマークされます。

  • 条件キー:サービスによって定義された条件のキー。このキーにより、きめ細やかなアクセス制御が可能になります。この制御は、アクション単体に適用することも、特定のリソースに対するアクションに適用することもできます。Alibaba Cloud は、サービス固有の条件キーに加えて、すべての RAM 統合サービスに適用可能な一連の共通条件キーを提供しています。

  • 依存アクション:ある特定のアクションを実行するために、前提として実行が必要となる他のアクション。依存アクションの権限も RAM ユーザーまたは RAM ロールに付与する必要があります。

アクション

アクセスレベル

リソースタイプ

条件キー

依存アクション

sae:UpdateApplicationScalingRule

update

*Application

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

なし なし

リクエスト構文

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

リクエストパラメーター

パラメーター

必須 / 任意

説明

AppId

string

必須

アプリケーション ID。

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

ScalingRuleName

string

必須

auto scaling ポリシーの名前。名前は小文字で始まり、小文字、数字、ハイフン (-) のみを含み、長さは 32 文字以内である必要があります。

説明

auto scaling ポリシー作成後の名前の変更はできません。

timer-0800-2100

ScalingRuleTimer

string

任意

スケジュールされたスケーリングポリシーの構成。このパラメーターは、スケジュールされたスケーリングポリシーの場合に必須です。

このパラメーターには以下のフィールドが含まれます。

  • beginDate および endDate:ポリシーの有効期間の開始日と終了日。
    • 両方のパラメーターが null に設定されている場合、ポリシーは常にアクティブになります(デフォルト)。

    • beginDate2021-03-25endDate2021-04-25 に設定すると、ポリシーは 1 ヶ月間有効になります。

  • period:ポリシーの実行スケジュール。有効値:
    • * * *:毎日指定時刻にポリシーを実行します。

    • * * Fri,Mon:週の指定曜日の指定時刻にポリシーを実行します。複数の曜日を選択できます。時刻は UTC + 08:00 タイムゾーンです。有効値:
      • Sun:日曜日

      • Mon:月曜日

      • Tue:火曜日

      • Wed:水曜日

      • Thu:木曜日

      • Fri:金曜日

      • Sat:土曜日

    • 1,2,3,28,31 * *:月の指定日の指定時刻にポリシーを実行します。値の範囲は 1 ~ 31 です。指定された日が当該月に存在しない場合(例:31 日)、その日はスキップされます。

  • schedules:トリガー時刻と対応するターゲットインスタンス数。最大 20 個の時刻ポイントを指定できます。このフィールドには以下のパラメーターが含まれます:
    • atTime:トリガー時刻。形式は HH:mm(例:08:00)です。

    • targetReplicas:アプリケーションインスタンスのターゲット数。値の範囲は 1 ~ 50 です。

      説明

      業務継続性を確保するため、ローリングデプロイ時の最小生存インスタンス数を 1 以上に設定することを推奨します。0 に設定すると、アプリケーションはアップグレード中に中断されます。

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

ScalingRuleMetric

string

任意

メトリクスベースのスケーリングポリシーの構成。このパラメーターは、メトリクスベースのスケーリングポリシーの場合に必須です。

このパラメーターには以下のフィールドが含まれます。

  • maxReplicas:アプリケーションインスタンスの最大数。

  • minReplicas:アプリケーションインスタンスの最小数。

  • metricType:ポリシーをトリガーするメトリック。有効値:
    • CPU:CPU 使用量。

    • MEMORY:メモリ使用量。

    • QPS:Java アプリケーションの単一インスタンスの 1 分間平均秒間クエリ数 (QPS)。

    • RT:Java アプリケーションのすべてのサービスインターフェイスの 1 分間平均レスポンスタイム (RT)。

    • tcpActiveConn:インスタンスあたりの 30 秒間平均アクティブ TCP 接続数。

    • SLB_QPS:インターネット向け SLB インスタンスの 15 秒間平均 QPS(インスタンスあたり)。

    • SLB_RT:インターネット向け SLB インスタンスの 15 秒間平均 RT。

    • INTRANET_SLB_QPS:プライベート向け SLB インスタンスの 15 秒間平均 QPS(インスタンスあたり)。

    • INTRANET_SLB_RT:プライベート向け SLB インスタンスの 15 秒間平均 RT。

  • metricTargetAverageUtilization:指定された metricType のターゲット値。
    • ターゲット CPU 使用率(パーセント)。

    • ターゲットメモリ使用率(パーセント)。

    • ターゲット QPS。

    • ターゲット RT(ミリ秒)。

    • アクティブ TCP 接続数の平均(接続/秒)。

    • インターネット向け SLB インスタンスのターゲット QPS。

    • インターネット向け SLB インスタンスのターゲット RT(ミリ秒)。

    • プライベート向け SLB インスタンスのターゲット QPS。

    • プライベート向け SLB インスタンスのターゲット RT(ミリ秒)。

  • slbId:SLB インスタンス ID。

  • slbProject:Simple Log Service プロジェクト。

  • slbLogstore:Simple Log Service Logstore。

  • vport:SLB のリッスンポート。HTTP および HTTPS がサポートされています。

  • scaleUpRules:スケールアウトルール。

  • scaleDownRules:スケールインルール。

  • step:スケールアウトまたはスケールインアクションのステップサイズ。一度に追加または削除できるインスタンスの最大数を定義します。

  • disabled:スケールインを無効化するかどうかを指定します。スケールインを無効化すると、ピークトラフィック中のリスクを軽減できます。
    • true:スケールインを無効化します。

    • false:スケールインを有効化します(デフォルト値)。

  • stabilizationWindowSeconds:スケーリングアクションのクールダウン時間(秒)。値は 0 ~ 3,600 の整数である必要があります。デフォルトは 0 です。

説明

複数のメトリックを指定した場合、いずれかのメトリックがターゲットに達するとスケールアウトがトリガーされ、インスタンス数は maxReplicas を超えません。スケールインは、すべてのメトリックがターゲットを下回った場合にのみトリガーされ、インスタンス数は 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

任意

ローリングデプロイ中に最低限維持される必要のあるインスタンス数。有効値:

  • このパラメーターを 0 に設定すると、ローリングデプロイ中にアプリケーションがサービス中断を経験します。

  • このパラメーターを -1 に設定すると、システムは推奨値(現在のインスタンス数の 25%)を使用します。たとえば、インスタンス数が 5 の場合、最小生存インスタンス数は 2(5 × 25% = 1.25、切り上げ)になります。

説明

業務継続性を確保するため、ローリングデプロイ時の最小生存インスタンス数を 1 以上に設定することを推奨します。

3

MinReadyInstanceRatio

integer

任意

ローリングデプロイ中に最低限維持される必要のあるインスタンスの割合(パーセント)。有効値:

  • -1:パーセントが使用されていないことを示す初期値。

  • 0 ~ 100:パーセント値(切り上げ)。たとえば、インスタンス数が 5 でこのパラメーターを 50 に設定した場合、最小生存インスタンス数は 3 になります。

説明

MinReadyInstancesMinReadyInstanceRatio の両方を指定し、かつ MinReadyInstanceRatio-1 でない場合、MinReadyInstanceRatio が優先されます。たとえば、MinReadyInstances5MinReadyInstanceRatio50 の場合、システムは 50% を使用して最小生存インスタンス数を計算します。

-1

EnableIdle

boolean

任意

アイドルモードを有効または無効にするかどうかを指定します。

レスポンスフィールド

フィールド

説明

object

返された情報。

RequestId

string

リクエスト ID。

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

TraceId

string

呼び出し詳細を照会するために使用されるトレース ID。

0a98a02315955564772843261e****

Data

object

レスポンスデータ。

Timer

object

スケジュールされたスケーリングの構成。

EndDate

string

短期スケジュールされたスケーリングポリシーの終了日。

  • BeginDate および EndDate の両方が null に設定されている場合、ポリシーはデフォルトで長期的になります。

  • 日付範囲を指定した場合(例:BeginDate が 2021-03-25、EndDate が 2021-04-25)、ポリシーは 1 ヶ月間有効になります。

2021-04-25

BeginDate

string

短期スケジュールされたスケーリングポリシーの開始日。

  • BeginDate および EndDate の両方が null に設定されている場合、ポリシーはデフォルトで長期的になります。

  • 日付範囲を指定した場合(例:BeginDate が 2021-03-25、EndDate が 2021-04-25)、ポリシーは 1 ヶ月間有効になります。

2021-03-25

Schedules

array<object>

スケーリングポリシーのスケジュール。

object

特定のトリガースケジュールの構成。

AtTime

string

スケーリングアクションがトリガーされる時刻。形式:HH:mm

08:00

TargetReplicas

integer

インスタンスのターゲット数。

3

MinReplicas

integer

インスタンスの最小数。

1

MaxReplicas

integer

インスタンスの最大数。

10

Period

string

スケーリングポリシーの繰り返し頻度。

  • * * *:ポリシーは毎日指定時刻に実行されます。

  • * * Fri,Mon:ポリシーは週の指定曜日の指定時刻に実行されます。複数の曜日を選択できます。時刻は GMT+8 タイムゾーンです。有効値:

    • Sun:日曜日

    • Mon:月曜日

    • Tue:火曜日

    • Wed:水曜日

    • Thu:木曜日

    • Fri:金曜日

    • Sat:土曜日

  • 1,2,3,28,31 * *:ポリシーは月の指定日の指定時刻に実行されます。複数の日を選択できます。当該月に指定された日が存在しない場合(例:31 日)、その日はスキップされます。

* * *

UpdateTime

integer

スケーリングポリシーが更新された時刻(ミリ秒)。

1616642248938

AppId

string

アプリケーション ID。

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

CreateTime

integer

スケーリングポリシーが作成された時刻(ミリ秒)。

1616642248938

LastDisableTime

integer

スケーリングポリシーが最後に無効化された時刻(ミリ秒)。

1641882854484

ScaleRuleEnabled

boolean

スケーリングポリシーが有効かどうかを指定します。有効値:

  • true:有効

  • false:無効

true

ScaleRuleType

string

スケーリングポリシーのタイプ。有効値:

  • timing:スケジュールされたスケーリング

  • metric:メトリクスベースのスケーリング

  • mix:ハイブリッドスケーリング

timing

Metric

object

メトリクスベースのスケーリングの構成。

Metrics

array<object>

スケーリングアクションをトリガーするメトリック。

object

特定のメトリックトリガーの構成。

MetricTargetAverageUtilization

integer

指定されたメトリックのターゲット値。単位はメトリックタイプによって異なります。

  • ターゲット CPU 使用率(パーセント)。

  • ターゲットメモリ使用量(パーセント)。

  • ターゲット秒間クエリ数 (QPS)。

  • ターゲット応答時間(ミリ秒)。

  • アクティブ TCP 接続数のターゲット値。

  • パブリック向け SLB インスタンスのターゲット QPS。

  • パブリック向け SLB インスタンスのターゲット応答時間(ミリ秒)。

  • 内部 SLB インスタンスのターゲット QPS。

  • 内部 SLB インスタンスのターゲット応答時間(ミリ秒)。

20

MetricType

string

スケーリングポリシーをトリガーするメトリック。有効値:

  • CPU:CPU 使用率。

  • MEMORY:メモリ使用量。

  • QPS:直近 1 分間のインスタンスあたりの平均秒間クエリ数 (QPS)。Java アプリケーションにのみ適用されます。

  • RT:アプリケーション内のすべてのサービスインターフェイスの直近 1 分間の平均レスポンスタイム (RT)。Java アプリケーションにのみ適用されます。

  • tcpActiveConn:直近 30 秒間のインスタンスあたりの平均アクティブ TCP 接続数。

  • SLB_QPS:直近 15 秒間のパブリック向け SLB インスタンスのインスタンスあたりの平均 QPS。

  • SLB_RT:直近 15 秒間のパブリック向け SLB インスタンスの平均応答時間。

  • INTRANET_SLB_QPS:直近 15 秒間の内部 SLB インスタンスのインスタンスあたりの平均 QPS。

  • INTRANET_SLB_RT:直近 15 秒間の内部 SLB インスタンスの平均応答時間。

CPU

SlbProject

string

SLB アクセスログの Log Service プロジェクト名。

test

SlbLogstore

string

SLB アクセスログの Logstore 名。

test

Vport

string

SLB ポート。

80

SlbId

string

SLB インスタンス ID。

lb-xxx

MaxReplicas

integer

インスタンスの最大数。

3

MinReplicas

integer

インスタンスの最小数。

1

ScaleRuleName

string

スケーリングポリシーの名前。

test

EnableIdle

boolean

アイドルモードを有効にするかどうかを指定します。

Message

string

レスポンスメッセージ。

  • リクエストが成功した場合は success が返されます。

  • リクエストが失敗した場合はエラーメッセージが返されます。

success

ErrorCode

string

エラーコード。

  • このパラメーターは、リクエストが失敗した場合にのみ返されます。

  • 詳細については、本トピックの「エラーコード」セクションをご参照ください。

Code

string

HTTP ステータスコードまたは POP エラーコード。

  • 2xx:リクエストは成功しました。

  • 3xx:リクエストはリダイレクトされました。

  • 4xx:クライアント側のエラーが発生しました。

  • 5xx:サーバー側のエラーが発生しました。

200

Success

boolean

リクエストが成功したかどうかを指定します。有効値:

  • true:リクエストは成功しました。

  • false:リクエストは失敗しました。

true

成功レスポンス

JSONJSON

{
  "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
}

エラーコード

HTTP ステータスコード

エラーコード

エラーメッセージ

説明

400 InvalidScalingRuleDate.BeginAfterEnd The specified beginning time is later than the ending time.
400 InvalidScalingRuleDate.Format The specified date is invalid.
400 InvalidScalingRuleName.NotFound 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.
400 InvalidScalingRuleTime.Format The specified time is invalid.
400 QuotaExceeded.ScalingRuleTime The maximum number of scaling policy trigger time is 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.
400 NoComputeResourceQuota.User.Exceed Your account is limited to create %s instances. Please submit a ticket to raise the quota.
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.
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. 日文说明1

完全なリストについては、「エラーコード」をご参照ください。

変更履歴

完全なリストについては、「変更履歴」をご参照ください。