







redis 常用的数据类型



操作线上模糊匹配key

keys 会返回所有 数据比较大多慢,造成卡顿,数据量多 不推荐使用

scan 指令 可以快速返回 模糊匹配数
java 开发 直接用set数组接收 scan 返回的集合 然后默认去重 暴力快速 例如下面

1)里面 游标值
2)里面 是values
java开发可以使用jedisUtil 开发包

redis 分布式锁



设置key过期时间


原子性问题解决



拓展

redis 做原子队列





简单的 多个订阅模式


redis 持久化

redis conf 配置持久化
save 900 1 //900s有一条写入指令 产生一个快照 save 300 10 // 300s有10条写入 产生一个快照 save 60 10000 // 60s 有10000次写入 备份一下 // save "" -----禁用rdbcompression
stop-writes-on-bgsave-error yes //当备份出错时 主进程停止写入操作 为了保护持久化的数据一致性 (如果系统有完善的监控系统可以关闭,一般默认开启) rdbcompression yes // 在备份的时候 先压缩 再备份 (会占用cpu使用率 如果禁用 添加 save "" 就可以禁用了 )







AOF持久化

AOf默认是关闭的 如何打开
conf 里面的 appendonly no 改为 yes appendfilename "appendonly.aof" // 默认保存的文件的名字 appendfsync everysec // always 每个操作实例化到磁盘 everysec(默认) 没秒同步一次 no 就是不了




文件恢复数据 (重启即可)

RDB AOF 优缺点



redis Pipeline

Pipeline 就跟 批量插入数据库数据一样 合并访问接口一样 减少 io次数 减少 每一次的提交返回, 大大的提高性能
redis 主从 哨兵 同步机制



缺点 不能高可用 主redis 挂了 就gg


redis 集群







a可能会爆

总结

