All Products
Search
Document Center

CloudFlow:Buat jadwal berbasis waktu

Last Updated:Jun 21, 2026

Serverless Workflow memungkinkan Anda menjadwalkan eksekusi alur kerja dengan mengonfigurasi ekspresi cron. Topik ini menjelaskan cara membuat jadwal berbasis waktu untuk Serverless Workflow.

Prasyarat

Alur harus sudah ada.

Buat jadwal di Konsol

  1. Masuk ke Konsol Serverless Workflow.

  2. Buka halaman Flow. Pada daftar alur, klik Flow Name dari alur target.

  3. Di halaman Flows, klik tab Time-based Schedules, lalu di area Time-based Schedule Management, klik Create Time-based Schedule.

  4. Pada panel Create Time-based Schedule, isi parameter, lalu klik OK.

    Parameter

    Aksi

    Contoh

    Time-based schedule name

    Masukkan nama kustom untuk jadwal berbasis waktu.

    schedule-test

    Trigger time configuration

    Pilih metode penjadwalan dan masukkan aturan waktu.

    Dua jenis ekspresi berikut didukung:

    • Cron expression: Gunakan ekspresi cron standar. Untuk informasi selengkapnya, lihat Parameter waktu jadwal.

    • Time interval: Gunakan ekspresi @every.

      Interval dalam menit untuk menjalankan alur kerja.

    Pilih Time interval dan masukkan 1 untuk menjalankan alur kerja setiap menit.

    Payload

    Parameter kustom dalam format JSON.

    {"key": "value"}

    Description

    Masukkan deskripsi untuk jadwal berbasis waktu.

    test schedule

    Enable time-based schedule

    Aktifkan atau nonaktifkan jadwal berbasis waktu.

    Nyalakan sakelar Enable time-based schedule.

    • Setelah membuat jadwal, Anda dapat melihatnya di tab Time-based Schedule alur kerja tersebut.

    • Di tab Executions alur kerja, Anda dapat melihat riwayat eksekusi. Catatan dari pemicu terjadwal yang ditampilkan di tab Executions memiliki nama yang diawali dengan scheduled-exec, status Succeeded, dan waktu eksekusi dalam milidetik. Dalam contoh ini, eksekusi baru muncul setiap menit.

Buat jadwal menggunakan CLI

Untuk membuat jadwal berbasis waktu menggunakan Alibaba Cloud CLI, Anda harus terlebih dahulu menginstal dan mengonfigurasinya. Untuk informasi selengkapnya, lihat Apa itu Alibaba Cloud CLI?.

  1. (Opsional) Jalankan perintah berikut untuk melihat parameter permintaan untuk operasi CreateSchedule.

    aliyun fnf CreateSchedule help

    Output yang diharapkan:

    Alibaba Cloud Command Line Interface Version 3.0.45
    Product: fnf (FunctionFlow)
    Link:    https://xxxxxxxx.html
    Parameters:
      --CronExpression String  Required
      --FlowName       String  Required
      --ScheduleName   String  Required
      --Description    String  Optional
      --Enable         Boolean Optional
      --Payload        String  Optional
      --RequestId      String  Optional
  2. Jalankan perintah berikut untuk membuat jadwal berbasis waktu.

    aliyun fnf CreateSchedule --FlowName test --ScheduleName "schedule-test" --CronExpression "@every 1m" --Payload "{\"key\":\"value\"}" --Description "test schedule" --Enable true

    Output yang diharapkan:

    {
            "CreatedTime": "2024-06-26T03:36:57Z",
            "CronExpression": "@every 1m",
            "Description": "test schedule",
            "Enable": true,
            "LastModifiedTime": "2024-06-26T03:36:57Z",
            "Payload": "{\"key\":\"value\"}",
            "RequestId": "c7034d83-d1ba-648c-f05c-156439a857d7",
            "ScheduleId": "b888a48f-229d-4b35-adc6-5c63a37cf3b1",
            "ScheduleName": "schedule-test"
    }

Parameter waktu jadwal

Jadwal berbasis waktu menggunakan parameter berikut:

