MongoDB 对原子操作的支持主要分为三个层面:单文档原子性(核心机制)、原子操作符以及多文档事务(ACID)。 以下是详细的分类说明: 1. 单文档原子性 (Single Document Atomicity) 这是 MongoDB 最基础也是最重要的特性。在 MongoDB 中,针对单个文档(Document)的所有写操作(insert, update, delete)都是原子的。 即使一个 update 操作需要修改该文档内的多个字段(例如同时修改嵌套数组和顶层字段),这个操作要么全部成功,要么全部失败,不会出现只修改了一半的情况。 2. 原子更新操作符 (Atomic Update Operators) 为了在修改单文档时实现复杂的逻辑(如计数、数组操作),MongoDB 提供了一系列原子操作符。这些操作符在并发环境下非常有用,避免了“读取-修改-写入”带来的竞态条件。 字段修改类: : 设置字段的值。 : 删除字段。 : 对数值字段进行原子增减(常用于计数器,无需先读后写)。 : 将字段值乘以指定数值。 : 重命名字段。 : 设置字段为当前时间。 数组修改类: : 向...