【问题标题】:ActiveStorage checking if file exists is slowActiveStorage 检查文件是否存在很慢
【发布时间】:2018-03-21 20:26:42
【问题描述】:

创建变体时,我发现检查文件是否存在的时间很慢。奇怪的是,我没有看到文件上传的缓慢时间。我们怎样才能加快速度?

当你调用这样的东西时会发生这种情况。

@object.artwork.variant(resize: "100X100")

注意缓慢的时间(超过 1 秒!)只是为了检查文件是否存在。

S3 Storage (1149.3ms) Checked if file exists at key: variants/K6XGSR9uuyEG17Vd6HXSLyew/4c1922cb9e0ee90688549c6a10906cc59c45f90ab173febdd7ae9dfc72c0378b

您可以使用

在控制台中重新创建
ActiveStorage::Blob.service.exist?("variants/K6XGSR9uuyEG17Vd6HXSLyew/4c1922cb9e0ee90688549c6a10906cc59c45f90ab173febdd7ae9dfc72c0378b")

以上是生产中的实际示例,但通常我们看到的平均时间在 300 毫秒范围内。

【问题讨论】:

    标签: ruby-on-rails aws-sdk rails-activestorage


    【解决方案1】:

    我认为这就是它的工作方式。我建议将您的变体存储为单独的附件。

    Rails GitHub 上有一个关于它的问题:

    https://github.com/rails/rails/issues/32548

    2020 年 2 月更新:storing variant records in the database is coming in Rails 6.1

    【讨论】:

      猜你喜欢
      • 2021-12-25
      • 1970-01-01
      • 1970-01-01
      • 2021-07-22
      • 2013-07-17
      相关资源
      最近更新 更多