• 2.redis通用配置


    所谓通用配置,就是所有模式都需要修改的配置。redis的配置文件以“#####xxx#####”分隔了不同的功能区。我们以redis.conf文件作为模板进行修改配置。下面只是列出了主要需要修改的一些配置信息。注意:这里不涉及“#### REPLICATION ######”(slave设置)和“##### REDIS CLUSTER #######”(cluster)的配置。完成这些配置后,我们就可以启动一个单节点的redis实例了。
     
    # 配置绑定的IP地址
    bind 192.168.235.121
    # 监听的端口号
    port 6379
     
    # 默认为600秒,当client 端idle时间超过600秒则断开连接
    timeout 600
    tcp-keepalive 300
    # 如果并发连接量很大,建议调大这个数值,但是这个值小于等于/proc/sys/net/core/somaxconn 里面的值。
    tcp-backlog 1000
     
    # daemonize 要设置成yes。表示可以以守护进程方式启动
    daemonize yes
     
    # pid文件路径
    pidfile “~/apps/redis/var/redis-6379.pid”
     
    # 日志文件路径
    logfile “~/apps/redis/logs/redis-6379.log”
     
    # SNAPSHOTTING,如果数据不是特别重要,可以增大bgsave的时间间隔,以提升效率,甚至可以关闭到磁盘的存储,save ""。具体的解释可以看文章最后的解释
    save 900 1
    save 300 10
    save 60 10000
     
    # 如果数据不是特别重要,可以设置为no,这样即使出现disk 故障,redis仍然可以提供读写服务,设置为yes,disk故障,redis只能提供读服务。
    stop-writes-on-bgsave-error yes
     
    # 如果网络不稳定的情况下,为了避免全量复制,可以根据实际情况调大repl-backlog-size
    # backlog(复制积压缓存区)保存了最近一段时间的写操作。
    repl-backlog-size 1mb
     
    # rdb 文件路径
    dbfilename "dump-6379.rdb"
    dir "~/apps/redis/data"
     
    # 设置redis 实例的密码
    requirepass "xxxxxx"
     
    # 设置最大客户端连接数,为了保证性能,最高最好不要超过5000
    maxclients 4096
     
    # 设置实例最大内存限制,为保证集群稳定,建议设置
    maxmemory <bytes>
     
    # APPEND ONLY MODE。会记录所有的redis操作,路径同rdb
    appendonly yes
    appendfilename "appendonly-6379.aof"
     
    # 可以适度调大aof rewrite的条件,避免过于频繁的rewrite。或者直接关闭自动重写(设置auto-aof-rewrite-percentage为0),然后设置定时任务进行重写
    auto-aof-rewrite-percentage 100
    auto-aof-rewrite-min-size 64mb
     
    注:关于rdb和aof的说明
    1.rdb是内存数据的持久化,aof记录的是所有的操作,二者都可以用来恢复redis数据库。其中,由于rdb写磁盘是根据save配置设置的,可能会丢失部分数据,尤其是在使用flushdb/flushall的时候,可以肯定由于自动bgsave的原因数据基本不可恢复。aof也可以用来恢复数据库,只是稍微慢一点,但不会丢数据,因为其记录的是每一条命令,当然这有个前提,就是执行flushdb/flushall命令之后,没有执行bgrewriteaof操作,否则一样不可以恢复。一般数据不是特别紧要的情况下,我会关闭rdb,开启aof,但不设置aof的自动重写,而是在凌晨通过crontab手动执行bgsave和bgrewriteaof操作。redis启动时默认先使用aof恢复数据。
    2.aof重写,不是操作aof文件,而是读取内存中的数据生成一个新的aof文件,替换原来的文件。


  • 相关阅读:
    Linux实战(2):Linux传输文件
    Linux实战(1):装机一键设置脚本初级版
    Docker实战(4):Docker错误记一笔
    Docker实战(3):Tomcat部署
    Docker实战(5)升级Docker版本后的报错
    Promise
    创建数据库
    wepy中组件之间通信方法
    javascript —— 禁止通过 Enter 键提交表单
    input禁止复制、粘贴、剪切
  • 原文地址:https://www.cnblogs.com/anand-sun/p/12093618.html
Copyright © 2020-2023  润新知