All Products
Search
Document Center

Serverless App Engine:UpdateApplicationScalingRule

Last Updated:Jun 11, 2026

Memperbarui kebijakan penskalaan otomatis untuk aplikasi.

Deskripsi operasi

Usage notes

To scale an application beyond 50 instances, contact SAE technical support to be added to the allowlist. For details, see Contact us.

Coba sekarang

Coba API ini di OpenAPI Explorer tanpa perlu penandatanganan manual. Panggilan yang berhasil akan secara otomatis menghasilkan contoh kode SDK sesuai dengan parameter Anda. Unduh kode tersebut dengan kredensial bawaan yang aman untuk penggunaan lokal.

Test

RAM authorization

Tabel berikut menjelaskan otorisasi yang diperlukan untuk memanggil API ini. Anda dapat menentukannya dalam kebijakan Resource Access Management (RAM). Kolom pada tabel dijelaskan sebagai berikut:

  • Action: Aksi yang dapat digunakan dalam elemen Action pada pernyataan kebijakan izin RAM untuk memberikan izin guna melakukan operasi tersebut.

  • API: API yang dapat Anda panggil untuk melakukan aksi tersebut.

  • Access level: Tingkat akses yang telah ditentukan untuk setiap API. Nilai yang valid: create, list, get, update, dan delete.

  • Resource type: Jenis resource yang mendukung otorisasi untuk melakukan aksi tersebut. Ini menunjukkan apakah aksi tersebut mendukung izin tingkat resource. Resource yang ditentukan harus kompatibel dengan aksi tersebut. Jika tidak, kebijakan tersebut tidak akan berlaku.

    • Untuk API dengan izin tingkat resource, jenis resource yang diperlukan ditandai dengan tanda bintang (*). Tentukan Nama Sumber Daya Alibaba Cloud (ARN) yang sesuai dalam elemen Resource pada kebijakan.

    • Untuk API tanpa izin tingkat resource, ditampilkan sebagai All Resources. Gunakan tanda bintang (*) dalam elemen Resource pada kebijakan.

  • Condition key: Kunci kondisi yang didefinisikan oleh layanan. Kunci ini memungkinkan kontrol granular, berlaku baik hanya untuk aksi maupun untuk aksi yang terkait dengan resource tertentu. Selain kunci kondisi spesifik layanan, Alibaba Cloud menyediakan serangkaian common condition keys yang berlaku di semua layanan yang didukung RAM.

  • Dependent action: Aksi dependen yang diperlukan untuk menjalankan aksi tersebut. Untuk menyelesaikan aksi tersebut, pengguna RAM atau role RAM harus memiliki izin untuk melakukan semua aksi dependen.

Action

Access level

Resource type

Condition key

Dependent action

sae:UpdateApplicationScalingRule

update

*Application

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

None None

Sintaks permintaan

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

Parameter permintaan

Parameter

Type

Required

Description

Example

AppId

string

Yes

ID aplikasi.

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

ScalingRuleName

string

Yes

Nama kebijakan penskalaan otomatis. Nama harus diawali dengan huruf kecil, hanya boleh berisi huruf kecil, angka, dan tanda hubung (-), serta panjangnya tidak boleh lebih dari 32 karakter.

Catatan

Anda tidak dapat mengubah nama kebijakan penskalaan otomatis setelah dibuat.

timer-0800-2100

ScalingRuleTimer

string

No

Konfigurasi kebijakan penjadwalan penskalaan. Parameter ini wajib diisi untuk kebijakan penjadwalan penskalaan.

