与 Firebase 托管相比,Firebase 存储非常慢

标签 firebase firebase-storage firebase-hosting

任何人都知道为什么与 Firebase 托管相比,Firebase 存储会慢得离谱吗?

结果

  • 下载 Firebase 托管镜像的时间:16ms
  • 从 Firebase 存储下载相同图像的时间:2.23s (2.22s is TTFB)
  • 从 Firebase 存储(亚太地区)下载相同图像的时间:1.72s (1.70s is TTFB)
  • (文件大小:22.7kb/jpeg/firebase 存储已阅读对所有人开放)

  • 这在测试中一遍又一遍地重复。有什么方法可以将其加速到合适的时间,或者对于小文件(图像/拇指)来说,firebase 存储是否不可用?

    比较
  • S3 北加州 - 大约 500ms
  • S3 亚太地区 - 大约 30ms
  • 阴天 - 大约 20ms

  • 额外信息:
  • 我在澳大利亚。
  • 完全相同的文件。始终低于 100kb 的图像。
  • 根据开发工具,减速总是在 TTFB 中。
  • 托管网址:https://.firebaseapp.com/images/thumb.jpg
  • 存储地址:https://firebasestorage.googleapis.com/v0/b/ .appspot.com/o/thumb.jpg?alt=media&token=
  • 最佳答案

    除了@Ziwi 回答。
    我认为直接在 Firebase 中更改规则也可以

    // Only a user can upload their profile picture, but anyone can view it
    service firebase.storage {
      match /b/<bucket>/o {
        match /users/{userId}/profilePicture.png {
          allow read;
          allow write: if request.auth.uid == userId;
        }
      }
    }
    
    来源是https://firebase.googleblog.com/2016/07/5-tips-for-firebase-storage.html
    enter image description here

    关于与 Firebase 托管相比,Firebase 存储非常慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43851742/

    相关文章:

    Firebase 托管和 Github 操作错误 "auth/invalid-api-key"

    java - 什么是 firebase 以及如何在 Android 中使用它?

    javascript - 文件上传到 Firebase 存储无法正常工作 ("storage/invalid-argument")

    firebase - 将域和子域指向同一个 firebase 应用程序

    javascript - 错误解析触发器 : Cannot find module

    firebase - 查询无法在运行时更改条件的Firestore

    Firebase 动态链接 - 如何在链接内发送附加数据?

    java.lang.IllegalStateException : FirebaseApp with name [DEFAULT] doesn't exist "FirebaseStorage"

    swift - 尝试使用函数从 Firebase 存储返回 downloadUrl

    javascript - 如何从 firebase 存储中更快地加载图像?