GaryLee's Blog
为什么Lua脚本可以保证原子性? 为什么Lua脚本可以保证原子性?
一、什么是原子性?原子性这个概念在数据库中和在并发编程中是两种不同的概念: 数据库中的原子性:要么都执行,要么都不执行 并发编程中的原子性:操作不可拆分、不被中断 Lua脚本是属于并发编程中的原子性,可以保证原子性,但是不能保证要么都执
2023-11-13
什么是Redis的数据分片? 什么是Redis的数据分片?
一、什么是Redis的数据分片?Redis的数据分片(Sharding)指的是将数据集分为多个子集,分别存储在不同的Redis节点上,提高了Redis集群的性能和扩展性。 二、如何实现Redis的数据分片?Redis的数据分片实现一般是按照
2023-11-13
Redis集群中什么是脑裂问题?如何解决的? Redis集群中什么是脑裂问题?如何解决的?
一、什么是Redis集群?具体可参考文章《Redis集群》 二、什么是脑裂问题?脑裂通俗来说就是大脑裂开了,在Redis集群中指的是有多个集群子集,每个集群子集都有自己的大脑(即Leader节点),那么就会出现不同大脑之前的数据不一致问题。
2023-11-10
Redis有哪几种常用的缓存读写策略? Redis有哪几种常用的缓存读写策略?
一、Redis有哪几种常见的缓存读写策略?在Redis中,有3种常见的缓存读写策略,分别为: Cache Aside Pattern(旁路缓存模式):同时更新数据库和缓存 Read/Write Through Pattern(读写穿透):
2023-11-08
Redis如何做性能优化? Redis如何做性能优化?
一、Redis如何做性能优化?1、批量操作减少网络传输背景:如果我们一次要执行多条命令,如果是常规的set、get等命令,那么执行多少条命令就涉及多少次网络调用,所以如果我们把这些命令打包就会减少网络调用次数 批量操作减少网络传输有以下几种
2023-11-08
Redis为什么单线程还这么快?为什么后面又引入多线程? Redis为什么单线程还这么快?为什么后面又引入多线程?
一、Redis为什么单线程还这么快?Redis为什么这么快?具体可参考文章《Redis为什么这么快?》 我们可能会有疑问:单线程不就只能监听单个连接了吗?为什么还能这么快? 事实上,Redis是通过IO多路复用来监听来自客户端的多个连接的(
2023-11-07
Redis有哪几种数据类型?分别有什么应用场景? Redis有哪几种数据类型?分别有什么应用场景?
一、Redis有哪几种数据类型?Redis常见的数据类型有以下几种: String(字符串):一般用于缓存JSON对象 List(列表):有序、可重复 Set(集合):无序、不重复 Hash(散列): Zset(有序集合):有序、不重复
2023-11-07
Redis除了做缓存,还能做什么? Redis除了做缓存,还能做什么?
一、Redis除了做缓存,还能做什么?Redis除了做缓存,还能做以下几种功能: 分布式锁:具体可参考文章《如何实现一个分布式锁?》 延迟队列:具体可参考文章《如何用Redis实现延迟队列?》 消息队列:Redis支持发布/订阅模式和St
2023-10-31
为什么Redis集群的最大槽数是16384? 为什么Redis集群的最大槽数是16384?
一、为什么Redis集群的最大槽数是16384?这里说到的Redis集群指的是Redis Cluster集群,它用了哈希槽(Hash Slot)来实现数据的分片,key查找的时候会通过CRC16算法取模后找到对应的Slot槽。(集群介绍可参
2023-09-19
如何提高缓存命中率? 如何提高缓存命中率?
一、什么是缓存命中率?如果我们使用redis作为缓存数据库,一般会用缓存命中率来评判对系统的性能(抗并发性)有多大的提升。通常来说,命中率越高,表示使用缓存效果越高,同时系统性能越好、抗并发能力越强。 缓存命中率指的是客户端查询语句查询re
2023-09-13
如何解决Redis的热点key问题? 如何解决Redis的热点key问题?
一、什么是热点key呢?热点key指的是频繁访问的key,比如明星八卦带来的微博热搜、双十一带来的秒杀活动等,都很容易出现热点key。 热点key带来的问题也很明显,就比如突然的微博热搜导致微博卡顿、宕机的情况,就是因为热点key被频繁访问
2023-09-12
Redis中的Zset是怎么实现的? Redis中的Zset是怎么实现的?
一、什么是Zset?Zset(也叫Sorted Set)是Redis中的一种数据结构,支持传member和score两个字段,同时支持按照score排序。 常见命令: 添加成员:zadd <key> <score>
2023-09-10
1 / 2