Parameter ini mencakup bidang berikut:

  • beginDate dan endDate: Tanggal mulai dan berakhirnya periode efektif kebijakan.

    • Jika kedua parameter diatur ke null, kebijakan akan selalu aktif. Ini adalah nilai default.

    • Jika Anda mengatur beginDate ke 2021-03-25 dan endDate ke 2021-04-25, kebijakan akan berlaku selama satu bulan.

  • period: Jadwal eksekusi kebijakan. Nilai valid:

    • * * *: Menjalankan kebijakan pada pengatur waktu tertentu setiap hari.

    • * * Fri,Mon: Menjalankan kebijakan pada pengatur waktu tertentu di hari-hari tertentu dalam seminggu. Anda dapat memilih beberapa hari. Waktu menggunakan zona waktu UTC+8. Nilai valid:

      • Sun: Minggu

      • Mon: Senin

      • Tue: Selasa

      • Wed: Rabu

      • Thu: Kamis

      • Fri: Jumat

      • Sat: Sabtu

    • 1,2,3,28,31 * *: Menjalankan kebijakan pada pengatur waktu tertentu di hari-hari tertentu dalam sebulan. Nilai berkisar dari 1 hingga 31. Jika hari yang ditentukan tidak ada dalam bulan tertentu (misalnya, tanggal 31), kebijakan akan melewatkannya.

  • schedules: Waktu Pemicu dan jumlah target instans yang sesuai. Anda dapat menentukan hingga 20 titik waktu. Bidang ini mencakup parameter berikut:

    • atTime: Waktu Pemicu. Formatnya adalah HH:mm, misalnya 08:00.

    • targetReplicas: Jumlah target instans aplikasi. Nilai berkisar dari 1 hingga 50.

      Catatan

      Untuk memastikan kelangsungan bisnis, atur jumlah minimum instans yang bertahan untuk setiap penyebaran bergulir ke 1 atau lebih tinggi. Jika Anda mengatur parameter ini ke 0, aplikasi Anda akan terganggu selama peningkatan.

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

ScalingRuleMetric

string

No

Konfigurasi kebijakan penskalaan berbasis data deret waktu. Parameter ini wajib diisi untuk kebijakan penskalaan berbasis data deret waktu.

Parameter ini mencakup bidang berikut:

  • maxReplicas: Jumlah maksimum instans aplikasi.

  • minReplicas: Jumlah minimum instans aplikasi.

  • metricType: Data deret waktu yang menjadi Pemicu kebijakan. Nilai valid:

    • CPU: Penggunaan CPU.

    • MEMORY: Penggunaan memori.

    • QPS: Rata-rata QPS dari satu instans aplikasi Java selama periode 1 menit.

    • RT: Rata-rata RT dari semua antarmuka layanan aplikasi Java selama periode 1 menit.

    • tcpActiveConn: Rata-rata jumlah koneksi TCP aktif per instans selama periode 30 detik.

    • SLB_QPS: Rata-rata QPS dari SLB yang menghadap internet, diukur per instans selama periode 15 detik.

    • SLB_RT: Rata-rata RT dari SLB yang menghadap internet selama periode 15 detik.

    • INTRANET_SLB_QPS: Rata-rata QPS dari SLB yang menghadap internal, diukur per instans selama periode 15 detik.

    • INTRANET_SLB_RT: Rata-rata RT dari SLB yang menghadap internal selama periode 15 detik.

  • metricTargetAverageUtilization: Nilai target untuk metricType yang ditentukan.

    • Target penggunaan CPU, dalam persen.

    • Target penggunaan memori, dalam persen.

    • Target QPS.

    • Target RT, dalam milidetik.

    • Rata-rata jumlah koneksi TCP aktif, dalam koneksi/detik.

    • Target QPS SLB yang menghadap internet.

    • Target RT SLB yang menghadap internet, dalam milidetik.

    • Target QPS SLB yang menghadap internal.

    • Target RT SLB yang menghadap internal, dalam milidetik.

  • slbId: ID SLB.

  • slbProject: Proyek Simple Log Service.

  • slbLogstore: Penyimpanan log Simple Log Service.

  • vport: Port pendengaran SLB. HTTP dan HTTPS didukung.

  • scaleUpRules: Aturan penskalaan keluar.

  • scaleDownRules: Aturan penskalaan masuk.

  • step: Ukuran langkah untuk aksi penskalaan keluar atau masuk. Nilai ini menentukan jumlah maksimum instans yang dapat ditambahkan atau dihapus sekaligus.

  • disabled: Apakah akan menonaktifkan penskalaan masuk. Menonaktifkan penskalaan masuk mencegah aplikasi melakukan penskalaan masuk, yang dapat mengurangi risiko selama Trafik puncak. Nilai valid:

    • true: Menonaktifkan penskalaan masuk.

    • false: Mengaktifkan penskalaan masuk. Ini adalah nilai default.

  • stabilizationWindowSeconds: Periode cooldown, dalam detik, untuk aksi penskalaan. Nilai harus berupa bilangan bulat dari 0 hingga 3600. Nilai default: 0.

