在仅脱机模式下使用Firebase FiRestore

我只想在我的应用程序中使用单一的持久化方法,并且正在对我的高级/付费用户使用Cloud FiRestore。

是否可以为免费用户在仅脱机模式下使用FiRestore,这样我就不会产生费用?


解决方案

Cloud FiRestore是一个在线数据库,在短时间或长时间脱机时仍可继续工作。但它仍主要是联机数据库,不应用作完全脱机数据库。

原因之一是FiRestore将本地突变保存在单独的队列中,直到它们被提交到服务器。当查询/读取命中本地数据时,FiRestore客户端将从服务器获得的缓存读取与本地突变组合在一起。随着局部突变队列的增长,这一操作会变得更慢。只要客户端偶尔将数据同步到服务器,这种减慢就不会很严重。但如果您将FiRestore用作完全脱机的数据库,随着时间的推移,它将变得令人望而却步。

要很好地解释FiRestore客户端如何在幕后工作,请查看FiRestore JavaScript SDK中的以下(长)代码注释:

  • the persistence class,负责在本地硬盘上存储数据

  • the local store class,处理(A.O.)从本地缓存和本地突变中读取。

相关文章