amazon-web-services - AWS SNS 订阅与 lambda 函数的触发器?
问题描述
我对 Lambda 函数和 Amazon SNS 即服务之间的关系有疑问。
在 SNS 中,您创建一个主题的订阅,其中一个是 Lambda 函数。在我的脑海中,我想这是在从该主题发出消息时调用和触发该函数。但在 Lambda 方面,您可以创建触发器来做同样的事情,其中之一就是 SNS。
到底有什么区别,好像他们做同样的事情。但是如果我使用 Lambda 为主题创建订阅,它不会显示在 Lambda 服务中函数的触发器中,这让我想知道这两者之间到底有什么区别?
解决方案
究竟有什么区别?
从功能的角度来看没有区别。您所观察到的只是控制台缺陷。
为了确保,我使用我的 SNS 和我的 lambda 函数手动验证。
当您Create subscription
在 SNS 控制台中使用并添加 lambda 函数时,它会在 lambda 控制台中显示为触发器。
Subscriptions
同样,如果您使用 lambda 控制台并添加 SNS 触发器,您会在SNS 控制台部分找到该功能。
但是,AWS 控制台并不完美。例如,如果您从 中删除 lambda 函数Subscriptions
,它不会将其从 lambda 控制台上的触发器中删除。相反,您将看到以下错误:
对于某些人来说,这可能是一个错误,对于其他人来说,这是一个功能。我学会了不要过度依赖 AWS 控制台显示的内容。只需仔细检查订阅是否有效。
推荐阅读
- php - Drupal always overwrite setting.php file
- python - 如何根据 Latex 格式修复 y 轴标签?
- c# - 2D 平台游戏:DamageEnemy 没有被调用/为什么敌人为空?
- node.js - 将 Autoprefixer 浏览器选项替换为 Browserslist 配置错误
- ionic3 - cordova.plugins.backgroundMode.onactivate 不是函数
- colors - 是否有颜色非灰色的术语(黑色和白色将是非灰色)?
- flutter - 未处理的异常:NoSuchMethodError:类'String'没有实例方法'forEach'
- python - Pandas - 分组然后排序
- laravel - 目标 [App\Service\InvitationServiceInterface] 不可实例化?
- java - 音频在一分钟后停止录制