Mon*_*key 5 amazon-web-services amazon-sns aws-lambda
我想使用 AWS lambda 函数为每个用户扇出并将活动流信息插入到 firebase 端点。
对于这个用例,我应该使用 Kinesis、SQS 还是 SNS 来触发 lambda 函数?可以从服务器触发对活动流的更新,客户端应该几乎实时(60 秒左右)接收更新。
我想我对什么是 SQS 有一个很好的了解,并且过去使用过 Kinesis,但对 SNS 不太确定。
如果我们为每个用户创建一个 SNS 主题,然后每个关注者都使用 AWS lambda 函数订阅这些主题 - 这会起作用吗?
以编程方式为每个用户创建主题和订阅并分别关注关系是否有意义?
像往常一样,此类问题的答案主要是“这取决于您的用例”。
Kinesis 与 SQS:
如果您的客户关心事件之间的相对(例如基于时间戳)排序,那么您几乎肯定必须使用 Kinesis。SQS 是一个尽力而为的 FIFO 队列,这意味着事件可能会无序到达,并且由您的客户端来管理相关顺序。
就延迟而言,我发现摄取到 Kinesis 中的数据可以在不到 300 毫秒的时间内对其消费者可见。
SNS什么时候会让你感兴趣?
(即使使用 SNS,您也必须使用 SQS)。如果您使用 SNS,则可以轻松添加可以处理您的事件的新应用程序。例如,如果将来您决定将所有事件提取到 Elasticsearch 中以提供实时分析,那么您所要做的就是向现有主题添加另一个 SQS 队列并编写使用者。
| 归档时间: |
|
| 查看次数: |
911 次 |
| 最近记录: |