我目前正在使用 AWS 基础设施实施我的第一个 Web 应用程序并学习基础知识。我遇到了一个设计问题,所以想出了以下场景来说明我的问题:
假设我正在制作一个 Web 应用程序,将网站保存/打印为 pdf 并将其存储在 S3 上。前端有一个单一的形式。用户将输入他们想要保存为 pdf 的站点的 url,然后单击提交。该应用程序应将给定 url 处的页面打印为 pdf 并将文件呈现给用户。
为了使应用程序具有可扩展性,我想象单击提交会将 SQS 消息发送到带有要处理的 url 的队列。然后,一群工人可以从这个队列中消费,创建 pdf 并将它们存储在 S3 中,然后将 S3 密钥/路径存储到 SimpleDB。我遇到的问题是工作人员如何通知网络应用程序处理完成?
示例设计:
我想 Web App 可以不断轮询 SimpleDB,直到出现 S3 密钥的条目,但是这个解决方案似乎有点笨拙。我觉得这是一个必须经常遇到的模式/问题。谁能提供一种通用的方法来解决这个问题?
此外,云中常见设计模式的任何推荐资源都将非常有益。