关于java:Redis的持久化

38次阅读

共计 756 个字符,预计需要花费 2 分钟才能阅读完成。

Redis 的高性能是因为其将所有数据都存储在了内存中,为了使 Redis 在重启之后仍能保证数据不失落,须要将数据从内存中同步到硬盘中,这一过程就是长久化。Redis 反对两种形式的长久化,一种是 RDB 形式,一种是 AOF 形式。能够独自应用其中一种或将二者联合应用。
RDB 长久化机制
RDB 长久化是指在指定的工夫距离内将内存中的数据集 快照 写入磁盘。
这种形式是就是将内存中数据以快照的形式写入到二进制文件中, 默认的文件名为 dump.rdb。这种形式是默认曾经开启了, 不须要配置.
AOF 长久化机制
AOF 长久化机制会将每一个收到的写命令都通过 write 函数追加到文件中, 默认的文件名是 appendonly.aof。这种形式默认是没有开启的, 要应用时候须要配置.
RDB 长久化机制优缺点
长处
RDB 是一个十分紧凑(compact)的文件,它保留了 Redis 在某个工夫点上的数据集。这种文件非常适合用于进行备份
RDB 在复原大数据集时的速度比 AOF 的复原速度要快(因为其文件要比 AOF 的小)
DB 的性能要比 AOF 更好
毛病
RDB 的长久化不够及时, 可能会存在数据失落
RDB 长久化时如果文件过大可能会造成服务器的阻塞, 进行客户端申请
AOF 长久化机制优缺点:
长处
AOF 的持久性更加的持久(能够每秒 或 每次操作保留一次)
AOF 文件有序地保留了对数据库执行的所有写入操作,这些写入操作以 Redis 协定的格局保留,因而 AOF 文件的内容非常容易被人读懂,对文件进行剖析(parse)也很轻松。
AOF 是增量操作
毛病
对于雷同的数据集来说,AOF 文件的体积通常要大于 RDB 文件的体积
依据所应用的 fsync 策略,AOF 的速度可能会慢于 RDB.

抉择:
如果你十分关怀你的数据,但依然能够接受数分钟以内的数据失落,抉择 RDB 长久化。
如果对数据的完整性要求比拟高, 抉择 AOF

正文完
 0