redis进阶(持久化、发布订阅、主从复制、缓存穿透和雪崩)

2021/7/19 19:11:06

本文主要是介绍redis进阶(持久化、发布订阅、主从复制、缓存穿透和雪崩),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

redis进阶

  • Redis.conf配置
    • 包含(多个配置文件集成)
    • 网络
    • 通用 GENERAL general
    • SNAPSHOTTING 快照 snapshotting
    • REPLICATION 主从复制 replicatioon
    • SECURITY 安全 security
    • CLIENTS 客户端限制 clients
    • MEMORY MANAGEMENT 内存设置 memory management
    • APPEND ONLY MODE(append only mode) AOF的设置
  • Redis持久化
  • Redis发布订阅
  • Redis主从复制
  • Redis缓存穿透和雪崩

Redis.conf配置

units不区分大小写

包含(多个配置文件集成)

可以包含别的文件

网络

# bind 127.0.0.1  绑定的IP   *通配
protected-mode no		#是否受保护
port 6379	默认端口

通用 GENERAL general

daemonize yes   #以守护进程方式运行  默认是no

supervised no   管理守护进程的,不用动

pidfile /var/run/redis_6379.pid   #如果以后台方式运行,我们就需要指定一个pid文件

日志级别:
# Specify the server verbosity level.
# This can be one of:
# debug (a lot of information, useful for development/testing)  :一般用于测试、开发
# verbose (many rarely useful info, but not a mess like the debug level)  :类似debug
# notice (moderately verbose, what you want in production probably)  :通知:部分重要通知,仅适用于生产环境
# warning (only very important / critical messages are logged) :警告  非常关键的信息才会打印
loglevel notice

logfile ""  日志生成的文件位置名  空位标准输出

databases 16  默认数据库数量

always-show-logo no		是否显示logo

SNAPSHOTTING 快照 snapshotting

redis 是内存数据库,不持久化的话数据就会丢
持久化:在规定的时间内,执行了多少次操作,会持久化到文件  .rdb  .aof

 save 3600 1		如果1小时内,至少一个key进行了修改,我们就进行持久化操作
 save 300 100		如果300s(5分钟)内,至少10 个key进行了修改,我们就进行持久化操作
 save 60 10000		如果60s(1分钟)内,至少10000 个key进行了修改,我们就进行持久化操作


stop-writes-on-bgsave-error yes  持久化出现错误后,是否继续进行工作

rdbcompression yes 是否压缩rdb文件 压缩就会消耗CPU资源

rdbchecksum yes		保存时,是否校验rdb文件 

dir ./			rdb文件保存的目录  默认当前文件下

REPLICATION 主从复制 replicatioon

在这里插入图片描述


SECURITY 安全 security

在这里插入图片描述

config get requirepass  获取密码指令  启动Redis后
config set requirepass "123455" 设置密码指令
auth "123455" 验证密码,获取权限

CLIENTS 客户端限制 clients

# maxclients 10000  设置能连接上Redis的最大客户端的数量

MEMORY MANAGEMENT 内存设置 memory management

# maxmemory <bytes>  redis配置设置最大内存容量
# maxmemory-policy noeviction  内存达到上限之后的处理策略  
移除过期的key  报错
LRU:最近最久未使用

1、volatile-lru:只对设置了过期时间的key进行LRU(默认值) 

2、allkeys-lru : 删除lru算法的key   

3、volatile-random:随机删除即将过期key   

4、allkeys-random:随机删除   

5、volatile-ttl : 删除即将过期的   

6、noeviction : 永不过期,返回错误

在这里插入图片描述

APPEND ONLY MODE(append only mode) AOF的设置

AOF 第二种持久化方式

appendonly no  默认不开启AOF,默认使用RDB方式持久化

appendfilename "appendonly.aof"  持久化的文件的名字

# appendfsync always  每次修改都会同步,速度慢,消耗性能
appendfsync everysec  每秒执行一次sync同步,(宕机)可能会丢失这1s的数据
# appendfsync no      不同步  这个时候操作系统自己同步数据,速度最快


Redis持久化

Redis发布订阅

Redis主从复制

Redis缓存穿透和雪崩



这篇关于redis进阶(持久化、发布订阅、主从复制、缓存穿透和雪崩)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程