redis
文章平均质量分 84
redis专栏
Sxm&
java、golang、大数据、云原生
展开
-
redis缓存常见问题及解决方案
1、缓存穿透缓存穿透是指查询一个一定不存在的数据(数据库中也没有这个数据),由于缓存不命中,从存储层也查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义。解决方案:布隆过滤器它实际上是由一个很长的二进制数组(或者也叫bitmap)和一系列哈希函数组成,布隆过滤器可以用于检索一个元素是否在一个集合中。如果想判断一个元素是不是在一个集合里,一般想到的是将所有元素保存起来,然后通过比较确定。链表,树等等数据结构都是这种思路. 但是随着集合中元素的增加,我们需要的存储原创 2021-01-10 20:28:43 · 528 阅读 · 0 评论 -
Redis-槽道原理
Redis ClusterRedis3.0之后,节点之间通过去中心化的方式提供了完整的sharding(分片)、replication(复制)、failover解决方案,称为 Redis Cluster。1、所有redis节点(包括主和从)彼此互联(两两通信)。2、集群中的高可用逻辑,通过主节点的过半选举实现主从替换。3、客户端与redis-cluster连接,无需再关心分片的计算,客户...原创 2019-12-20 15:43:16 · 834 阅读 · 0 评论 -
为什么 Redis 单线程能支撑高并发?
为什么Redis是单线程的Redis是基于内存的操作,内存的读写速度非常快,并且CPU不会是Redis的瓶颈,在单线程的情况下,就不用去考虑各种锁以及上下文切换的问题,关键的一点是Redis使用了I/O多路复用技术。Blocking I/O当使用 read 或者 write 对某一个文件描述符(File Descriptor 以下简称 FD)进行读写时,如果当前 FD 不可读或不可写,会影...原创 2019-12-19 17:09:14 · 180 阅读 · 0 评论 -
一致性hash算法
应用场景一致性hash算法在1997年由麻省理工学院在解决分布式Cache中提出的,设计目标是为了解决因特网中的热点(Hot spot)问题。在分布式系统中也得到了广泛应用。hash取余hash(object)%N假设,我们有一个redis集群用来存储图片资源,图片的名称是不一样的,当我们对同一个图片名称做相同的哈希计算时,得出的结果是不变的,如果我们有3台服务器,使用哈希后的结果对3求...原创 2019-12-19 15:26:59 · 106 阅读 · 0 评论