我有一堆Lambda函数,它们都采用相同的值并以不同的方式处理值。我想做什么而不是将值发送到每个lambda并使其成为Zapier中的额外任务。我想将值发送到一个lambda,并且该函数将值发送到所有其他Lambda函数以进行处理。从而减少了Zapier必须执行的所有任务。
答案 0 :(得分:1)
实际上你可以做的是让其中一个Lambda函数创建一个AWS SNS
消息;它将处理您发布到它的内容并向正在侦听AWS SNS
的其他Lambda函数发出消息
在Lambda 1的功能内部(发布消息的那个):
var sns = new AWS.SNS({
region: 'us-east-1'
});
exports.handler = function(event, context, callback) {
var params = {
Message: <YOUR_MESSAGE>, /* required */
Subject: 'STRING_VALUE',
TopicArn: <SNS_TOPIC_ARN>
};
sns.publish(params, (err, data) => {
if(err) console.log(err, err.stack);
});
}
和另一个正在收听AWS SNS
的Lambda函数:
exports.handler = function(event, context, callback) {
var message = event.Records[0].Sns.Message; /* Here is your message */
}
使用它的最好的事情就是这样,你将把所有的消息放在队列中。