zoukankan      html  css  js  c++  java
  • redis启用持久化

     redis的持久化有rdb和aof两种。
    rdb是记录一段时间内的操作,一盘的配置是一段时间内操作超过多少次就持久化。
    aof可以实现每次操作都持久化。
    这里我们使用aof。

    配置方式,打开redis的配置文件。找到appendonly。默认是appendonly no。改成appendonly yes。

    再找到appendfsync
    默认是:

        # appendfsync always   #每次收到写命令就立即强制写入磁盘,最慢的,但是保证完全的持久化,不推荐使用  
        appendfsync everysec     #每秒钟强制写入磁盘一次,在性能和持久化方面做了很好的折中,推荐  
        # appendfsync no    #完全依赖os,性能最好,持久化没保证  



    默认每秒持久化满足我的需求。
    其实改下appendonly 就ok了。

    appendfsync no的时候,Redis不会主动调用fsync,将缓冲区中的数据写到磁盘上。
       appendfsync everysec
            当设置appendfsync为everysec的时候,Redis会默认每隔一秒进行一次fsync调用时长超过1秒时。Redis会采取延迟fsync,这一次的fsync时文件描述符会被阻塞,所以当前的写操作就会阻塞。
            结论就是,在绝大多数情况下,Redis会每隔一秒进行一 次fsync操作。这一操作在大多数数据库系统中被称为group commit,就是组合多次写操作的数据,一次性将日志写到磁盘。
       appendfsync always
            置appendfsync为always时,每一次写操作都会调用一次fsync,
    所以其性能也会受到影响。
     

  • 相关阅读:
    【Linux基础】linux下修改ls显示的时间格式
    【Teradata】gtwglobal查看
    【Teradata】tdlocaledef修改默认日期配置
    【Linux基础】文件处理实例
    【Linux基础】awk命令
    【teradata】强制解锁
    第1节:保存文档
    Centos7安装MySQL数据库
    MyBatis框架之异常处理
    spring事务源码分析
  • 原文地址:https://www.cnblogs.com/mrhgw/p/Redis.html
Copyright © 2011-2022 走看看