Vuefire(Firestore)非常非常慢的查询
Posted
技术标签:
【中文标题】Vuefire(Firestore)非常非常慢的查询【英文标题】:Vuefire (Firestore) Very, Very Slow Queries 【发布时间】:2020-01-10 19:59:17 【问题描述】:更新:TL;DR - 不是 firebase / vuefire 问题
如果有人遇到这种情况,正在寻求速度问题的解决方案 - firebase 和 vuefire 都没有错。
经过多次试验,我发现一个 fontawesome 图标是罪魁祸首 - 我还没有弄清楚究竟是如何或为什么,但无论如何,这不是 firebase / vuefire 问题。
我正在使用 Vuefire 和 Firestore 数据库。
查询 Firestore 数据库中超过 100 条记录的速度非常慢。例如,返回 700 条记录的查询大约需要 1 分钟:
第一个查询和任何后续查询都是如此。
这些不是大文件。
我在这里做错了什么?除了将返回的记录数限制为
相关代码(Vue CLI):
<script>
import fb, db from "@/firebaseConfig";
export default
name: "rules",
data()
return
rules: []
;
,
firestore()
return
rules: db.collection("rules")
;
...
</script>
【问题讨论】:
从 Firestore 中检索数据通常与检索的数据量呈线性关系。你读了多少数据?您检索它的互联网连接有多快?如果这不能帮助您自己解决问题,您可以在 jsbin 或 stackblitz 之类的网站上设置问题的重现吗? 根据我的问题中的屏幕截图,刚刚超过 700 条记录,总计 57.2 KB。将查询限制为 200 条记录可将查询时间减少到大约。 500 毫秒。将查询限制为 100 条记录并不能真正将查询时间减少到 500 毫秒以下。无论如何,1 分钟检索 700 条记录太长了。 我使用的是光纤,我的下载速度非常快(对于新西兰...) 嗯...不确定发生了什么。能否在 jsbin 或 stackblitz 之类的网站上设置问题的重现,以便我们看看? 我尝试在 stackblitz 上进行设置,但它没有加载 vuefire 插件 【参考方案1】:更新:TL;DR - 不是 firebase / vuefire 问题
如果有人遇到这种寻求速度问题的解决方案 - firebase 和 vuefire 都没有错。
经过多次试验,我发现一个 fontawesome 图标是罪魁祸首 - 我还没有弄清楚究竟是如何或为什么,但无论如何,这不是 firebase / vuefire 问题。
【讨论】:
很高兴听到您找到了问题的原因 Alex!以上是关于Vuefire(Firestore)非常非常慢的查询的主要内容,如果未能解决你的问题,请参考以下文章
VueFire - 在渲染之前操作 Firestore 数据
Firestore 查询返回未定义快照的位置(Vue.js / Firestore / Vuefire)
将 getter 设置到 vuefire 的 firestore 部分
在 vuefire 的 firestore 内的“this”中获取“undefined”