Reds 持久化 高并发 高可用
Redis:开源且遵守BSD协议的key-value数据库。特别注意redis是单线程;
持久化;
将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用
方式:RDB AOF
RDB————把当前Redis在内存中的状态保存到磁盘上,RDB文件是一个压缩过的二进制文件(图片来源于简书)
AOF————对每条写入命令作为日志,以append-only模式写入一个日志文件中,在redis重启的时候,可以通过AOF写入的指令来重新构建整个数据集。(命令追加、文件写入、文件同步)(图片来源于简书)
总结:RDB更快但丢失数据风险更高,AOF更安全但执行效率更低,
两者相结合使用:
AOF来保证数据不丢失,作为恢复数据的第一选择;
RDB来做不同程度的冷备,当AOF文件崩盘时快速恢复数据;
高并发:
1,采用主从架构,一主(写入数据)多从(查询数据)---------------主节点写数据,数据复制到其他slave节点,从节点读取; 2,采用 redis集群 (集群定义:添加服务器的数量,提供相同的服务,从而让服务器达到一个稳定、高效的状态。)————强化 redis读写能力注:redis集群是基于redis主从复制实现,每一个redis称之为一个节点。节点类型分为两种:主节点(master)(可读、可写.)、从节点(slave)(只读read-only)
要说的太多了,此处省略一万字。。。。。。
高可用:
定义: 系统可用的时间 / 总的时间 = 高可用性
数据库实现高可用
注意:系统实现高可用的方法:资源隔离 负载均衡 接口限流 熔断降级