悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。 乐观锁(Op ...
分类:
其他好文 时间:
2017-05-11 20:30:50
阅读次数:
142
临界区和互斥锁的区别1、临界区只能用于对象在同一进程里线程间的互斥访问;互斥体可以用于对象进程间或线程间的互斥访问。2、临界区是非内核对象,只在用户态进行锁操作,速度快;互斥体是内核对象,在核心态进行锁操作,速度慢。3、临界区和互斥体在Windows平台都下可用;Linux下只有互斥体可用 ...
分类:
其他好文 时间:
2017-05-01 22:10:20
阅读次数:
301
innodb 的行锁是在有索引的情况下,没有索引的表是锁定全表的. 表锁演示(无索引) Session1: mysql> set autocommit=0; mysql> select * from innodb_test;+ + +| id | name |+ + +| 1 | woshicesh ...
分类:
数据库 时间:
2017-04-29 21:02:45
阅读次数:
187
场景描写叙述 一台机器上部署两个相同的应用,两个相同的应用服务同一时候使用一套日志输出文件。 异常现象 日志文件里两个应用间歇性的丢失日志信息。 分析及解决 日志丢失原因:两个应用程序在写日志的时候会对日志文件进行锁定,导致此时另外一个应用程序无法对此日志文件记性读写。 解决方式:将两个应用程序的日 ...
分类:
其他好文 时间:
2017-04-24 15:46:17
阅读次数:
159
MySQL存储引擎,也被称为表类型:MyISAM表:无事务处理功能,支持表锁.frm:表结构定义文件.MYD:表数据文件.MYI:表索引文件InnoDB表:支持事务处理功能,支持行锁.frm:表结构定义文件.ibd:表空间(包含数据和索引文件)MySQL常用的查询命令:SHOWENGINES;#查看数据库支持的..
分类:
数据库 时间:
2017-04-21 18:10:44
阅读次数:
270
锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的 计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有...
分类:
数据库 时间:
2017-04-20 15:38:03
阅读次数:
343
悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。 乐观锁(Op ...
分类:
数据库 时间:
2017-04-13 19:59:54
阅读次数:
242
MVCC (Multiversion Concurrency Control),即多版本并发控制技术 行锁+多版本 使得很小的开销就可以实现读不加锁,提高数据库的并发性 你可将MVCC看成行级别锁的一种妥协,它在许多情况下避免了使用锁,同时可以提供更小的开销。根据实现的不同,它可以允许非阻塞式读,在 ...
分类:
Web程序 时间:
2017-04-10 17:41:15
阅读次数:
275
要求:用户输入用户名和密码错误三次,就对该用户进行锁定,不让其进行登录。 程序中test为用户的信息库: test1:为缓存错误用户的信息,对错误用户进行计数。 test2:为存储达到规定次数的用户信息,就是黑名单。使在名单里的用户无法完成登录操作。 ...
分类:
编程语言 时间:
2017-04-09 09:45:41
阅读次数:
202
数据库越来越大,单个表中数据过多,查询读写,还有锁机制,会导致严重的数据库性能影响.表锁,行锁,都是为了保证数据的完整性,分表分表是把一个大表,分成若干个独立储存空间的表,每个表都对应MYD数据文件,MYI索引文件,FRM表结构文件,这些表可以分布在一个存储设备,也可以分在不同存..
分类:
数据库 时间:
2017-03-31 13:57:00
阅读次数:
196