本教程使用redis3.0版本。3.0版本主要增加了redis集群功能。 安装的前提条件: 需要安装gcc:yum install gcc-c++ tar -zxvf redis-3.0.0.tar.gz [root@bogon redis-3.0.0]# make install PREFIX=/ Read More
Redis的所有数据都是保存在内存中,然后不定期的通过异步方式保存到磁盘上(这称为“半持久化模式”);也可以把每一次数据变化都写入到一个append only file(aof)里面(这称为“全持久化模式”)。 由于redis的数据都是存放在内存中,如果没有配置持久化,redis重启后数据就全丢失了 Read More
DBMS中并发控制的任务是确保多个事务同时存取数据库中同一数据时不破坏事务的隔离性和统一性以及数据库的统一性 乐观锁和悲观锁是并发控制主要采用的技术手段。 无论是乐观锁还是悲观锁,都是人们定义出来的概念,可以认为是一种思想。其实不仅仅是关系型数据库中有乐观锁和背锅所的盖面,其他很多地方都有类似的概念 Read More
锁是在执行多线程时用于强行限制资源访问的同步机制,即用于在并发控制中保证对互斥要求的满足 行级锁:是mysql中锁定粒度最细的一种锁,表示只针对当前操作的行进行加锁。行级锁能大大减少数据库操作的冲突。其加锁粒度最小,但加锁的开销也最大。行级锁分为共享锁和排他锁 特点:开销大,加锁慢,会出现死锁;锁定 Read More
并发控制 DBMS中的并发控制的任务是确保在多个事务同时存取数据库中统一数据时不破换事务的隔离性以及数据库的统一性。 例:现有两处火车票售票点,同时读取某一趟列车车票数据库中车票余额为 X。两处售票点同时卖出一张车票,同时修改余额为 X -1写回数据库,这样就造成了实际卖出两张火车票而数据库中的记录 Read More
在DBMS中,事务保证了一个操作序列可以全部执行或者全部不执行(原子性),从一个状态撞边到另外一个状态(一致性)。由于事务满足持久性。所以一旦事务被提交之后,数据就能被持久化下来,又因为事务是满足隔离性的,所以,当多个事务同时处理同一个数据的时候,多个事务是互不影响的。所以,在多个事务并发操作的过程 Read More