加锁

【mysql】の 锁机制 | 事务 | 二进制日志 | 备份还原(删库也不怕跑路了~)

1、并发控制 mysql 数据库 同一时间会有多个用户一起使用 1.1 锁机制 加锁是为了限制别人的操作,不会影响自己。 锁类型: 读锁:共享锁,也称为 S 锁,只读不可写(包括当…

MySQL 核心模块揭秘 | 22 期 | 行锁 (2) 慢速加锁

目录1. 加过锁了吗?2. 需要等待吗?3. 先找个复用的行锁结构4. 没找到就申请一个新的5. 总结正文1. 加过锁了吗?快速加锁逻辑主打简单、快速,它只能处理简单的情况,即通过…

21 期 | 行锁 (1) 快速加锁

行锁有两种加锁逻辑,这一期我们聊聊其中之一的快速加锁。 作者:操盛春,爱可生技术专家,公众号『一树一溪』作者,专注于研究 MySQL 和 OceanBase 源码。 爱可生开源社区…

MySQL 核心模块揭秘 | 21 期 | 行锁 (1) 快速加锁

目录1. 两种加锁逻辑2. 先拿个令牌3. 再获取行锁结构4. 快速加锁之一5. 快速加锁之二6. 慢速加锁条件有哪些?7. 总结正文1. 两种加锁逻辑更新、删除记录都需要加行锁,…

TiDB锁行为分析

TiDB乐观事务实现原理 参考官网文档:https://docs.pingcap.com/zh/tidb/stable/optimistic-transaction TiDB加锁非…

20 期 | MySQL 怎么加表锁?

意向共享锁、意向排他锁、AUTO-INC 锁是 InnoDB 最常用的表锁,它们的加锁流程是什么样的? 作者:操盛春,爱可生技术专家,公众号『一树一溪』作者,专注于研究 MySQL…

MySQL 核心模块揭秘 | 20 期 | 怎么加表锁?

目录1. 是否已经加锁?2. 先拿个令牌3. 会不会被阻塞?4. 申请表锁结构5. 总结正文1. 是否已经加锁?一个事务,在执行过程中,可能多次操作同一个表。如果多次操作都需要表锁…

腾讯一面:MySQL的共享锁和独占锁

在InnoDB存储引擎中,行级别锁有两种类型:共享锁(S锁)和排他锁(X锁),理解这 2种锁的工作机制及其交互关系对于掌握MySQL的并发控制和锁机制非常重要,因此,今天就来一起聊…

聊聊乐观锁与悲观锁

悲观锁在MySQL中,悲观锁依赖数据库提供的锁机制来实现。在InnoDB引擎中,使用悲观锁需要先关闭MySQL数据库的自动提交属性,然后通过select ... for updat…

Java 并发编程中如何使用锁消除技术提高性能?

锁消除是一种 java 并发编程技术,通过消除不必要的加锁来提高性能。方法包括:对于不可变对象,无需加锁;对于线程局部变量,无需同步。基准测试表明,锁消除可以在 100 万次迭代中…

Java 函数中的双重检查加锁如何实现线程安全?

双重检查加锁是一种设计模式,通过双重检查来确保线程安全,在 java 函数中可以这样实现:定义一个静态 volatile 变量存储实例;如果实例为空,则同步区块内再检查一次,为空则…

如何使用锁机制确保 Java 函数的线程安全?

答案:java 锁机制通过限制同一时间访问共享资源的线程数量来确保线程安全。实战案例:加锁方法使用 synchronized 关键字对方法加锁。实战案例:加锁代码块使用 synch…

mysql 事务 serializable 对比 repeatableread 特殊场景的问题记录

前置重要知识点:行锁是加在索引上的,如果字段没有索引,或者有索引,没有命中,会变成表锁,所以测试之前先保证对应字段有索引哦,避免测试结果有偏差 事务最高级别: serializab…

学会MySQL(2)——间隙锁加锁算法分析

引言 在进行死锁分析时,如果看 MySQL 的死锁日志云里雾里,那可能是我们对 MySQL 的加锁规则不甚了解,从而感觉分析无从下手。只能看代码,改 SQl 碰运气。有一句话说的好…

Redis缓存雪崩、穿透、击穿三步曲

本文收集了一些 Redis 使用中经常遇到的一些问题,和与之相对应的解决方案,这些内容不但会出现在实际工作中,也是面试的高频问题,接下来一起来看。一、缓存雪崩缓存雪崩是指在短时间内…

synchronized和reentranlock的区别

synchronized 和 ReentrantLock 都是 Java 中提供的可重入锁: 用法不同:synchronized 可用来修饰普通方法、静态方法和代码块,而 Reen…

没看过AQS源码,别说精通Java并发编程

前言AQS 全称 AbstractQueuedSynchronizer(抽象队列同步器),旨在作为创建锁和其他同步机制的基础,常见的同步锁 ReentrantLock、CountD…

使用Golang实现文件锁的最佳实践

使用Golang实现文件锁的最佳实践 在开发中,我们经常会遇到需要对文件进行加锁的情况,以保证文件在多个goroutine或进程间的并发访问时能够正确操作。在Golang中,实现文…

10个行锁、死锁案例⭐️24张加锁分析图🚀彻底搞懂Innodb行锁加锁规则!

10个行锁、死锁案例⭐️24张加锁分析图🚀彻底搞懂Innodb行锁加锁规则! 上篇文章 我们描述原子性与隔离性的实现,其中描述读操作解决隔离性问题的方案时还遗留了一个问题:写操作是…

分布式锁最终解决方案是RedLock吗?为什么?

RedLock 是 Redis 分布式锁的一种实现方案,由 Redis 的作者 Salvatore Sanfilippo 提出。RedLock 算法旨在解决单个 Redis 实例作…

加载更多