http://jm.taobao.org/2017/02/09/20170209/
处理事务的常见方法
处理事务的常见方法有排队法、排他锁、读写锁、MVCC等方式,下面来一一解析。
单线程处理方式在内存的情况是效率是最优的(在Redis中,如果数据全部在内存中,则单线程处理所有Put、Get操作效率最高)。在设计系统时,面对磁盘、网络、SSD等慢速设备必须考虑使用多线程。
事务的调优原则
事务的调优的思路是在不影响业务应用的前提下: 第一,尽可能减少锁的覆盖范围,例如Myisam表锁到Innodb的行锁就是一个减少锁覆盖范围的过程;对于原位锁(排他锁、读写锁等)可变为MVCC多版本(本质仍然是减少锁的范围)。 第二,增加锁上可并行的线程数,例如读锁和写锁的分离,允许并行读取数据。 第三,选择正确锁类型,其中悲观锁适合并发争抢比较严重的场景;乐观锁适合并发争抢不太严重的场景。
转载请注明原文地址: https://ju.6miu.com/read-676143.html