事务 初学的时候,感觉事务的四大特性就那么回事,不就是一堆事要么完成,要么全部失败吗。还有经常说的脏读,幻读,不可重复读根本无法理解,就是那个存款取款的例子,我修改了数据,对方看到我修改的数据,这不很正常吗。现在看来,当时根本就不知道并发是什么鬼,更何谈并发事物了。 然后给你来一堆名词,共享锁,排它 ...
分类:
其他好文 时间:
2019-11-02 17:23:34
阅读次数:
86
事务 初学的时候,感觉事务的四大特性就那么回事,不就是一堆事要么完成,要么全部失败吗。还有经常说的脏读,幻读,不可重复读根本无法理解,就是那个存款取款的例子,我修改了数据,对方看到我修改的数据,这不很正常吗。现在看来,当时根本就不知道并发是什么鬼,更何谈并发事物了。 然后给你来一堆名词,共享锁,排它 ...
分类:
其他好文 时间:
2019-11-02 15:29:33
阅读次数:
84
table th:first of type { width: 70px; } 锁的类型 | 锁的实现 | 乐观锁 | 在数据库中可以使用version版本号去实现;在Java中是使用CAS(Compare And Swap)算法(CAS算法:是一种无锁算法,是Java提供的非阻塞原子性操作,CAS ...
分类:
编程语言 时间:
2019-11-01 16:29:48
阅读次数:
81
(手机横屏看源码更方便) 引子 大家知道,我最近在招人,今天遇到个同学,他的源码看过一些,然后我就开始了AQS连环问。 我:说说AQS的大致流程? 他:AQS包含一个状态变量,一个同步队列……balabala……互斥锁balabala,共享锁balabala…… 我:AQS中除了同步队列,还有什么队 ...
分类:
其他好文 时间:
2019-10-31 00:18:07
阅读次数:
95
一、基本概念 从操作的类型上来看,分为读锁和写锁: 读锁:共享锁,对同一份数据,多个读操作可以同时进行且相互间不影响 写锁:排它锁,独占资源。在当前操作未完成之前,其他写操作必须等待。读操作不影响。 排它锁作用于innodb,且必须在事务块中执行。在进行事务操作时,for update会对结果集中的 ...
分类:
数据库 时间:
2019-10-30 18:01:33
阅读次数:
118
一 MySQL总体架构 上图是《高性能MySQL》中对MySQL总体架构的描述,客户端对服务端的连接有很多条,有一个专门的处理组件,类似tomcat使用线程池处理请求。解析器负责解析sql语句,在这同时会访问缓存如果缓存有目标数据就直接返回。如果需要执行sql语句,还会先经过优化器重新编排执行过程( ...
分类:
数据库 时间:
2019-10-30 16:43:06
阅读次数:
173
mysql锁机制分为表级锁和行级锁:共享锁又称为读锁,简称S锁,顾名思义,共享锁就是多个事务对于同一数据可以共享一把锁,都能访问到数据,但是只能读不能修改。排他锁又称为写锁,简称X锁,顾名思义,排他锁就是不能与其他所并存,如一个事务获取了一个数据行的排他锁,其他事务就不能再获取该行的其他锁,包括共享... ...
分类:
其他好文 时间:
2019-10-17 12:05:34
阅读次数:
121
数据库中的共享锁与排他锁 共享锁,又称为读锁,获得共享锁之后,可以查看但无法修改和删除数据。 排他锁,又称为写锁、独占锁,获得排他锁之后,既能读数据,又能修改数据。 为什么要加锁 很多人都知道,锁是用来解决并发问题的,那么什么是并发问题呢?并发情况下,不加锁会有什么问题呢? 拿生活中的洗手间举例子, ...
分类:
其他好文 时间:
2019-10-11 23:42:01
阅读次数:
126
1.创建索引 要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引 在经常需要进行检索的字段上创建索引,比如要按照表字段username进行检索,那么就应该在姓名字段上创建索引,如果经常要按照员工部门和员工岗位级别进行检索,那么就应该在员工部门和员工岗位级别这两个字 ...
分类:
数据库 时间:
2019-10-06 15:00:33
阅读次数:
80
数据库中的锁 锁分类 按锁的粒度划分:表级锁、行级锁、页级锁 按锁级别划分:共享锁、排它锁、意向锁 按加锁方式划分:自动锁、显示锁 按使用方式划分:乐观锁、悲观锁 MySQL中的行级锁、表级锁和页级锁 行级锁:行级锁分为共享锁和排他锁。行级锁是MySQL中锁定粒度最细的锁。InnoDB引擎支持行级锁 ...
分类:
数据库 时间:
2019-10-03 19:42:15
阅读次数:
124