![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
redis
文章平均质量分 61
佟印龙
这个作者很懒,什么都没留下…
展开
-
Redis集群写入/查询数据原理(理论)
redis集群数据存储原理:在redis cluster中,如果想要存入一个key-value,这个key首先会通过CRC16算法取余(和16384取余),结果会对应上0-16383之间的哈希槽(hash slot)最后,redis cluster会将key-value放置在对应的哈希槽中。redis集群数据获取原理:当client向redis cluster中的任意一个节点发送与数据库key有关的命令时,接收命令的节点会计算出要处理的key属于哪个哈希槽(hash slot),原创 2021-12-15 16:18:07 · 1210 阅读 · 0 评论 -
Redis布隆过滤器学习
1. 布隆过滤器前言不知道从什么时候开始,本来默默无闻的布隆过滤器一下子名声大燥,在面试中面试官问到怎么避免缓存穿透,你的第一反应可能就是布隆过滤器,缓存穿透=布隆过滤器成了标配,但具体什么是布隆过滤器,怎么使用布隆过滤器不是很清楚,那今天我们就来把他说清楚,讲明白。。1.1 缓存穿透大家看下这幅图,用户可能进行了一次条件错误的查询,这时候redis是不存在的,按照常规流程就是去数据库找了,可是这是一次错误的条件查询,数据库当然也不会存在,也不会往redis里面写值,返回给用户一个空,这样的操作一次原创 2021-10-28 09:56:23 · 194 阅读 · 0 评论 -
图解Redisson分布式锁源码-可重入锁的八大机制-上
1、分享概要本次分享会先从Redis可重入锁最简单的Demo入手,一步一图分析Redis可重入锁底层的源码,在边看源码的过程中、边画出Redis可重入锁的核心流程图。通过这张核心的流程图,我们可以看到一个企业级的、基于Redis分布式锁的方案是怎样的形成的,在开始分享前,大家先思考下如下常见的面试题:1、客户端线程在底层是如何实现加锁的?2、客户端线程是如何维持加锁的?Redis可重入锁源码的分享,上半部分将重点围绕以上2个核心问题一步步展开分析,大家可以心中带着这几个问题一步步看下去,最后形成的原创 2021-10-12 17:18:57 · 266 阅读 · 0 评论 -
基于Redis滑动窗口的接口限流
接口限流背景:在做网站的时候经常会遇到恶意访问或者被攻击的安全问题,从而导致服务器宕机或者影响网站正常运营。所以接口限流就应运而生了。基于redis的接口限流我们了解到redis中有着5种常见的数据类型,String、Hash、List、Set、ZSet,今天我们就要用到其中的ZSet来做接口限流这是比较简单的一种方式。其中ZSet中有一个方法,zcountzcount用法zcount 集合的名字 开始区间 结束区间 (作用:统计个区间内值的个数)思路我们将ZSet中集合的名字 设置为 li原创 2021-09-24 17:00:23 · 367 阅读 · 0 评论 -
REDIS缓存穿透,缓存击穿,缓存雪崩原因+解决方案
一、前言在我们日常的开发中,无不都是使用数据库来进行数据的存储,由于一般的系统任务中通常不会存在高并发的情况,所以这样看起来并没有什么问题,可是一旦涉及大数据量的需求,比如一些商品抢购的情景,或者是主页访问量瞬间较大的时候,单一使用数据库来保存数据的系统会因为面向磁盘,磁盘读/写速度比较慢的问题而存在严重的性能弊端,一瞬间成千上万的请求到来,需要系统在极短的时间内完成成千上万次的读/写操作,这个时候往往不是数据库能够承受的,极其容易造成数据库系统瘫痪,最终导致服务宕机的严重生产问题。为了克服上述的问题,原创 2020-12-23 17:55:11 · 90 阅读 · 0 评论