
Redis
Redis学习之旅
小萤哥
这个作者很懒,什么都没留下…
展开
-
Redis学习之旅 底层数组结构
Redis学习之旅 底层数组结构有人会问,redis的数据结构不是string list set hash zset么?怎么又出来一个底层数据结构?Redis自行构建了自己的VM,设计了五种底层的数据结构来实现上层的五种对外的数据结构本质上,一切设计都是为了保证redis在执行命令时的快,从这个角度出发去理解Redis的底层数据结构会更容易一些SDS(Simple Dynamic String)先考虑个问题,如果在内存中直接使用字符数组(类似java)来保存上层String类型的数据,那么做原创 2020-06-04 17:14:06 · 218 阅读 · 0 评论 -
Redis学习之旅 管道/脚本/过期/事务
Redis学习之旅 管道/脚本/过期/事务本文尝试将 管道、脚本、过期和事务一起归纳一下管道我们都知道,一个命令通常都是由一个客户端通过网络连接发送到某个服务,由服务做出响应并给出回复,相对于Redis的快速,网络的传输速度往往是制约Redis发挥最大功效的因素,因此Redis设计了管道的概念常规的使用,就是由客户端 1.通过网络发送请求-2.Redis处理计算-3.通过网络返回结果,所有的命令都是这样123-123-123式的进行处理,性能的消耗基本上都消耗在了网络传输上,在此基础原创 2020-06-02 11:12:21 · 220 阅读 · 0 评论 -
Redis学习之旅 ZSet(Sorted set)篇
Redis学习之旅 ZSet(Sorted set)篇为啥它叫ZSet?因为Set的开头字母也是S,Sorted Set缩写为SSet不合适 ,会导致命令冲突 ,所以干脆用Z代替,ZSet出生了~它的出现也是解决set天生无序的问题命令学习redis-cli模式下键入 help @sorted_set就可以快速相关的命令集合1.0 时代命令起始版本作用示例ZADD1.2.0添加元素ZADD key [NXZCARD1.2.0和SCARD很类似,统计原创 2020-06-01 22:12:13 · 741 阅读 · 0 评论 -
Redis学习之旅 Set篇
Redis学习之旅 Set篇set和list一样都是一个存储容器,但是它的list有两个不同的地方一是无序二是元素会自动去重命令学习redis-cli模式下键入 help @set 就可以快速相关的命令集合1.0时代/2.0时代set也是一个不经常变更的命令集,在1.0时代添加了大量的set命令之后 ,2.0版本增加过一个命令后就再也没有维护过,此处进行合并项目Value作用示例SADD1.0.0向set里添加元素SADD key member [m原创 2020-06-01 20:15:06 · 157 阅读 · 0 评论 -
Redis学习之旅 Hash篇
Redis学习之旅 Hash篇Hash结构就是在redis本身 的K-V结构基本上,又提供了一个K-V结构,通常用来保存对象结构比较合适,但是不宜将对象结构弄的过大命令学习redis-cli模式下键入 help @hash就可以快速相关的命令集合hash是从2.0开始加入到redis中的,因此从2.0开始总结2.0时代/3.0时代hash命令自2.0加入后,在3.2版本新增了一个命令后,就没再更新过,因此合并汇总命令起始版本作用示例HDEL2.0.0删除原创 2020-06-01 17:36:42 · 143 阅读 · 0 评论 -
Redis学习之旅 List篇
Redis学习之旅 List篇List可以组装成队列、栈等容器,还可以拿来实现消息队列有几个前提要知道,list内的元素是可重复的,每一个元素其实还是一个String类型的对象命令学习redis-cli模式下键入 help @list 就可以快速相关的命令集合在学习Redis命令时,有些东西需要知道,L开头的命令,有些是指的Left ,有些指的是List1.0时代命令起始版本作用示例LINDEX1.0.0list index 从左侧0起,按索引查找对应位置的原创 2020-06-01 17:15:04 · 246 阅读 · 0 评论 -
Redis学习之旅 位图(BitMap)
Redis学习之旅 位图(BitMap)单独给位图开一章,是因为这块的东西确实玩法众多,面试也常常遇到,干脆将其拆分为独立的一章Redis BIT相关命令BITCOUNT从字面意思上来看,bitcount翻译过来叫位统计,那么统计的是什么呢?,其实是01串中1的个数OK,这不简单么,我知道了,字符串1 BITCOUNT的结果肯定是1,因为1的二进制是 0000 0001嘛,我们看下结果我了个大擦,怎么会是3?,这就又回到我们在String篇里提到的一个概念,Redis Strin原创 2020-05-28 13:06:10 · 407 阅读 · 0 评论 -
Redis学习之旅 String篇
Redis学习之旅 String篇String 支持追加,截取,自增,位图等等玩法,大佬们都快把Redis的String玩出花了,本篇总结下Redis 的String 类型认识type/ object encoding命令先看下type命令的帮助文档,它说这个命令可以确定一个已存储的Key的类型可以看到无论输入什么样的数据,字符串也好,数字串也好,他显示的type都是string但是通过对象编码命令查看,就会看到,Redis在类型之外 ,还单独的维护了一个编码格式进行编码的好处在于,可原创 2020-05-28 00:34:17 · 177 阅读 · 0 评论 -
Redis学习之旅 安装Redis6.0.3
Redis学习之旅 安装Redis6.0.3一切,从安装开始友情链接,Redis 英文官方网站下载编译可以通过这个链接下载并安装Redis 6.0.3版本,安装的主机版本CentOS 7wget http://download.redis.io/releases/redis-6.0.3.tar.gz解压文件tar zxf redis-6.0.3cd redis-6.0.3可以看到一个README.MD的MarkDown文档,打开它,文档中清晰的记录了如何去构建RedisOK,是原创 2020-05-27 22:30:27 · 357 阅读 · 0 评论