公开由 lambda 函数从 Elastic Beanstalk 应用程序创建的文件



我有一个小应用程序,可以从很多URL构建站点地图文件(基于Cron Job)。我还有一个运行Web应用程序的Elastic Beanstalk应用程序。

我想让它们单独运行,但我希望 Web 应用程序公开创建的站点地图。

我正在考虑使用 lambda 函数来创建站点地图,但我不明白我的 Elastic Beanstalk Web 应用程序在完成后如何获取文件,所以我不确定是否有好的方法;至少,我错过了架构的一部分。

您如何看待此解决方案?您将如何在 AWS 环境中管理它?

你缺少的部分是S3。让 Lambda 在创建文件时将文件复制到 S3。然后,您可以直接从 S3 提供它们,或者让您的 Beanstalk 应用程序从 S3 加载它们。

一种方法如下:

  • 使用计划事件通过 Lambda 创建站点地图。
  • 让 Lambda 将这些站点地图上传到 S3
  • 让 Lambda 将包含站点地图位置的消息推送到 SQS 队列

然后,您的 Elastic Beanstalk 应用程序可以处理消息,例如能够直接从 S3 公开您的站点地图。

相关内容

最新更新