随笔分类 - Redis系列
对redis的基础和进阶进行学习
摘要:1、说明 HyperLogLog是redis的高级用具结构,用来做基数统计用。 HyperLogLog提供的是一种不精确的去重计算方法,统计出来的结果和实际结果误差比大概为0.91%。 在计算比较小时,它的存储空间采用稀疏矩阵进行存储,空间占用很小,然后再计算慢慢变大,稀疏矩阵占用空间渐渐超过了阙值
阅读全文
摘要:1、说明 我们在开发应用的时候,为了保证一个方法或属性在高并发情况下的同一时间只能被同一个线程执行,可以使用并发处理相关的功能进行互斥控制。但随着业务的发展,一个应用部署到几台机器上然后做负载均衡,这时,原单机部署情况下的并发控制锁策略失效,单纯的应用并不能提供分布式锁的能力。因此就要使用分布式锁来
阅读全文
摘要:1、说明 有序列表一方面是一个set,保证了内部value的唯一性,另一方面它可以给每个value赋予一个score,代表这个value的排序权重。 zset中最后一个value被移除后,数据结构被自动删除,内存被回收。 2、内部实现 zset内部的排序功能是通过跳跃列表数据结构来实现,一方面保证其
阅读全文
摘要:1、说明 Redis的集合相当于Java里面的HashSet,它内部的键值对都是无序的、唯一的。它的内部实现相当于一个特殊的字典,字典中所有的value都是一个值NULL。 当集合中最后一个元素被移除之后,数据结构被自动删除,内存被回收。 2、操作指令 命令 描述 SADD key member1
阅读全文
摘要:1、说明 Redis的字典相当于Java语言里面的HashMap,它是无序的字典,内部存储了很多的键值对。Redis字典的值只能是字符串,同时为了追求高性能,Redis采用了渐进式rehash策略。 当hash移除了最后一个元素之后,该数据结构被自动删除,内存被回收。 Redis的每个hash可以存
阅读全文
摘要:1、说明 Redis的列表相当于java中的LinkedList,它是一个链表,也就是说list的插入和删除操作非常快,但是索引定位会比较慢。 当列表中最后一个元素被弹出后,该数据结构会被自动删除,内存被回收。 2、内部实现 list内部是一个双向链表,每个元素都使用双向指针顺序,串起来可以同时支持
阅读全文
摘要:1、说明 字符串string是Redis最简单的数据结构,它的内部表示就是一个字符数组。Redis的字符串是动态字符串,是可以修改的字符串,内部结构的实现类似于java的ArrayList,采用预分配冗余空间的方式来减少内存的频繁分配。 2、内部实现 Redis内部构建了一个简单的动态字符串来存储,
阅读全文
摘要:1、Redis是什么 Redis是Remote Dictionary Service的首字母缩写,即远程字典服务。是一个高性能的key-value形式的内存型数据库。以设置和读取一个256字节字符串为例,它的读取速度可高达11W次/s,写速度可达8.1W次/s。 Redis有5种基础数据结构,分别为
阅读全文

浙公网安备 33010602011771号