2017-07-28 23 views
0

我使用AWS Lambda和ServerLess框架使用.net核心構建Scheduler Application + API。使用AWS Lambda API代理的調度程序

我創建了一個Web API控制器和一個執行事務處理並返回結果的方法。當我使用API​​端點訪問我的方法時,一切正常。

現在我想爲相同的方法設置調度器,以便它每5小時執行一次。
我在serverless.yml文件添加以下行:

functions: 
    mvc: 
    handler: TestApplication::TestApplication.src.Infrastructure.EntryPoints.LambdaMvcEntryPoint::FunctionHandlerAsync 
    events: 
     - http: 
      path: "/{proxy+}" 
      method: "ANY" 

有沒有人有一個想法如何設置代理API的情況下,調度?

+0

您好,歡迎StackOverflow上。請花一些時間閱讀幫助頁面,尤其是名爲[「我可以詢問什麼主題?」(http://stackoverflow.com/help/on-topic)和[「我應該問什麼類型的問題避免問?「](http://stackoverflow.com/help/dont-ask)。更重要的是,請閱讀[堆棧溢出問題清單](http://meta.stackexchange.com/q/156810/204922)。您可能還想了解[最小,完整和可驗證示例](http://stackoverflow.com/help/mcve) – Luca

+0

我重新構造了問題並設置了代碼段的格式。 – zx485

回答

0

在您的方案中,您可以在AWS cloudwatch中設置表達式,並將您的lambda函數指向該cloudwatch。

轉到AWS控制檯 - >點擊拉姆達功能 - >點擊觸發 - >添加觸發器 - >選擇AWS CloudWatch的 - >設置表達

+0

感謝您的回覆。我們無法訪問AWS控制檯。我們只需要從serverless.yml文件進行管理。 –

1

你可以在你的serverless.yml通過增加你的活動schedule

文檔:https://serverless.com/framework/docs/providers/aws/events/schedule/

基本上,你的serverless.yml看起來就像這樣......

functions: 
    mvc: 
    handler: TestApplication::TestApplication.src.Infrastructure.EntryPoints.LambdaMvcEntryPoint::FunctionHandlerAsync 
    events: 
     - http: 
      path: "/{proxy+}" 
      method: "ANY" 
     - schedule: 
      rate: rate(5 hours) 
      enabled: true 
相關問題