加锁

  • MySQL 是怎么加行级锁的?

    什么 SQL 语句会加行级锁? InnoDB 引擎是支持行级锁的,而 MyISAM 引擎并不支持行级锁,所以后面的内容都是基于 InnoDB 引擎 的。 普通的 select 语句…

    编程笔记 2022年11月14日
  • 硬核剖析Java锁底层AQS源码,深入理解底层架构设计

    们常见的并发锁ReentrantLock、CountDownLatch、Semaphore、CyclicBarrier都是基于AQS实现的,所以说不懂AQS实现原理的,就不能说了解…

    Java 2022年11月11日
  • 进阶 | MySQL 死锁案例解析一则

    记一次MySQL 死锁分析处理过程,聊聊我的思路。前车之鉴,后事之师。 以一个例子为切入点 一、问题背景 某业务模块反馈数据库最近出现过几次死锁告警的情况,本文总结了这次死锁排查的…

    数据库 2022年9月16日
  • 增长性数据库优化方案-携程

    一、目前数据库背景问题 (一)、数据库CPU总是在50%以上 (二)、磁盘存储空间严重不足,需要经常清理磁盘数据腾出空间 (三)、系统扩容能力不足,如果需要提升处理能力只能更换硬件…

    数据库 2022年9月12日
  • Spring Boot + Redis 实现分布式锁

    一、业务背景 有些业务请求,属于耗时操作,需要加锁,防止后续的并发操作,同时对数据库的数据进行操作,需要避免对之前的业务造成影响。 二、分析流程 使用 Redis 作为分布式锁,将…

    数据库 2022年9月11日
  • redission同时加多个锁

    业务场景: 比如:给某条记录点赞时, 有两个条件:(1)本条记录有点赞限制   (2) 点赞人有点赞限制。 问题: 并发时,需要加锁, 而且需要同时加两把锁。 工具类: @Serv…

    数据库 2022年8月30日
  • JUC学习23:理解JMM

    JUC学习23:理解JMM 面试题:请你谈谈你对Volatile的理解: Volatile是Java虚拟机提供轻量级的同步机制; 1,保证可见性(JMM); 2,不保证原子性; 3…

    Java 2022年8月30日
  • java 并发编程规约

    Rule 1. 【强制】创建线程或线程池时请指定有意义的线程名称,方便出错时回溯 1)创建单条线程时直接指定线程名称“`Thread t = new Thread();…

    Java 2022年8月17日
  • Redis-5.0141 分布式锁-18

    1. 问题描述     随着业务发展的需要,原单体单机部署的系统被演化成分布式集群系统后,由于分布式系统多线程的特点以及分布在不同机器上,这将使原单机部署情况下的并发控制锁策略失效…

    数据库 2022年8月17日
  • Java AQS锁实现原理

    ​  整体介绍 概念 ​     首先阅读一下类的源码注释,可以知道,这几个接口是最关键的。 ​   这几个方法是使用AQS类的关键,只有这几个方法是可以定制的,其他方法几乎都是f…

    Java 2022年8月14日