多数据库连接并发读写场景下,对应Thread Safe的技术术语是什么?
数据库并发读写的专属术语解释
这不是普通的线程安全场景,二者核心区别很明确:
- 线程安全主要针对同一进程内多线程的内存数据竞争,靠线程锁(比如互斥锁)控制内存访问顺序,和持久化存储完全无关。
- 你描述的数据库场景,属于数据库并发控制范畴,核心实现机制是数据库锁;针对单表项(行)的操作,更具体的术语是行级锁。
数据库锁是数据库系统自身提供的同步机制——不管发起操作的连接来自哪个进程、甚至哪个服务器,只要多个操作要修改同一行数据,数据库就会通过锁来串行化这些请求:先到的操作获得锁,后续操作必须等待锁释放才能执行,以此保证数据一致性,最终写入磁盘的过程也会配合事务日志、ACID特性确保持久化的正确性。
另外补充个相关概念:这种“先锁再操作、等待锁释放”的模式属于悲观锁,是数据库并发控制里的常见策略;与之相对的还有乐观锁(比如通过版本号判断冲突,冲突时重试)。
内容的提问来源于stack exchange,提问作者Little Bobby Tables
相关产品推荐
相关产品推荐

