事务和锁机制是什么关系? 开启事务就自动加锁了吗? 1、事务与锁是不同的。事务具有ACID(原子性、一致性、隔离性和持久性),锁是用于解决隔离性的一种机制。 2、事务的隔离级别通过锁的机制来实现。另外锁有不同的粒度,同时事务也是有不同的隔离级别的。 3、开启事务就自动加锁。 ql规范定义的事务的隔离 ...
分类:
其他好文 时间:
2019-11-22 15:30:36
阅读次数:
244
浅谈Mysql共享锁、排他锁、悲观锁、乐观锁及其使用场景 Mysql共享锁、排他锁、悲观锁、乐观锁及其使用场景 一、相关名词 |--表级锁(锁定整个表) |--页级锁(锁定一页) |--行级锁(锁定一行) |--共享锁(S锁,MyISAM 叫做读锁) |--排他锁(X锁,MyISAM 叫做写锁) | ...
分类:
数据库 时间:
2019-11-22 10:33:09
阅读次数:
100
前置知识了解Java基本语法了解多线程基本知识知识介绍Synchronized简介:作用、地位、不控制并发的后果两种用法:对象锁和类锁多线程访问同步方法的7种情况:是否是static、Synchronized方法等Synchronized的性质:可重入、不可中断原理:加解锁原理、可重入原理、可见性原理Synchronized的缺陷:效率低、不够灵活、无法预判是否成功获取锁常见问题:如何选择Lock
分类:
编程语言 时间:
2019-11-22 01:23:46
阅读次数:
79
STL是c++提供的标准模板库,其中封装有常用的通用算法、数据结构。是可复用的组件库。STL有六个组件,分别是容器、算法、迭代器、适配器、仿函数、空间配置器。 1.容器:如数组、各种表、树、图等数据结构。用模板方式封装的。 2.算法:与具体数据结构相关的算法,通用类型算法。 3.迭代器:让数据结构透 ...
分类:
其他好文 时间:
2019-11-22 00:42:12
阅读次数:
72
根据加锁的范围,MySQL 里面的锁大致可以分成全局锁、表级锁和行锁三类。 一、全局锁 全局锁就是对整个数据库实例加锁。MySQL 提供了一个加全局读锁的方法,命令是 Flush tables with read lock (FTWRL)。当你需要让整个库处于只读状态的时候,可以使用这个命令,之后其 ...
分类:
其他好文 时间:
2019-11-19 15:41:10
阅读次数:
68
进程是多个资源的集合 线程就是进程里面具体干活的 线程和线程之间是相互独立的 多线程:适用于IO密集型任务 多进程:适用于CPU密集型任务 一、多线程 线程需要使用threading模块 启动线程的方法: threading.Thread(target=XXX,args=('xxx','xxx')) ...
分类:
编程语言 时间:
2019-11-19 01:11:59
阅读次数:
94
一,复制,对数据进行备份,实现搞可用,提高吞吐量,实现高性能。 1,主从架构 2,多主架构 3,主主从从 4,主备 (实际用得多) 二,分片/分库分表 () 1,垂直拆分 1,垂直分表 2,垂直分库 如果做垂直分库,应该把有关联的表放在同一个库中,因为数据库的事务不能跨库,不能使用inner joi ...
分类:
数据库 时间:
2019-11-18 13:07:11
阅读次数:
120
manager 能够实现进程之间的数据共享 (list,dict) 如果多个进程同事修改同一份共享数据,这个时候需要加锁,保证数据的准确性。 (1) dict list 可以实现进程之间的数据共享 (2)为了保证数据的准确性,需要加锁 基本语法: m = Manager() dic = m.dic( ...
分类:
系统相关 时间:
2019-11-16 12:44:27
阅读次数:
77
同步方法就是在方法前加关键字 synchronized;同步代码块则是在方法内部使用 synchronized 加锁对象相同的话,同步方法锁的范围大于等于同步方法块。一般加锁范围越大,性能越差 同步方法如果是 static 方法,等同于同步方法块加锁在该 Class 对象上 Java 自学指南 Ja ...
分类:
其他好文 时间:
2019-11-16 12:31:49
阅读次数:
86
单例模式之懒汉式 饿汉式在多线程的情况小可能会出现多实例的情况 解决1;加锁 解决2:双层判断方式,减少枷锁的次数doubleCheck 3.保证程序的有序性,禁止程序内部优化,从而保证不会出现空指针异常 4.利用jvm只产生一份static,并且是主动加载,实现单例懒汉式 使用枚举模式 ...
分类:
编程语言 时间:
2019-11-15 00:23:05
阅读次数:
100