Catatan

Jika Anda menentukan beberapa data deret waktu, penskalaan keluar akan dipicu ketika data deret waktu apa pun mencapai targetnya. Jumlah instans tidak akan melebihi maxReplicas. Penskalaan masuk hanya dipicu ketika semua data deret waktu berada di bawah targetnya. Jumlah instans tidak akan turun di bawah 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

No

Jumlah minimum instans yang harus tetap tersedia selama penyebaran bergulir. Nilai valid:

  • Jika Anda mengatur parameter ini ke 0, aplikasi Anda akan mengalami gangguan layanan selama penyebaran bergulir.

  • Jika Anda mengatur parameter ini ke -1, sistem akan menggunakan nilai yang direkomendasikan, yaitu 25% dari jumlah instans saat ini. Misalnya, jika Anda memiliki 5 instans, jumlah minimum instans yang bertahan adalah 2 (5 × 25% = 1,25, dibulatkan ke atas).

Catatan

Untuk memastikan kelangsungan bisnis, atur jumlah minimum instans yang bertahan untuk setiap penyebaran bergulir ke 1 atau lebih tinggi.

3

MinReadyInstanceRatio

integer

No

Persentase minimum instans yang harus tetap tersedia selama penyebaran bergulir. Nilai valid:

  • -1: Nilai awal yang menunjukkan bahwa persentase tidak digunakan.

  • 0 hingga 100: Persentase yang dibulatkan ke atas. Misalnya, jika Anda memiliki 5 instans dan mengatur parameter ini ke 50, jumlah minimum instans yang bertahan adalah 3.

Catatan

Jika Anda menentukan MinReadyInstances dan MinReadyInstanceRatio, dan MinReadyInstanceRatio bukan -1, MinReadyInstanceRatio akan diutamakan. Misalnya, jika MinReadyInstances diatur ke 5 dan MinReadyInstanceRatio diatur ke 50, sistem akan menggunakan 50% untuk menghitung jumlah minimum instans yang bertahan.

-1

EnableIdle

boolean

No

Apakah akan mengaktifkan mode idle.

ScalingRuleType

string

No

弹性伸缩策略类型。取值说明如下:

  • timing:定时弹性。

  • metric:监控指标弹性。

  • mix:混合弹性。

Catatan
  • 如果选择定时弹性,ScalingRuleTimer 字段为必填项。

  • 如果选择监控指标弹性,ScalingRuleMetric 字段为必填项。

  • 如果选择混合弹性,ScalingRuleMetric 字段为必填项,ScalingRuleTimer 字段和 ScalingRuleMetric 字段也可以按需同时填写。

timing

Elemen respons

Element

Type

Description

Example

object

The returned information.

RequestId

string

The request ID.

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

TraceId

string

The trace ID used to query call details.

0a98a02315955564772843261e****

Data

object

The response data.

Timer

object

The configuration for scheduled scaling.

EndDate

string

The end date of the short-term scheduled scaling policy. The following rules apply:

  • If both BeginDate and EndDate are set to null, the policy runs long term. This is the default behavior.

  • If you specify dates, for example, set BeginDate to 2021-03-25 and EndDate to 2021-04-25, the policy is effective for 1 month.

2021-04-25

