You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否通过单个EventBridge调度触发多个Lambda函数?

单个EventBridge调度触发多个Lambda函数的实现方法

当然可以,无需为每个Lambda单独创建调度,有两种常用实现方式:

方法一:给EventBridge规则添加多个Lambda目标

这是最直接的方式,无需额外代码:

  • 在EventBridge控制台创建或编辑规则时,进入「目标」配置环节,点击「添加目标」;
  • 分别选择staging和production环境的Lambda函数作为目标,每个目标可独立配置输入参数(比如通过InputTransformer给不同环境传递专属标识);
  • 保存规则后,当调度触发时,EventBridge会同时调用这两个Lambda函数。

方法二:通过中间Lambda转发请求

如果需要在触发前添加自定义逻辑(比如错误重试、条件判断、日志聚合),可以用一个中间Lambda作为转发器:

  • 创建一个中间Lambda函数,让EventBridge规则仅触发这个函数;
  • 在中间Lambda内部,调用staging和production环境的两个目标Lambda;
  • 示例Python代码:
import boto3

lambda_client = boto3.client('lambda')

def lambda_handler(event, context):
    # 调用staging环境Lambda
    lambda_client.invoke(
        FunctionName='staging-your-function-name',
        InvocationType='Event',
        Payload=b'{"environment": "staging"}'
    )
    # 调用production环境Lambda
    lambda_client.invoke(
        FunctionName='production-your-function-name',
        InvocationType='Event',
        Payload=b'{"environment": "production"}'
    )
    return {'statusCode': 200, 'body': '已触发两个环境的Lambda函数'}

两种方式都能避免重复创建调度资源,直接添加多目标适合简单场景,中间转发器适合需要自定义逻辑的场景。

内容的提问来源于stack exchange,提问作者Jplus2

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 19:06:17