将数据发送到 Firestore 很慢

Posted

技术标签:

【中文标题】将数据发送到 Firestore 很慢【英文标题】:Sending data to firestore is slow 【发布时间】:2020-05-17 03:36:18 【问题描述】:

我们打算做一个实时应用,我们可以在应用中集成firestore,但是使用firestore官方flutter插件发送数据到firestore平均需要1.2秒。即使在良好的互联网连接下,速度也不一致。我们还使用插件(cloud_firestore)提供的示例应用程序对此进行了检查。 我们在附表中记录了一些样本 (https://docs.google.com/spreadsheets/d/1oJBTTbF8654EiFy5whMztWLBSQ8mViRIuE2TLK_ThzA/edit#gid=0)

我已发送此数据以记录样本。

 
      'sentTime': DateTime.now(),
      'serverReceivedTime': FieldValue.serverTimestamp(),
 

我们正在构建一个速度非常重要的应用程序。速度必须小于至少 100 毫秒才能在 Firestore 端接收数据。数据将非常小,就像创建一个小文档一样。

请帮助我们提高速度。如果您对问题或所附文件有任何疑问,请发表评论。

提前致谢

【问题讨论】:

我可以看看你用来写到firestore的代码吗? 是的,你可以在这里看到它,github.com/Ajaystefin/firestore_delay_check 【参考方案1】:

如果您的目标是快速同步(频繁)相对较小的写入操作,请考虑在 Cloud Firestore 上使用 Firebase 的实时数据库。

Firebase 有两个 NoSQL 数据库:Cloud Firestore 和实时数据库。两个数据库都提供实时同步作为它们的核心原语之一,但实时数据库通常更快并且更有效地处理小型写入操作(并且通常更便宜),而如果您有相对较大的文档,则 Firestore 是最好的,大量(50K-1M并发)侦听器,并且写操作相对较少。

【讨论】:

以上是关于将数据发送到 Firestore 很慢的主要内容,如果未能解决你的问题,请参考以下文章

如何在 FLUTTER 中杀死应用程序时将位置数据发送到 Firestore 数据库

如何将数据从我的数据库 (Firebase Firestore) 发送到我的 React Native 应用程序?

`未处理的异常:无效的参数:'_$_Category'的实例`在将数据发送到firestore时形成一个冻结的生成类

从 Firestore 数据库中获取最新数据到 Flutter App

如何将位置发送到 Firestore 并根据距离获取位置?

Firestore 更改后使用 FCM 发送推送通知? [复制]