不幸的是,当使用令人惊叹的 Firebase 实时数据库(即传统的 Firebase)及其云功能时
除了基本事务概念之外,没有真正可用的锁定概念。 (就目前而言,这真是太棒了。)对于 example你不能执行读取、删除、插入操作。
我们尚未在项目中使用新的 Firestore;我想知道它是否解决了这个特定问题?
这将使其对于交易游戏货币、逻辑等几乎所有事物都非常有用。
这是 Firestore 的优势吗?
最佳答案
Firestore 中的事务比实时数据库中的事务更灵活。与Realtime Database transactions ,您必须在该事务中选择一个位置,并且只能修改该位置下的子项。所有客户端都必须使用事务来安全地修改该事务。
与 Firestore transactions ,您可以使用数据库中任何集合中的任意文档集进行事务,并且对这些文档所做的更改具有原子性。您不必只选择一个集合或一个文档。
这两种产品都没有“锁”这样的东西。不提供锁是因为它们很难正确管理(避免死锁),同时也很难扩展到数百万并发写入者。
关于firebase - Firestore 是否提供更多锁定事务(例如表到表概念)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49038727/