BeginDate

string

The start date of the short-term scheduled scaling policy. The following rules apply:

  • If both BeginDate and EndDate are set to null, the policy runs long term. This is the default behavior.

  • If you specify dates, for example, set BeginDate to 2021-03-25 and EndDate to 2021-04-25, the policy is effective for 1 month.

2021-03-25

Schedules

array<object>

The specific times each day the policy is triggered.

object

The details of a scheduled action.

AtTime

string

The trigger time in HH:mm format.

08:00

TargetReplicas

integer

The number of target 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 scheduled scaling policy.

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

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

    • Sun: Sunday

    • Mon: Monday

    • Tue: Tuesday

    • Wed: Wednesday

    • Thu: Thursday

    • Fri: Friday

    • Sat: Saturday

  • 1,2,3,28,31 * *: The policy is executed at a specified time on specified days of a month. You can select multiple days. Valid values: [1, 31]. If a month does not have a specified day, such as the 31st, the policy is not executed on that day.

* * *

UpdateTime

integer

The time when the scaling policy was updated, in milliseconds.

1616642248938

AppId

string

The application ID.

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

CreateTime

integer

The time when the scaling policy was created, in milliseconds.

1616642248938

LastDisableTime

integer

The time when the scaling policy was last disabled, in milliseconds.

1641882854484

ScaleRuleEnabled

boolean

Specifies whether the scaling policy is enabled. Valid values:

  • true: Enabled.

  • false: Disabled.

true

ScaleRuleType

string

The type of the scaling policy. Valid values:

  • timing: scheduled scaling

  • metric: metric-based scaling

  • mix: hybrid scaling

timing

Metric

object

The configuration for metric-based scaling.

Metrics

array<object>

The list of metric-based scaling policies.

object

The metric data.

MetricTargetAverageUtilization

integer

The target value of the metric.

  • CPU utilization. Unit: percent.

  • Memory usage. Unit: percent.

  • QPS. Unit: per second.

  • Response time. Unit: milliseconds.

  • The average number of active TCP connections. Unit: connections.

  • Public SLB QPS. Unit: per second.

  • Public SLB response time. Unit: milliseconds.

  • Private SLB QPS. Unit: per second.

  • Private SLB response time. Unit: milliseconds.

20

MetricType

string

The metric that triggers the scaling policy. Valid values:

  • CPU: CPU utilization.

  • MEMORY: memory usage.

  • QPS: the average QPS of a single instance of a Java application over 1 minute.

  • RT: the average response time of all service interfaces for a Java application over 1 minute.

  • tcpActiveConn: the average number of active TCP connections of a single instance over 30 seconds.

  • SLB_QPS: the average public SLB QPS of a single instance over 15 seconds.

  • SLB_RT: the average public SLB response time over 15 seconds.

  • INTRANET_SLB_QPS: the average private SLB QPS of a single instance over 15 seconds.

  • INTRANET_SLB_RT: the average private SLB response time over 15 seconds.

CPU

SlbProject

string

The SLB access log project.

test

SlbLogstore

string

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

The name of the scaling policy.

test

EnableIdle

boolean

Specifies whether to enable idle mode.

Message

string

The response message.

  • success is returned if the request is successful.

  • An error message is returned if the request fails.

success

ErrorCode

string

The error code.

  • This parameter is returned only if the request fails.

  • For more information, see the Error codes section in this topic.

Code

string

The HTTP status code or a POP error code.

  • 2xx: The request was successful.

  • 3xx: The request was redirected.

  • 4xx: A client-side error occurred.

  • 5xx: A server-side error occurred.

200

Success

boolean

Specifies whether the request was successful. Valid values:

  • true: The request was successful.

  • false: The request failed.

true

Contoh

Respons sukses

JSONformat

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

Kode kesalahan

HTTP status code

Error code

Error message

Description

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.

Lihat Error Codes untuk daftar lengkap.

Catatan rilis

Lihat Release Notes untuk daftar lengkap.