redis持久化 redis支持RDB和AOF两种持久化机制,持久化功能能有效避免因进程退出造成的数据丢失问题 RDBRDB持久化是把当前进程数据生成快照保存到硬盘的过程,触发RDB持久化过程分为手动触发和自动触发. 有两个命令可以用于生成RDB文件,一个是SAVE,另一个是BGSAVE.SAVE命令会阻塞Redis服务器进程,直到RDB文件创建完毕为止,在服务器阻塞期间,服务器不能处理任何命令请求. 和S 2021-10-24 Redis
synchronized Synchronized原子性所谓原子性就是指一个操作或者多个操作,要么全部执行并且执行的过程不会被任何因素打断,要么就都不执行 注意:synchronized和volatile特性的最大区别在于原子性,volatile不具备原子性 Synchronized使用Synchroniezd可以在静态方法,成员方法,成员对象属性上使用,归根结底它上锁的资源只有两类:一个是对象,一个是类. 同 2021-10-24 并发
MVCC 事务并发执行下遇到的问题 脏写如果一个事务修改了另一个未提交事务修改过的数据,就是发生了脏写,sessionA和sessionB各开始了一个事务,如果sessionB中的事务发生了回滚,那么sessionA中的更新也不复存在,这种现象就是脏写 脏读如果一个事务读到了另一个未提交修改过的数据,那就是发生了脏读sessionB先修改了number为1的数据,在sessionB还未提交事务的时候,s 2021-10-24 mysql
redo日志 redo日志是啥在真正访问页面之前,需要把在磁盘上的页缓存到Buffer Pool之后才可以访问,但是在事务的持久性的特性中,对于一个已经提交的事务,在事务提交后即使系统崩溃了,这个事务对数据库所做的更改页不能丢失,但是假如事务提交后发生了某个故障,导致内存中的数据都失效了,那么数据库如何做到持久性? 我们只是想让已经提交了的事务对数据库中数据所做的修改永久生效,即使后来系统崩溃,在重启后也能 2021-10-24 mysql