![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
redis
xl、
java小白一枚,记录撑场
展开
-
redis切片集群
redis切片集群(分片集群)当redis存储数据量过大的时候,在持久化时fork子进程的时间就会增多,导致redis性能差,所以当数据量大的时候采用切片集群切片集群:指启动多个redis实例组成一个集群,然后按照一定规则,将数据划分成多份,每份用一个实例保存保存规则:在切片集群方案中,共有16384个哈希槽(0-16383),首先根据key计算出一个16bit的值(CRC16算法),再用这个数值对16384取模,对应的模就是哈希槽的位置集群搭建:1.修改配置文件daemonize yes #后原创 2020-09-18 17:34:21 · 1145 阅读 · 0 评论 -
redis哨兵机制
redis哨兵机制在集群模式下,如果主库发生故障,就导致主库的写操作失败以及从库的数据同步失败哨兵机制主要解决主从库故障切换哨兵主要功能:监控:监控库是否在运行状态(周期性发送ping命令)选主:如果主库发生故障,选择新的主库通知:通知其他从库新的主库信息哨兵集群:防止当个哨兵误判主库状态哨兵个数:2N+1,可以减少误判概率哨兵选择从库的过程:优先级最高的:使用slave-priority配置小的分高,但是要大于0,0的不参与选举和旧主库同步程度最接近的从库得分高ID号小的从库得分高原创 2020-09-17 17:36:12 · 144 阅读 · 0 评论 -
redis主从库数据同步
redis主从库数据同步当启用多个redis实例的时候。可以通过replicaof或slaveof命令形成主从库关系数据同步流程1.从库发给主库psync命令,包含两个参数runID(主库id)和offset(复制进度),当第一次执行时,由于不知道主库的id,将主库id设为? offset设为-1,代表第一次复制2.主库接到从库命令后,会使用FULLRESYNC(表示第一次全量复制)命令进行响应,携带runID和offset3.返回从库后,从库记录下runID和offset4.主库将所有数据同步原创 2020-09-16 16:14:10 · 340 阅读 · 0 评论 -
redis持节策略--rdb
rdb(redis databasw)快照rdb记录的是某一时刻的数据,并不是操作,在做数据恢复时,直接将rdb文件读入内存,很快的完成恢复在把数据写入磁盘时,数据量越大,耗费时间页越多redis提供了两个命令生成rdb文件,分别时save、bgsavesave:在主线程执行,会导致线程阻塞bgsave:创建子进程执行,不影响主线程,在写入时主线程修改的数据会形成副本,bsave将副本数据写入rdb文件rdb方式在系统宕机后会丢失最近一次快照后的数据,redis4.0提出了一个混合使用rdb和a原创 2020-09-15 16:12:49 · 95 阅读 · 0 评论 -
redis持久策略--aof
aof(append only file)日志redis的aop采用写后日志,先执行命令,把数据写入内存,然后记录日志(防止记录了错误日志,防止据路日志阻塞写操作)风险:如果刚执行完一个命令,还没有来得及记日志就宕机了,那么这个命令和相应的数据就有丢失的风险OF虽然避免了对当前命令的阻塞,但可能会给下一个操作带来阻塞风险aof机制:always:同步写回,每个写命令执行玩,马上同步的将日志写入磁盘everysec:每秒写回,每个命令执行完,间隔一秒写日志no:操作系统控制写回,命令执行完,把原创 2020-09-15 15:22:50 · 133 阅读 · 0 评论