是否可以在Azure webjob中爲單個非觸發函數設置單獨的日程安排?我問,因爲我有六項個人任務,我想在一天的不同時間以不同的時間間隔運行,並且不想爲每個任務創建一個單獨的項目。Azure webjob函數的單獨計劃?
回答
是的,你可以使用TimerTriggerAttribute
下面是一個示例代碼:
public class Program
{
static void Main(string[] args)
{
JobHostConfiguration config = new JobHostConfiguration();
// Add Triggers for Timer Trigger.
config.UseFiles(filesConfig);
config.UseTimers();
JobHost host = new JobHost(config);
host.RunAndBlock();
}
// Function triggered by a timespan schedule every 15 sec.
public static void TimerJob([TimerTrigger("00:00:15")] TimerInfo timerInfo,
TextWriter log)
{
log.WriteLine("1st scheduled job fired!");
}
// Function triggered by a timespan schedule every minute.
public static void TimerJob([TimerTrigger("00:01:00")] TimerInfo timerInfo,
TextWriter log)
{
log.WriteLine("2nd scheduled job fired!");
}
}
您還可以使用cron表達式來指定觸發功能:
這對Azure.Storage大於5.0.2存在依賴性問題,將不會安裝。我正在使用最新的Storage 6.2.0,需要和備用解決方案。 – 2016-03-15 15:38:17
但整個Webjob SDK與Azure.Storage <= 5.0.2存在依賴關係 – Thomas 2016-03-15 20:21:04
正確,我最終在https://www.myget.org/F/azure-appservice上使用了預發佈版本的Azure App Service nuget源代碼/api/v3/index.json TimerJob非常易於使用。 :) – 2016-03-16 17:31:46
您可以使用Thread.Sleep()在每次迭代結束時暫停的無限循環編寫普通的舊控制檯應用程序。每次循環喚醒時,它都會檢查它在內部保存的時間表,並調用當時應該運行的任何函數。時間表可以存儲在app.config中,以便您可以在不重新編譯WebJob的情況下對其進行更改,只需上傳新的app.config並重新啓動即可。
或者如果您願意,可以省略無限循環並以固定的時間間隔(例如每30分鐘一次)安排WebJob,並在每次運行時檢查其內部時間表。
我最終使用Quartz.net連續作業調度web作業內部的各種活動。這工作得很好。
- 1. Azure WebJob未按計劃運行
- 2. Azure的計劃WebJob說不完的狀態
- 3. 計劃的Azure WebJob Scheduler日誌突然報告401 - 未授權
- 4. 發佈帶有計劃錯誤的Azure Webjob
- 5. Azure函數超時消耗計劃
- 6. 計劃付款的最佳選項:天藍色調度程序,WebJob或Azure函數或工作人員角色?
- 7. 使用帶有QueueTrigger的Azure WebJob,設置計劃是否有任何影響?
- 8. Azure Web App計劃
- 9. .NET Core中的Azure WebJob
- 10. Azure函數動態服務計劃和隊列觸發器
- 11. 按計劃還原Azure SQL數據庫
- 12. 計劃在析構函數
- 13. 計劃多元函數
- 14. Azure WebJobs計劃程序
- 15. Microsoft Azure服務計劃
- 16. 根據免費層應用程序服務計劃,Aure Webjob與Azure功能的成本計算?
- 17. Azure WebJob參數綁定備忘錄
- 18. 在App Service計劃和消費計劃中運行的Azure函數中的行爲差異。爲什麼?
- 19. CRON計劃的WebJob突然退出被稱爲
- 20. 無法安排azure webjob
- 21. Azure Webjob TimerTrigger不起作用
- 22. 如何部署F#Azure WebJob?
- 23. Azure WebJob最佳方法
- 24. Azure WebJob訪問被拒絕
- 25. Azure WebJob託管環境
- 26. Azure WebJob部署錯誤MissingRegistrationForLocation
- 27. Azure WebJob部署失敗
- 28. letsencrypt azure webjob掛起重啓
- 29. Azure Webjob不斷被刪除
- 30. azure-webjobs-sdk-extensions vs triggered Webjob
對不起。不明白。你想要一個持續運行的webjob內部有不同的子作業嗎?每個分工都有不同的時間表? – 2015-04-01 06:26:58
一個webjob可以暴露各種功能。在我的情況下,我希望所有這些都被安排,而不是觸發。因此,我有用NoAutomaticTrigger屬性裝飾的多個功能,並希望以不同的時間表觸發每個功能。 – 2015-04-01 12:52:17
在像你這樣的情況下,我使用了一個連續運行的控制檯應用程序,對內部和定製的活動進行管理。 – 2015-04-02 12:01:37