{
    payload: "payload"
    cronExpression: "cronExpression"
    enable: true|false
}
  • payload: Input kustom untuk eksekusi terjadwal. Payload harus dalam format JSON.

  • cronExpression: Jadwal untuk alur kerja. Dua jenis ekspresi berikut didukung.

    Catatan

    Interval lebih pendek dari 1 menit tidak valid.

    • @every Nilai Satuan

      Ekspresi ini menjalankan alur kerja pada interval tetap. Nilai harus berupa bilangan bulat positif dan satuan harus "m" (menit).

      Contoh skenario

      Ekspresi

      Jalankan setiap 5 menit

      @every 5m

      Jalankan setiap 1,5 jam

      @every 90m

    • Ekspresi waktu

      • Cron expression

        Secara default, ekspresi cron menggunakan Coordinated Universal Time (UTC). Format standar ekspresi cron adalah: Seconds Minutes Hours Day-of-month Month Day-of-week.

      • Ekspresi zona waktu

        Untuk menjalankan tugas dalam zona waktu tertentu, tambahkan awalan ekspresi dengan CRON_TZ=<TIMEZONE>. Misalnya, untuk memicu alur pada pukul 04.00 pada hari pertama setiap bulan di zona waktu Asia/Shanghai, Anda dapat menggunakan CRON_TZ=Asia/Shanghai 0 0 4 1 * *.

        Catatan

        Jika zona waktu Anda menerapkan Daylight Saving Time (DST), Anda mungkin melihat eksekusi ganda atau terlewat selama transisi DST. Kami menyarankan agar Anda menghindari penjadwalan eksekusi selama periode transisi tersebut.

      Tabel berikut menyediakan contoh umum ekspresi waktu. Misalnya, jika Anda ingin menjadwalkan alur kerja pada pukul 12.00 waktu Beijing, ekspresi cron yang sesuai adalah 0 0 4 * * *, dan ekspresi zona waktunya adalah CRON_TZ=Asia/Shanghai 0 0 12 * * *.

      Contoh

      Cron expression

      Ekspresi zona waktu

      Jadwalkan alur kerja untuk dijalankan pukul 12.00 setiap hari.

      0 0 4 * * *

      CRON_TZ=Asia/Shanghai 0 0 12 * * *

      Jadwalkan alur kerja untuk dijalankan pukul 12.30 setiap hari.

      0 30 4 * * *

      CRON_TZ=Asia/Shanghai 0 30 12 * * *

      Jalankan alur kerja pada menit ke-26, ke-29, dan ke-33 setiap jam.

      0 26,29,33 * * * *

      CRON_TZ=Asia/Shanghai 0 26,29,33 * * * *

      Jadwalkan alur kerja untuk dijalankan pukul 12.30 setiap hari dari Senin hingga Jumat.

      0 30 4 ? * MON-FRI

      CRON_TZ=Asia/Shanghai 0 30 12 ? * MON-FRI

      Jadwalkan alur kerja untuk dijalankan setiap 5 menit dari pukul 12.00 hingga 14.00, Senin hingga Jumat.

      0 0/5 4-6 ? * MON-FRI

      CRON_TZ=Asia/Shanghai 0 0/5 12-14 ? * MON-FRI

      Jadwalkan alur kerja untuk dijalankan pukul 12.00 setiap hari dari Januari hingga April.

      0 0 4 ? JAN,FEB,MAR,APR *

      CRON_TZ=Asia/Shanghai 0 0 12 ? JAN,FEB,MAR,APR *

      • Deskripsi bidang

        Bidang

        Rentang nilai

        Karakter khusus yang diizinkan

        Seconds

        0–59

        Tidak didukung

        Minutes

        0–59

        , - * /

        Hours

        0–23

        , - * /

        Day-of-month

        1–31

        , - * ? /

        Month

        1–12 atau JAN–DEC

        , - * /

        Day-of-week

        1–7 atau MON–SUN

        , - * ?

      • Deskripsi karakter khusus

        Karakter

        Definisi

        Contoh

        *

        Menunjukkan nilai apa pun dalam bidang tersebut.

        Pada bidang Minutes, * berarti aksi dilakukan setiap menit.

        ,

        Menunjukkan daftar nilai.

        Pada bidang Day-of-week, MON,WED,FRI menunjukkan Senin, Rabu, dan Jumat.

        -

        Menunjukkan rentang nilai.

        Pada bidang Hours, 10-12 menunjukkan rentang waktu dari pukul 10.00 hingga 12.00 UTC.

        ?

        Menunjukkan tidak ada nilai spesifik.

        Gunakan ini ketika Anda menentukan nilai untuk Day-of-month atau Day-of-week, tetapi tidak keduanya. Misalnya, jika Anda menentukan tanggal di Day-of-month, gunakan ? pada bidang Day-of-week.

        /

        Menunjukkan kenaikan. n/m berarti kenaikan sebesar m dimulai dari n.

        Pada bidang Minutes, 3/5 menjalankan alur kerja setiap 5 menit, dimulai dari menit ke-3 setiap jam.

Format input

Ketika jadwal berbasis waktu memicu alur kerja, layanan meneruskan objek JSON berikut sebagai input:

{
  "triggerTime": "2020-01-01T00:00:00Z",
  "triggerName": "time-trigger",
  "payload": {
    "key": "value",
    "key_int": 1
  }
}
  • triggerTime: Waktu saat alur kerja dijadwalkan untuk dijalankan. Alur kerja mungkin dijadwalkan lebih dari sekali pada waktu yang ditentukan. Anda dapat menggunakan nilai ini untuk deduplikasi.

  • triggerName: Nama jadwal berbasis waktu.

  • payload: Input kustom yang Anda definisikan dalam konfigurasi jadwal. Anda dapat mengakses nilai dari objek ini dalam definisi alur Anda menggunakan ekspresi, seperti $.payload.key. Untuk informasi selengkapnya, lihat Input dan output.