全部產品
Search
文件中心

Serverless App Engine:建立定時啟停規則

更新時間:Nov 13, 2025

為了節省成本,您可以為應用設定定時啟停規則。處於停止狀態的應用不產生計算資源的費用。

  • 如果需要手動批量啟停應用,請參考對應用進行大量操作

  • 如果需要定時批量啟停應用,請參考本文。

1. 為OOS賦予SAE完整許可權

應用定時啟停功能依賴系統營運管理OOS,請先建立OOSServiceRole RAM角色,並為該角色賦予管理SAE的完整許可權AliyunSAEFullAccess。

  1. 使用Resource Access Management員登入RAM控制台

  2. 在左側導覽列,選擇身份管理 > 角色

  3. 角色頁面,單擊建立角色

    image

  4. 建立角色頁面,選擇信任主體類型雲端服務,然後在信任主體名稱中搜尋OOS並選擇系統營運管理,單擊確定

  5. 在彈出的對話方塊中,輸入角色名稱OOSServiceRole。在許可權管理頁簽,單擊新增授權,在權限原則地區,搜尋AliyunSAEFullAccess並選中該許可權,單擊確認新增授權

2. 管理定時啟停規則

  1. SAE命名空間中,在頂部選擇目標地區,點擊目標命名空間名稱跳轉到命名空間詳情頁。

  2. 在左側導覽列,單擊定時啟停規則,然後在定時啟停規則頁面,單擊建立定時啟停規則

  3. 建立定時啟停規則面板,配置相關資訊,然後單擊確定

    配置項

    說明

    規則名稱

    自訂的定時啟停規則名稱。

    觸發動作

    • 大量啟動應用:大量啟動本命名空間下選中的應用。

    • 大量停止應用:大量停止本命名空間下選中的應用。

    執行頻率

    • 僅執行一次:在指定日期和時間執行一次後不再重複執行。

    • 定期執行:按照指定的日期和時間迴圈執行,使用Crontab運算式定義執行時間,各欄位的取值範圍如下所示

      • 分(分鐘):[0, 59]。

      • 時(小時):[0, 23],0表示午夜0時。

      • 日(每個月的具體日期):[1, 31]。

      • 月:[1, 12]或[JAN, DEC],不可修改。

      • 周(星期):[1, 7]或[Sun, Sat]。1表示星期日,7表示星期六。例如設定觸發時間為星期二、四、六,則需輸入3,5,7Tue,Thu,Sat

      說明

      [1, 7]表示取值範圍,如果您在星期欄位中輸入1,7則表示觸發時間僅為星期日和星期六兩天。

    執行前通知配置

    配置一個DingTalk機器人Webhook地址,SAE將在每次開始執行定時任務前向此處指定的DingTalk機器人發送通知,方便您第一時間擷取系統營運動作資訊。DingTalk機器人的自訂關鍵詞需要設定為SAE,具體操作,請參見擷取DingTalk機器人Webhook地址

    觸發的應用列表

    • 啟停全部應用:啟動或停止目標命名空間內的所有應用。在每次執行定時啟停任務之前,將自動掃描最新的應用列表,然後再執行啟停操作。

    • 啟停部分應用:選中啟停部分應用後,在下拉框中選擇需要執行啟停操作的應用類型,然後選中需要啟停的目標應用程式名稱旁的複選框。

    規則建立成功後,可以在定時啟停規則頁面查看,您也可以針對已建立的規則進行停用編輯刪除的操作。

如何編寫Crontab運算式

藉助Crontab運算式,可以定義更靈活的定時啟停規則、觸發時間和迴圈規律。下表展示了一些使用Crontab運算式的案例:

含義

填寫方法

Crontab運算式

每周一至周五22:30

3022?*2,3,4,5,6

30 22 ? * 2,3,4,5,6

每個月第5日、第15日和第25日的0時

005,15,25*?

0 0 5,15,25 * ?

使用Crontab運算式時請遵循以下注意事項:

  • 只能按日或周指定啟停觸發時間,如果指定了其中一個,另一個則必須填寫萬用字元?,表示不加限制。例如,如果指定每個月第1日、第2日,則周必須填寫?

  • 在Crontab運算式內必須使用英文半形字元,例如英文萬用字元星號(*)、問號(?)。

  • 枚舉值之間用英文半形逗號(,)分隔。

  • 值的區間用短劃線(-)表示,例如:日填寫1-5,表示第1日~第5日。

  • 填寫周時,1表示星期日,2表示星期一,以此類推,7表示星期六,例如:每周從星期一到星期五的數字為2~6。