随笔分类 - Redis
Redis相关知识学习,原理底层结构等
摘要:## Redis的持久化方式: ### 1.RDB模式 快照(snapshots) - 默认持久化方式,redis中默认每15分钟持久化一次;将Redis中内存的信息写入到.rdb结尾的文件中。当redis节点出现宕机/断电,Redis再次重启是先读取rdb持久化文件,恢复内存数据; - 缺省情况情
阅读全文
摘要:一致性哈希算法产生的背景: Redis集群,为了让缓存key均匀的散列到每个服务器,采用哈希算法,让缓存的key能够均匀的分布到各个服务器。 hash(key)%N key为缓存主键 N表示redis服务器个数 那么可能存在哪些问题? 当Redis服务器扩容后,哈希算法对应的N的数量调整,那么缓存的
阅读全文
摘要:## redis集群和哨兵模式可能出现的异常 1、异步数据丢失。 2、脑裂问题。 - 脑裂情况出现的场景: ``` 在哨兵架构中,redis的集群脑裂是某个master所在机器突然脱离了正常的网络,导致redis master节点跟redis slave节点和sentinel集群处于不同的网络分区,
阅读全文
摘要:热点数据是什么? 热点数据是说多次访问或者多次被使用到的数据。这类数据==访问频率比较高==,如果直接访问数据库,数据库频繁链接,I/O数据流及连接造成负担,如果访问量比较大的情况很容易出现数据库或服务器崩溃。 还有另一种情况,热点数据所在redis集群中,当某一个redis服务访问过于集中访问某个
阅读全文
摘要:redis是内存缓存,内存设备的内容不是无限量的,所以就有两个问题必须要讨论:1-缓存数据过期怎么清除;2-内存如果满了要怎么保证redis服务正常运行。 redis最大内存配置 maxmemory <bytes> #最大使用内存 1.redis的过期策略 存储到redis的数据过期了,redis是
阅读全文
摘要:1.缓存使用过程中可能遇到的问题 1.1缓存穿透 含义: 查询一个一定不存在的数据,缓存和数据库不存在数据。因为缓存不存在,所以每次都会直接去数据库查询,缓存失去了意义。当大量访问这种不存在的数据时,就造成了缓存穿透。 解决方案: 可以对访问进行过滤,将所有可能的数据key的hashcode存储到B
阅读全文
摘要:表格引用地址:http://www.cnblogs.com/xrq730/p/8944539.html 参考书籍:《Redis设计与实现》,《Redis运维与开发》 1.对象 Redis基于基础的数据结构创建了五种不同类型的对象系统,分别是: 字符串对象,列表对象,哈希对象,集合对象和有序集合对象;
阅读全文
摘要:参考书:《redis设计与实现》 Redis虽然底层是用C语言写的,但是底层的数据结构并不是直接使用C语言的数据结构,而是自己单独封装的数据结构; Redis的底层数据结构由,简单动态字符串,链表,字典,跳跃表,整数集合等几种数据结构组成; 1.简单动态字符串 1.定义: 简单动态字符串:SDS(s
阅读全文