如何在serverless.yml计划事件中添加多个目标

时间:2018-10-02 06:04:37

标签: amazon-web-services aws-lambda serverless-framework

我正在尝试从Cloudwatch事件调用多个lambda,我不确定如何使用serverless.yml添加其他目标lambda。 下面的代码仅添加一个目标,但我想要多个目标,从控制台,我可以在触发了不同Lambda的位置添加多个目标

error[E0597]: `fib_p` does not live long enough
  --> src/main.rs:12:15
   |
8  |     fib = Box::new(|n: u64| {
   |                    -------- capture occurs here
...
12 |             (&fib_p.borrow())(n - 2) + (&fib_p.borrow())(n - 1)
   |               ^^^^^ borrowed value does not live long enough
...
19 | }
   | - borrowed value dropped before borrower
   |
   = note: values in a scope are dropped in the opposite order they are created

我可以从控制台添加多个目标,如何使用yml来实现 enter image description here

1 个答案:

答案 0 :(得分:2)

修改:
我现在知道您的目标是创建一个lambda加热系统。
您可以为此使用非常好的serverless-plugin-warmup。它确实以您尝试的方式实现了您要实现的目标。


serverless.yml中函数声明中的events属性是一个列表。您可以添加一些事件来触发您的lambda:

functions:
  yourFunction:
    handler: yourFunction.handler
      events:
        - schedule:
              name: lambda-warmer-scheduler
              description: 'scheduler to warmup lambdas '
              rate: rate(2 minutes)
        - schedule:
              name: lambda-warmer-scheduler-2
              description: 'scheduler to warmup lambdas '
              rate: rate(5 minutes)
        - schedule:
              name: lambda-warmer-scheduler-3
              description: 'scheduler to warmup lambdas '
              rate: rate(5 hours)

events属性中的每个项目都会创建一个事件(在此示例中,仅是计划,但您可以混合使用不同的事件源,例如计划,http,流...)。