栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

redis小结

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

redis小结

基本数据类型:string,list,hash,set,zset

exec 提交所有事务(如果返回NULL,则代表事务提交失败)
discard 撤销所有未提交事务
Multi 命令用于标记一个事务块的开始
watch 会在事务开始之前盯住一个或多个关键变量,当事务执行时,也就是服务器收到了exec指令要顺序执行缓存的队列时,
redis会检查关键变量自watch之后是否被修改了。如果关键变量被人动了,exec就会返回null回复告知客户端事务执行失败,
这个时候客户端一般选择重试。
(watch放在multi的前面)

pubsub消息多播模块

内存回收机制:
redis是以页为单位回收的,如果还有一个key都不会回收,但是空闲会分给新来的。
jemalloc

redis集群:
主从同步
redis的复制内存buffer是一个环数组,记录修改指令,满了会覆盖。
增量同步:主节点异步将buffer中的指令同步到从节点,从节点一边执行同步的指令流来达到和主节点一样的状态,一边向主
节点反馈同步到哪里了。
快照同步:将内存的数据全部快照到磁盘文件中,然后再将快照文件的内容全部传送到从节点。
无盘复制:主服务器通过套接字将快照内容发送到从节点,生成快照是一个遍历的过程,主节点会一边遍历内存,一边将序列化
的内容发送到从节点,从节点还是跟之前一样,先将接受到的内容存储到磁盘文件中,再进行一次性加载。
wait将异步复制变成同步复制。
wait提供2个参数一个是从节点数量N,一个是时间t(毫秒),等待wait之前的所有写操作同步到N个从节点,最多等待时间t,
如果t=0代表无限等待。

sentinel 集群主节点挂了,选一个最新的代替。
codis分发服务。(将key通过hash得到一个值放到槽位里,codis可以设置1024个槽位,每个槽位都有对应的redis实例)
unlink 对删除操作进行懒惰处理。

stream 消息队列
info redis的运行状态‘’
分布式锁redlock没看懂

过期key惰性处理
定时扫描,随机选20个,删除过期的,如果过期的超过1/4,重复操作。(循环过多容易出问题)


淘汰策略:
内存满了,不再写入
淘汰设置了过期时间的key,最少使用的被淘汰。
淘汰设置了过期时间的key,剩余时间最少的淘汰。
淘汰设置了过期时间的key,随机删除一部分。
全部key,最近最少使用的被淘汰。
全部key,随机删除一部分。


flushdb:清楚当前数据库所有的key


 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/332231.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号