Aws lambda 定期获取第三方数据

Aws lambda 定期获取第三方数据,aws-lambda,architecture,Aws Lambda,Architecture,我有一个拥有1000万用户的应用程序。应用程序可以访问用户的谷歌健康数据。我想使用谷歌API定期读取/刷新用户数据 我面临的挑战是内存密集型任务。由于谷歌没有为新数据提供任何回调,我将进行后台同步(每30分钟一次)。所有用户都将被挑选并添加到队列中,然后依次挑选(取决于工作节点的数量) 现在,对于每30分钟刷新一次的1000万用户,我需要很多工作节点 Each user request takes around 1 sec including network calls. In 30 mins,

我有一个拥有1000万用户的应用程序。应用程序可以访问用户的谷歌健康数据。我想使用谷歌API定期读取/刷新用户数据

我面临的挑战是
内存密集型任务
。由于谷歌没有为新数据提供任何回调,我将进行后台同步(每30分钟一次)。所有用户都将被挑选并添加到队列中,然后依次挑选(取决于工作节点的数量)

现在,对于每30分钟刷新一次的1000万用户,我需要很多工作节点

Each user request takes around 1 sec including network calls.
In 30 mins, I can process = 1800 users
To process 10M users, I need 10M/1800 nodes = 5.5K nodes
相当贵。货币和运营方面。

然后考虑使用lambdas。然而,lambda需要一个带有互联网网关的NAT来访问公共互联网。相对来说,它非常便宜


想知道是否还有其他可行的解决方案可以替代这个规模吗?

如果不了解更多关于您的架构和google API的信息,就很难提出建议

首先,我想看看谷歌是否提供批量导出功能,然后批量处理用户请求。因此,您可以为10万用户提出一个请求,而不是每个用户提出一个请求。这将减少与连接和处理/解析消息元数据相关的开销

其次,我想看看是否可以减少处理时间,例如,python这样的解释语言在很多情况下都比C#或GO这样的编译语言慢得多。或者,一个库或算法可以被更优化的东西所取代

如果没有具体设置的更多细节,就很难提供更具体的建议