参考:https://www.cnblogs.com/volcano-liu/p/9890832.html inndb是如何实现事务隔离级别的https://www.cnblogs.com/volcano-liu/p/9893317.html 参考MyISAM与InnoDB两者之间区别与选择,详细总 ...
分类:
数据库 时间:
2018-11-12 17:47:43
阅读次数:
174
今天遇到个奇怪的问题, 一个秒杀商品系统, 大量秒杀请求进来, 到了action居然是单线程执行! 这样产生的效果就是“这个系统好慢啊!!”。 可是我没有加lock,为什么会变成单线程执行呢? 找资料才知道, session有个锁机制。 和数据库的锁一样, 分共享锁和排它锁。 共享锁占用时,排它锁必 ...
分类:
Web程序 时间:
2018-11-11 19:09:55
阅读次数:
216
乐观锁和悲观锁 乐观锁和悲观锁是在数据库中引入的名词,但是在并发包锁里面也引入了类似的思想,所以这里还是有必要讲解一下。 悲观锁指对数据被外界修改持保守的态度,认为数据很容易就会被其他线程修改,所以在数据被处理前就先对数据加锁,并在整个数据处理过程中,使数据处于锁定状态,悲观锁的实现往往依靠数据库提 ...
分类:
编程语言 时间:
2018-11-11 16:56:41
阅读次数:
185
六、中间件篇 1.消息中间件如何保证消息的一致性和如何进行消息的重试机制? 2.Spring Cloud熔断机制介绍; 3.Spring Cloud对比下Dubbo,什么场景下该使用Spring Cloud? 七、数据库篇 4.锁机制介绍:行锁、表锁、排他锁、共享锁; 5.乐观锁的业务场景及实现方式 ...
分类:
数据库 时间:
2018-11-06 01:02:24
阅读次数:
226
Zookeeper是分布式协调工具 应用场景 命名服务(注册中心) Dubbo注册中心 分布式配置中心(SpringCloud config)动态管理配置文件信息 消息中间件 事件通知(类似发布订阅) 分布式事务(全局协调者) 实现分布式锁 实现选举策略(类似哨兵机制) 实现本地动态负载均衡 (Du ...
分类:
其他好文 时间:
2018-11-02 19:07:07
阅读次数:
142
一、资源共享 多个线程内部有自己的数据栈,数据不共享;全局变量在多个线程之间是共享的。 1 # 线程数据共享不安全加锁 2 3 import time 4 from threading import Thread, Lock 5 6 7 num = 100 8 9 def func(t_lock): ...
分类:
编程语言 时间:
2018-10-26 20:32:15
阅读次数:
169
一、并发控制中锁的概念 锁是并发控制中最核心的概念之一,在MySQL中的锁分两大类,一种是读锁,一种是写锁,读锁也可以称为共享锁(shared lock),写锁也通常称为排它锁(exclusive lock)。 这里先不讨论锁的具体实现,描述一下锁的概念:读锁是共享的,或者说是相互不阻塞的。多个客户 ...
分类:
数据库 时间:
2018-10-26 14:30:42
阅读次数:
209
事物中的锁简单说就是S共享锁,X排它锁 X锁在所有事物中,一旦加上,持续到COMMIT才释放 未提交读 (READ UNCOMMITTED):读取时候不会加共享锁,直接读取 已提交读(READ COMMITTED):读取时候加S锁,读完立马释放S锁,会在事物完成前就立马释放S锁 可重复读(REPEA ...
分类:
数据库 时间:
2018-10-23 00:08:53
阅读次数:
200
概念介绍开发人员喜欢在SQL脚本中使用WITH(NOLOCK), WITH(NOLOCK)其实是表提示(table_hint)中的一种。它等同于 READUNCOMMITTED 。 具体的功能作用如下所示(摘自MSDN): 1: 指定允许脏读。不发布共享锁来阻止其他事务修改当前事务读取的数据,其他事... ...
分类:
数据库 时间:
2018-10-20 22:18:11
阅读次数:
233
摘自:https://www.cnblogs.com/protected/p/6526857.html 关于数据库的各种锁的总结: 1.共享锁(又称读锁)、排它锁(又称写锁): InnoDB引擎的锁机制:InnoDB支持事务,支持行锁和表锁用的比较多,Myisam不支持事务,只支持表锁。 共享锁(S ...
分类:
数据库 时间:
2018-10-15 12:01:57
阅读次数:
161