firebase - 如何防止从 React-Native 应用程序向 Firestore 发送多个请求?
问题描述
我有一个将被许多用户使用的应用程序,有时他们会同时发布到同一个文档,Firebase 将如何处理它。有没有办法可以防止这种情况发生?
我的场景是这样的:有一家餐厅可以点餐,但是数量有限,假设有 5 个,并且有 10 个用户同时发布到该文档,我该如何防止这种情况发生?PS 我在 RN 应用程序中使用侦听器,因此它一直检查数量的变化,但如果用户比应用程序中的更新更快怎么办?
解决方案
为了控制多个并发写入,您应该使用事务来确保每个客户端不会覆盖其他客户端正在执行的操作。该事务将确保一次只有一个客户端可以写入文档。在您的交易中,您可以检查某些文档字段是否处于不应超过的限制,如果超过则使交易失败。
阅读有关交易的文档,以更好地了解其工作原理。`
推荐阅读
- python - How to do regex operation with tensorflow string?
- api - 如何在币安套接字管理器 api 中获取符号信息?
- python - 有没有办法从图像列表中创建 numpy 数组?
- java - Flowable 使用 RxJava ReactiveX 执行任务和返回值
- php - Laravel PHPunit 设置数据在 dataprovider 中为空
- functional-programming - SICP Checking eval 是一个 thunk?
- javascript - 尝试在空对象引用上调用虚拟方法“boolean java.io.File.mkdirs()”
- python - 如何在 Django 中懒惰地创建昂贵的数据库条目
- object-detection - 我可以用yolov5获取图像中对象的坐标吗?
- angular - NGRX 效果和角火