firebase - 为什么需要 Flutter Firebase 事务?
问题描述
我正在开发 Flutter 和 Firebase 应用程序。
我看到一些关于 Firebase 的文档,Firebase 需要事务控制来处理大量的 Firestore 文档更新。(==> 许多用户)
但是我想知道只是文档阅读和写作。
大量阅读流量或大量编写新文档是否也需要事务?
此外,当只有一个应用程序(管理应用程序)正在更新或删除文档并且许多其他用户正在阅读该文档时,是否还需要事务?
解决方案
当多个用户可能在(几乎)同一时间以可能导致产品冲突更新的方式更新同一文档时所需的事务。在这种情况下,您可以使用事务来防止并发写入产生冲突。
Firestore 的批量写入是其中的一个小变种,当您想以原子方式更新多个文档时可以使用它,但不要先读取任何数据来确定这些文档中的新值。
如果您的写入没有发生冲突的可能性,您就不需要使用事务或批量写入,并且使用它们实际上可能会损害性能。
因此,在您的场景中,如果只有一个来自管理应用程序的并发写入,您将不需要事务。如果您有一个不确定的特定用例,最好与我们分享该特定用例和实现代码。
推荐阅读
- typescript - 将路由器路由到 Oak 框架中的另一个路由器,例如 ExpressJS
- css - 在 webpack 中导入 mobiscroll css 样式时出错
- c# - 如何在 C# 中使用类型和属性名称从 XML 创建动态对象?
- apache-spark - 从远程 spark 连接到 hive 元存储
- tika-server - 解析 pdf 文档时,带有 Grobid 的 Tika 抛出错误
- javascript - 如何从 Axios 获取 statusCode?
- python - 如何在 Confluence 中使用 Python SDK 获取文章的正文信息
- flutter - 如何防止 AppBar 覆盖自定义状态栏颜色
- sql-server - 如何将 Sql Server Management Studio v18.5 连接到本地主机
- python - aws:找不到与平台无关的库