曾经的blog

曾经的子标题

导航

随笔分类 -  redis_学习

redis学习区
redis_哈希对象
摘要:redis哈希对象的底层编码有两种:ziplist、hashtable ziplist编码 当一个哈希键只包含少量kv对、且key和value都是小整数值、短字符串时,redis会使用压缩列表来做 ziplist编码之前介绍过,最初是用在列表对象中的一种编码,在简单的哈希对象中也会用到。有遗忘时参考 阅读全文

posted @ 2018-06-11 11:14 阿智 阅读(403) 评论(0) 推荐(0)

redis_列表对象
摘要:《Redis设计与实现》中说:redis列表对象有两种底层编码格式:ziplist、linkedlist,其中ziplist用压缩列表实现、linkedlist用双向链表实现 但我在实践中,没有发现linkedlist的使用,而发现了一种叫"quicklist"的type,意为一个由ziplist组 阅读全文

posted @ 2018-06-07 18:18 阿智 阅读(442) 评论(0) 推荐(0)

redis_字符串对象
摘要:Redis总共支持五种数据类型:string,hash,list,set及zset。这里介绍字符串类型的实现 首先了解字符串对象的结构 上面的redisObject不实际保存字符串内容,而是通过ptr指向实际保存字符串内容的空间,叫sdshdr(Simple Dynamic String hdr 简 阅读全文

posted @ 2018-06-06 16:53 阿智 阅读(642) 评论(0) 推荐(0)

redis_字典_哈希hash
摘要:字典、哈希表基本数据结构 redis字典使用哈希表作为底层实现,基本结构就是数组+散列 其中,哈希表数组中的每一个节点,与1.8之前的jdk中map很相似,也是链表结构 最终的redis字典内部,由2个哈希表构成。平时只使用其中的一个,当需要扩展或收缩哈希表时,启用第二个,后续详细介绍 redis字 阅读全文

posted @ 2018-06-04 15:43 阿智 阅读(618) 评论(0) 推荐(0)

redis_简单动态字符串
摘要:在redis中,C字符串(以'\0'结尾的字符数组)只用在一些无需对字符串值进行修改的地方,比如打印日志。其他情况,redis使用SDS - SimpleDynamicString 简单动态字符串,来做。 比如 键,是一个字符串对象,底层是一个保存着字符串"testKey"的SDS 值也是一个字符串 阅读全文

posted @ 2018-06-04 14:53 阿智 阅读(262) 评论(0) 推荐(0)