我正在为iOS和Android开发一个React Native应用程序。我将Django用于后端,将aws rds用于数据库。它部署在AWS Lambda上,我的lambda和rds都在VPC中。除推送通知外,其他所有内容都运行良好,因为它们需要我的lambda函数才能与公共Internet通信。
一种方法是创建一个允许该通信的NAT网关,但是NAT网关非常昂贵。
我正在考虑另一种涉及AWS Simple Notification Services(SNS)的方式。如果将其集成到我的Django应用程序中,lambda函数是否可以在不需要NAT网关的情况下与AWS SNS通信?
答案 0 :(得分:1)
听起来您想在运行lambda函数的VPC内创建SNS服务端点: https://docs.aws.amazon.com/sns/latest/dg/sns-publishing-to-topics-from-vpc.html
服务端点有点像在建立从VPC到特定服务的隧道,因此它不被视为外部Internet。您需要为它们付费,但是价格比NAT网关便宜很多,并且如果使用CloudFormation进行配置,往往会节省构建路由等的复杂性。