
Redis
Redis
千里快哉风Y
这个作者很懒,什么都没留下…
展开
-
Memcached 和 Redis的区别
1 、Redis支持更丰富的数据类型,k/v,字符串、列表、集合、有序集合、哈希类型。 Memecache支持简单的数据类型,k/v,字符串。 2 、Redis支持数据的备份和持久化,可以将内存中的数据保存在磁盘。 Memecache不支持数据的备份,数据全部存在内存。 3、 Redis完全基于内存速度比memcached快很多 4、 Redis是单线程的,不会有并发的问题。 Memcached是多线程的; ...原创 2021-03-19 15:30:04 · 135 阅读 · 0 评论 -
Redis中两种持久化机制RDB和AOF
RDB:在指定的时间内将内存中的数据集快照写入磁盘,是默认的持久化方式。 AOF:将每一个收到的写命令都追加到文件中,重启时重新执行这些命令来还原数据。 区别: 1.RDB做全量持久化,适合备份和灾难恢复; AOF适合增量持久化。 2.RDB文件小,恢复快,快照持久化期间修改的数据不会被保存,容易丢数据; AOF文件大,恢复慢,数据不易丢失。 ...原创 2021-03-19 15:27:18 · 179 阅读 · 0 评论 -
缓存雪崩、缓存穿透、缓存击穿
缓存雪崩 缓存在同一个时间大批量的失效,请求都打到数据库上,导致数据库压力过大,甚至宕机。 解决方法:往 redis 存数据的时候,把每个 key 的失效时间加上个随机数。 缓存穿透 缓存穿透是指查询一个一定不存在的数据,缓存没有命中,需要从数据库查询,查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到数据库去查询。 解决方法: 1.使用布隆过滤器不让这个请求到达数据库层。 2.从数据库查不到数据时,设置一个默认值存放到缓存,设置一个5分钟的过期时间。 缓存击穿 请求集中访问一个热点 key,原创 2021-03-19 15:26:19 · 97 阅读 · 0 评论 -
Redis内存回收机制
分为过期删除策略和内存淘汰策略两部分。 1.过期删除策略:定期删除机制(每过一段时间,扫描Redis中过期key字典,并清除部分过期的key)和惰性删除机制相结合(当访问一个key时,才判断该key是否过期,过期则删除,这样节省CPU资源),来删除过期的key。 2.内存淘汰策略:内存达到maxmemory时,使用LRU(最近最少使用)算法清理数据,保证Redis里都是热点数据。 ...原创 2021-03-19 15:25:02 · 137 阅读 · 0 评论