首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将巨大的JSON传递给Sidekiq Jobs

问将巨大的JSON传递给Sidekiq Jobs
EN

Stack Overflow用户
提问于 2021-11-17 07:52:18
回答 2查看 61关注 0票数 0

我目前正在开发的应用程序的一个功能是照片上传。客户在前端上传照片,照片被传递到rails后台,然后存储在亚马逊S3上。

我注意到,将大量的请求时间花在了将照片上传到s3上。照片是一个接一个上传的,所以延迟会成倍增加。如果我能以某种方式将照片临时存储在RAM中,并提高请求速度,那就太好了。

我曾经考虑过使用文件作为参数来运行一个Sidekiq作业,但是according to sidekiq documentation传递一个巨大的对象并不是很好的做法。我怎么才能用另一种方法解决这个问题呢?

EN

回答 2

Stack Overflow用户

发布于 2021-11-17 10:49:55

我认为这个问题是通过使用API生成一个预先签名的url,并使用cognito将图片上传到s3并获得图片链接来实现的。

票数 0
EN

Stack Overflow用户

发布于 2021-11-17 16:43:23

在机器A上运行的nginx/puma应该将图像保存为本地文件。在同一台计算机A上运行Sidekiq,并将文件名传递给特定于主机的队列中的作业,以便Sidekiq进行处理。这样,您就可以传递一个文件引用,而不用担心哪台机器会处理它。

确保Sidekiq删除了文件,这样就不会填满磁盘!

https://www.mikeperham.com/2013/11/13/advanced-sidekiq-host-specific-queues/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70000598

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档