我有一个简单的问题,但无法真正弄清楚它是如何工作的:我不知道 Heroku 超时何时开始注册。
我正在将图像上传到AWS存储桶中,但它首先通过Heroku的Rails应用程序,以便调整大小并创建图像的不同变体(使用回形针宝石(。
然后..超时是在用户开始上传图像时开始注册的,还是仅在Rails应用程序收到图像时才开始注册的。
如果是前者,那么我认为我需要先上传到 AWS。但如果是后者(那么不依赖用户带宽(,我想我可以保留当前的方案..
一旦 Heroku 的路由器收到请求,超时就会开始。
在 Ruby 应用程序上,应用程序的每个实例只能处理一个请求。当然,有一些方法可以处理工作线程(进程(和线程的并发请求。但是每个工作线程/线程仍然只能处理一个请求。
这意味着 ruby 在处理长时间运行的请求方面并不出色。因此,将文件直接上传到 S3 将始终为您带来更高的可扩展性。
这实际上是Heroku推荐的方式:https://devcenter.heroku.com/articles/direct-to-s3-image-uploads-in-rails