![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Redis
文章平均质量分 92
早睡早起多多运动
这个作者很懒,什么都没留下…
展开
-
Spring Boot 中 Redis 键过期后的处理操作
*** 处理乱码问题// key 序列化 redisTemplate . setKeySerializer(new StringRedisSerializer());// val 序列化 redisTemplate . setValueSerializer(new GenericJackson2JsonRedisSerializer());} }/*** 监听 reids 过期事件} /**原创 2023-05-05 21:04:19 · 721 阅读 · 0 评论 -
Redis 缓存问题
Q2:如果线程 A 加锁成功,锁的过期时间为 10s,但是由于业务复杂,执行时间较长,10s 内线程还没有执行完任务,此时该锁已经过期自动释放掉了(del)。A2.2:为每个线程设置锁的时候,value 值设置为自己线程的 ID,这样在释放锁(del)的时候先查看(get)锁是不是自己的,如果是,然后再进行 del 操作。A2.1:Redission 提供了一个监控锁的看门狗,它的作用就是为锁续时,如果一个拿到锁的线程执行业务代码的时间过长,那么看门狗会帮助线程延长锁的过期时间,锁不会因为过期而被释放。原创 2023-05-05 20:48:06 · 142 阅读 · 0 评论 -
Redis 的数据结构与基本数据类型
Redis 使用跳跃表作为有序集合键的底层实现之一,如果一个有序集合包含的元素数量比较多,又或者有序集合中元素的成员(member)是比较长的字符串时,Redis 就会使用跳跃表来作为有序集合键的底层实现。整数集合(intset)是集合键(Set 类型的数据)的底层实现之一,当一个集合只包含整数值元素,并且这个集合的元素数量不多时,Redis 就会使用整数集合作为集合键的底层实现。,HyperLogLog 的优点是,在输入元素的数量或者体积非常非常大时,计算基数所需的空间总是固定的、并且是很小的。原创 2023-05-05 17:54:48 · 192 阅读 · 0 评论 -
Redis 主从复制
主从复制,是将一台 Redis 服务器的数据,复制到其他的 Redis 服务器。前者称为主节点(Master/Leader),后者称为从节点(Slave/Follower)数据的复制是单向的!只能由主节点复制到从节点(主节点以写为主、从节点以读为主)—— 读写分离。默认情况下,每台 Redis 服务器都是主节点,一个主节点可以有 0 个或者多个从节点,但每个从节点只能有一个主节点。原创 2023-05-05 11:49:20 · 103 阅读 · 0 评论 -
缓存与数据库双写一致性问题
当该缓存对应的数据需要经过大量的计算过程才能得到时,比如需要访问多张表进行统计计算。那么在写操作中更新缓存的动作将会是一笔不小的开销。【提高响应速度】当写操作较多时,可能也会存在刚更新的缓存还没有被读取到,又再次被更新的情况(这常被称为缓存扰动),显然,这样的更新是白白消耗机器性能的,会导致缓存利用率不高。所以等到读请求未命中缓存时再去更新,也符合懒加载的思路,需要时再进行计算。删除缓存的操作不仅是幂等的,可以在发生异常时重试,而且写-删除和读-更新在语义上更加对称。原创 2023-05-04 22:57:43 · 158 阅读 · 0 评论 -
Redis 事务
Redis 通过 MULTI、EXEC、WATCH 等命令来实现事务功能。Redis 的事务提供了一种将多个命令请求打包,按顺序放入事务队列,然后一次性、顺序性、排他性地执行这些命令。即在事务执行期间,服务器是不会中断事务而去处理其他客户端的命令请求的,它会将事务中的所有命令都执行完毕后,再去处理其他客户端的请求。原创 2023-05-04 22:24:58 · 396 阅读 · 0 评论 -
Redis 键的过期删除 & 内存淘汰策略
比如处理验证码时,设置三分钟或五分钟后失效,把分钟数转换成秒或毫秒存储到Redis中。3 和 4 两种方式是。,比如优惠卷的过期时间是某年某月某日,只是单位不一样。Redis 4.0 之后新加了两条。Redis 4.0 之前。1 和 2 两种方式是。原创 2023-05-04 20:23:26 · 76 阅读 · 0 评论 -
Redis 的持久化机制
Redis 是基于内存操作的数据库,所有的数据都保存在内存中,而内存中的数据当程序结束时就会消失,所以我们要想办法把内存中的数据写到磁盘中,当程序正常退出或异常终止时,重新启动就可以从磁盘文件中恢复数据。随着 Redis 的运行,被执行的写命令不断同步到 AOF 文件中,AOF 文件的体积越来越大,极端情况将会占满所有的硬盘空间。序列化完毕后再将操作期间发生的增量 AOF 日志追加到这个新的 AOF日志文件中,追加完毕后就立即替代旧的 AOF 曰志文件了,瘦身工作就完成了。因为持久化到磁盘的数据是。原创 2023-05-04 19:54:32 · 149 阅读 · 0 评论 -
Redis 单线程模型
Redis 设计与实现》 P167。原创 2023-05-04 11:13:38 · 88 阅读 · 0 评论