如何解决异步图片上传和触发graphql订阅
所以在我的应用中,我有一个新闻提要。用户可以添加具有图像的新新闻(只是来自外部网站的图像的 url)。困境在于如何将该图像上传到 s3。因此,目前从我的网络服务器(nodejs)上传该图像基本上是向该图像 url 发出请求,从正文中获取图像并将其上传到 s3。这在大多数情况下都能正常工作。
问题是有时图片网址(来自外部网站)需要很长时间才能检索(有时超过 1 秒)然后上传。
因为我有能力通知我的 apollo graphql 订阅者(对于我刚刚创建的提要上的新新闻)已经发生了更新。这个想法是使图像的上传异步,然后在响应通过时触发订阅。只需传入上传的图片,即可在 Feed 中更新。
我有 3 个选项,我想请教您的意见,以了解哪个是最佳性能虎钳:
- 只需调用名为“uploadToS3”的方法(该方法调用 aws sdk 并传递图像 blob)即可上传图像,并在 promise 解析回调中通知订阅者
- 将图像的上传放在 nodejs 工作线程中,并让它在通过“uploadToS3”方法上传图像后通知订阅者
- 创建一个 AWS SQS 队列,它将触发一个 lambda,该队列将从外部 url 上传图像。但是我不确定如何从 lambda 获得响应到我的网络服务器,以便我可以通知订阅者?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。