AWS Pub / Sub消息模式

时间:2016-07-21 18:09:32

标签: amazon-web-services aws-lambda amazon-sqs microservices

有人可以向我解释使用SNS的优点或缺点 - > Lambda vs. SNS - > SQS - > LAMBDA。

我正在设置pub / sub微服务消息传递的架构,但在每个Lambda前面排队似乎过多。

2 个答案:

答案 0 :(得分:4)

除非发生某些变化,否则部署SNS→Lambda或SNS→SQS→Lambda更有意义的问题是基于一个存在重大缺陷的前提。

如Lambda文档中的Supported Event Sources所示,Lambda事件可以来自S3,DynamoDB,Kinesis,SNS,SES,Cognito,CloudFormation,CloudWatch&事件(包括计划事件),AWS Config,Amazon Echo和API网关。

当然,你可以直接调用它们。

但是SQS不是受支持的Lambda事件源。

答案 1 :(得分:2)

Amazon SQS是分布式应用程序用于通过轮询模型交换消息的消息队列服务,可用于解耦发送和接收组件,而无需每个组件同时可用。通过同时使用Amazon SNS和Amazon SQS,可以将消息传递到需要立即通知事件的应用程序,并且还可以保留在Amazon SQS队列中,以便以后处理其他应用程序。

直到您不想要分离发送和接收组件,只想在问题中实现您的用例,它将适用于SNS-Lambda和SNS-SQS-Lambda。