随笔分类 -  redis

缓存穿透、缓存击穿、缓存雪崩
摘要:什么是缓存穿透?(限流,网关层面限制ip的单位请求) 缓存穿透说简单点就是大量请求的 key 是不合理的,根本不存在于缓存中,也不存在于数据库中 。这就导致这些请求直接到了数据库上,根本没有经过缓存这一层,对数据库造成了巨大的压力,可能直接就被这么多请求弄宕机了。 解决办法:1、参数校验,一些不合法 阅读全文

posted @ 2023-08-12 16:40 潮流教父孙笑川 编辑

redis数据库一致性的问题,目的:保持数据的最终一致性,不能为了强一致性牺牲吸能
摘要:订阅变更日志,目前也有了比较成熟的开源中间件,例如阿里的 canal,使用这种方案的优点在于: 无需考虑写消息队列失败情况:只要写 MySQL 成功,Binlog 肯定会有 自动投递到下游队列:canal 自动把数据库变更日志「投递」给下游的消息队列 至此,我们可以得出结论,想要保证数据库和缓存一致 阅读全文

posted @ 2023-08-12 16:28 潮流教父孙笑川 编辑

Redis bigkey(大 Key)、Redis hotkey(热 Key
摘要:简单来说,如果一个 key 对应的 value 所占用的内存比较大,那这个 key 就可以看作是 bigkey。具体多大才算大呢?有一个不是特别精确的参考标准:string 类型的 value 超过 10 kb,复合类型的 value 包含的元素超过 5000 个(对于复合类型的 value 来说, 阅读全文

posted @ 2023-08-12 16:13 潮流教父孙笑川 编辑

redis的8种数据结构和应用,Bitmap同步活跃数、sorted set做排行榜,朋友圈
摘要:5 种基础数据结构:String(字符串)、List(列表)、Set(集合)、Hash(散列)、Zset(有序集合)。 3 种特殊数据结构:HyperLogLogs(基数统计)、Bitmap (位存储)、Geospatial (地理位置)。 参考:https://github.com/Snailcl 阅读全文

posted @ 2023-08-12 15:52 潮流教父孙笑川 编辑

redis的实际应用场景--分布式锁、分布式session
摘要:分布式锁:通过 Redis 来做分布式锁是一种比较常见的方式。通常情况下,我们都是基于 Redisson 来实现分布式锁。关于 Redis 实现分布式锁的详细介绍,可以看我写的这篇文章:分布式锁详解 。 限流:一般是通过 Redis + Lua 脚本的方式来实现限流。相关阅读:《我司用了 6 年的 阅读全文

posted @ 2023-08-12 15:32 潮流教父孙笑川 编辑

Redis 启动命令,哨兵模式,集群配置文件,主从同步
摘要:启动redis: /usr/local/bin/redis-server /home/data/redis-3.2.1/redis.conf 主库打开:工作模式:cluster-enabled yes 集群模式启动redis设置为yes,表示开启集群,否则会以单实例启动。 从库配置文件:slaveo 阅读全文

posted @ 2020-10-24 12:12 潮流教父孙笑川 编辑

Redis 和 Memcached 区别
摘要:共同点 : 都是基于内存的数据库,一般都用来当做缓存使用。 都有过期策略。 两者的性能都非常高。 区别 : Redis 支持更丰富的数据类型(支持更复杂的应用场景)。Redis 不仅仅支持简单的 k/v 类型的数据,同时还提供 list,set,zset,hash 等数据结构的存储。Memcache 阅读全文

posted @ 2020-10-24 11:18 潮流教父孙笑川 编辑

redis的持久化机制 rbd+aof
摘要:Redis 的一种持久化方式叫快照(snapshotting,RDB),另一种方式是只追加文件(append-only file, AOF)‘’ 快照(snapshotting)持久化(RDB) Redis 可以通过创建快照来获得存储在内存里面的数据在某个时间点上的副本。Redis 创建快照之后,可 阅读全文

posted @ 2020-09-09 21:55 潮流教父孙笑川 编辑

redis的内存淘汰策略。默认:优先移除最近未使用的key
摘要:在配置文件有一行: # maxmemory-policy volatile-lru Redis 提供 6 种数据淘汰策略:(在已经设置过期时间的、全部,2种) volatile-lru(least recently used):从已设置过期时间的数据集(server.db[i].expires)中挑 阅读全文

posted @ 2020-09-09 21:50 潮流教父孙笑川 编辑

CAP原则 ZK和Redis分布式锁的区别
摘要:CAP原则又称CAP定理,指的是在一个分布式系统中,一致性(Consistency)、可用性(Availability)、分区容错性(Partition tolerance)。 CAP 原则指的是,这三个要素最多只能同时实现两点,不可能三者兼顾。 ZK和Redis锁实现的区别: 1、 redis分布 阅读全文

posted @ 2020-09-09 21:35 潮流教父孙笑川 编辑

redLock 解决Redisson主从复制锁遇到的问题
摘要:Redis分布式锁大部分人都会想到:setnx+lua,或者知道set key value px milliseconds nx。后一种方式的核心实现命令如下: - 获取锁(unique_value可以是UUID等) SET resource_name unique_value NX PX 3000 阅读全文

posted @ 2020-09-09 21:22 潮流教父孙笑川 编辑

Redisson的锁方法,解决的问题
摘要:1、如果使用StringRedisTemplate完成分布式锁操作,会有问题。 a、获取锁后,宕机,锁一直存在无法释放。 b、设置锁时间,解决了a的问题,但无法判断线程是否在规定时间完成,需要额外的线程去监控完成后唤醒其他线程获取锁 c、解锁时,需要保证是获取锁的线程解锁,而不是其他线程解锁,需要设 阅读全文

posted @ 2020-09-09 21:01 潮流教父孙笑川 编辑

redis单机模式下测试遇到的问题
摘要:1、当springBoot连接不上redis时遇到的问题 在redis.windows.conf配置文件里面有这么一行代码:#bind 127.0.0.1,我的压缩包默认是带#号的。在#未去掉的情况下启动服务会抛出上面的异常,但是去掉则不会。 那么,如果外网需要访问redis服务怎么办呢?可以采用如 阅读全文

posted @ 2020-09-09 20:35 潮流教父孙笑川 编辑

redis配置文件信息,参数详解
摘要:redis.windows.conf #redis的配置 #Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程daemonize yes#当Redis以守护进程方式运行时,Redis默认会把pid写入redis.pid文件,可以通过pidfile指定pidfile 阅读全文

posted @ 2020-09-08 22:06 潮流教父孙笑川 编辑

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示