当前位置: 首页 > article >正文

日常思考笔记

技术管理,
团队管理,人才培养,梯队建设
项目管理,项目全生命周期,项目进度
考核规范,

AQS 是CountDownLatch,ReentrantLock,Semaphore,ReentrantReadWriteLock的基础
volatile 关键字
CAS(Compare And Swap)
独占,公平锁,非公平锁
共享,都能拿到锁

ReentrantLock,可重入锁,原理是基于 AQS 实现,AQS 是一个实现同步器的抽象类
公平锁,用队列实现,先到先得
非公平锁,抢占模式,谁抢到就是谁的

Semaphore 信号量

ABA 问题,加版本号

READ COMMITTED,读已提交

REPEATABLE READ,可重复读

next-key locking,临键锁,涉及行锁(Record Lock)和 间隙锁(Gap Lock)的结合,用于解决事务中的幻读问题

读未提交,出现脏读,什么是脏读,就是一个事务读取到了另外一个事务未提交的事务

怎么解决脏读,升级隔离级别到 读已提交

读已提交也存在问题,就是不可重复读,什么是不可重复读,在同一个事务中,多次读取同一个数据,结果不同

怎么解决不可重复读,升级隔离级别到可重复读

可重复读,也存在问题,幻读,什么是幻读,一个事务在同一个时间点查询同一个范围的数据,结果发现有新的数据满足查询条件

怎么解决幻读的问题,升级隔离界别到串行化

串行化,可以解决上面的所有问题,但是,会严重影响性能,因为每个线程都是顺序执行,并且都是独立的,不存在并发


http://www.kler.cn/a/443301.html

相关文章:

  • 有关Redis的相关概述
  • 3D机器视觉的类型、应用和未来趋势
  • SpringBoot插件
  • 晨辉面试抽签和评分管理系统之一:考生信息管理和编排
  • 流媒体内网穿透/组网/网络映射EasyNTS上云网关启动失败如何解决?
  • 如何隐藏 Nginx 版本号 并自定义服务器信息,提升安全性
  • 如何处理对象的状态变化?
  • 公文写作一体机实现个性化写作与专属文风定制
  • Spring MVC 中,处理异常的 6种方式
  • 【ELK】Filebeat采集Docker容器日志
  • 华为数通最新题库 H12-821 HCIP稳定过人中
  • LeetCode1143. 最长公共子序列(2024冬季每日一题 36)
  • barin.js(十四)GRU实战教程 - 文本情感分析之有害内容检测
  • 霍尔传感器在VR虚拟现实技术上的应用
  • Facebook 与数字社交的未来走向
  • 数据科学与SQL:如何利用本福特法则识别财务数据造假?
  • C++实现最大字段和
  • 简易分页制作
  • 大数据分析案例-基于XGBoost算法构建笔记本电脑价格预测模型
  • 【JAVA】JAVA接口公共返回体ResponseData封装
  • 点击展示大图预览
  • 易语言OCR证件照文字识别
  • 在 Mac M1 上使用 Docker 运行 Jenkins
  • [IT项目管理]九.项目质量管理
  • 联表查询相关语法
  • 梯度(Gradient)和 雅各比矩阵(Jacobian Matrix)的区别和联系:中英双语