![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
redis
文章平均质量分 95
redis
weixin_42412601
后生仔
展开
-
Redis底层
目录1、什么是redis2、应用场景3、DB数据结构3.1、`RedisDB`数据结构:`redis`数据库默认有`16`个库。3.2、Redis的五种数据结构的内部编码4、String数据结构4.1、redis3.2以前sds4.1、redis3.2后sds5、bitMap(bitset,位图)数据结构6、redis单线程模型6、redis6.0多线程工作模型7、list数据结构7.1、redis阻塞队列实现7.2、list底层实现7.2、ziplist压缩列表7.3、quicklist快速列表8、has原创 2020-10-18 00:40:21 · 248 阅读 · 0 评论 -
SpringCache
目录简介整合SpringCache简化缓存开发@Cacheable使用原理自定义缓存配置@CacheEvict的使用SpringCache的不足简介给每一个需要缓存的业务加上缓存的使用逻辑。缓存的使用,就得考虑缓存的两种用法模式读模式:先从缓存中读取,缓存没有,在从数据库中读取,并把数据放到缓存中,然后返回数据写模式:如何保证缓存与数据库中的数据是一致的?可以使用双写模式或者失效模式双写模式:写完数据库,缓存跟着改一下失效模式: 写完数据库,对应的缓存删了,等待下次主动查询,更新缓存即可原创 2020-08-27 20:23:35 · 1192 阅读 · 1 评论 -
Redisson分布式锁框架
目录概述使用体会Redisson的分布式锁看门狗机制读写锁闭锁(CountDownLatch)信号量(Semaphore)概述Redisson是一个在Redis的基础上实现的Java驻内存数据网格(In-Memory Data Grid)。它不仅提供了一系列的分布式的Java常用对象,还提供了许多分布式服务。其中包括(BitSet, Set, Multimap, SortedSet, Map, List, Queue, BlockingQueue, Deque, BlockingDeque, Semap原创 2020-08-27 15:34:10 · 473 阅读 · 0 评论 -
redis(三)——缓存相关问题
目录缓存雪崩解决缓存雪崩缓存穿透解决缓存穿透缓存预热缓存与数据库双写一致操作缓存先更新数据库,再删除缓存先删除缓存,再更新数据库其他保障数据一致的方案缓存雪崩为啥使用缓存现在有个问题,如果我们的缓存挂掉了,这意味着我们的全部请求都跑去数据库了。如果缓存数据设置的过期时间是相同的,并且Redis恰好将这部分数据全部删光了。这就会导致在这段时间内,这些缓存同时失效,全部请求到数据库中。这...原创 2020-04-28 10:45:17 · 203 阅读 · 0 评论 -
布隆过滤器
目录应用场景布隆过滤器guava实现布隆过滤器redis实现布隆过滤器附录应用场景1、50亿个电话号码,现有10万个电话号码,如何判断这10万个是否已经存在在50亿个之中?(可能方案:数据库,set, hyperloglog)2、新闻客户端看新闻时,它会不断推荐新的内容,每次推荐时都要去重,那么如何实现推送去重?3、爬虫URL去重?4、NoSQL数据库领域降低数据库的IO请求数量?5、...原创 2020-04-27 15:34:31 · 157 阅读 · 0 评论 -
redis(二)——分布式锁之Redis实现
目录`Redis`实现分布式锁分布式锁应该具备哪些条件分布式锁的三种实现方式分布式锁之Redis实现加锁解锁实现Redis实现分布式锁为了保证一个方法或属性在高并发情况下的同一时间只能被同一个线程执行,在传统单体应用单机部署的情况下,可以使用Java并发处理相关的API(如ReentrantLock或Synchronized)进行互斥控制。在单机环境中,Java中提供了很多并发处理相关的AP...原创 2020-04-24 16:09:59 · 211 阅读 · 1 评论