logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

lua脚本+Redission实现分布式锁

基于Redis不论是本地锁还是分布式锁,核心都在于“互斥”。在 Redis 中,SETNX命令是可以帮助我们实现互斥。SETNX即(对应 Java 中的方法),如果 key 不存在的话,才会设置 key 的值。如果 key 已经存在,SETNX啥也不做。释放锁的话,直接通过DEL命令删除对应的 key 即可。为了防止误删到其他的锁,这里我们建议使用 Lua 脚本通过 key 对应的 value(唯

文章图片
#lua#分布式
数据库的锁 - 全局锁、表锁、行锁

数据库锁机制主要包括全局锁、表级锁和行级锁。全局锁用于全库维护操作,如备份,通过 FLUSH TABLES WITH READ LOCK 加锁,UNLOCK TABLES 释放,会阻塞所有写操作。表级锁锁定整个表,适用于表级操作,元数据锁(MDL)保护表结构,意向锁表示事务对表的锁定意向。行级锁提供细粒度控制,锁定单行数据,间隙锁锁定记录间的间隙,临键锁结合行锁和间隙锁防止幻读,确保数据一致性和高

文章图片
数据库的锁 - 全局锁、表锁、行锁

数据库锁机制主要包括全局锁、表级锁和行级锁。全局锁用于全库维护操作,如备份,通过 FLUSH TABLES WITH READ LOCK 加锁,UNLOCK TABLES 释放,会阻塞所有写操作。表级锁锁定整个表,适用于表级操作,元数据锁(MDL)保护表结构,意向锁表示事务对表的锁定意向。行级锁提供细粒度控制,锁定单行数据,间隙锁锁定记录间的间隙,临键锁结合行锁和间隙锁防止幻读,确保数据一致性和高

文章图片
到底了