Redis
文章平均质量分 88
良月柒
一个不羁的码农,终生学习者。
展开
-
使用 Redis + Lua 实现分布式限流
固定窗口限流:在固定时间窗口内限制请求数量,超过限制则拒绝请求。滑动窗口限流:相对于固定窗口,滑动窗口限流更加精细化,可以更平滑地限制请求。令牌桶算法:以固定速率生成令牌,请求需要消耗令牌,没有令牌则拒绝请求。漏桶算法:以固定速率处理请求,超过速率的请求则排队等待。本文将以固定窗口限流和令牌桶算法为例,介绍如何使用 Redis + Lua 实现分布式限流。通过结合 Redis 和 Lua 脚本,可以高效实现多种限流策略,如固定窗口限流和令牌桶算法。原创 2024-06-18 14:17:47 · 1565 阅读 · 0 评论 -
探讨 Redis 的线程与 IO 模型
单线程架构的设计使得 Redis 在处理请求时避免了许多复杂的并发问题,但也让许多开发者感到疑惑:为什么 Redis 能在单线程模型下实现如此高的性能?IO 多路复用技术允许一个线程同时监视多个 IO 事件,当其中一个或多个 IO 事件就绪时,能够及时处理这些事件。在最新版本中,引入多线程 IO 模型和后台线程机制,进一步提升了并发性能和系统响应速度。虽然 Redis 主要采用单线程模型处理请求,但在一些特定场景下,Redis 也引入了多线程机制,以进一步提高性能。事件库实现 IO 多路复用。原创 2024-06-17 14:03:51 · 762 阅读 · 0 评论 -
Redis 的分布式 Session 与本地 Session 的区别
在现代分布式系统中,选择合适的 Session 管理机制至关重要。相比本地 Session,分布式 Session 具有更高的扩展性和可用性,适用于多节点分布式环境。原创 2024-06-17 13:56:02 · 1038 阅读 · 0 评论 -
Redis的过期策略及内存淘汰机制详解
Redis的过期策略和内存淘汰机制为我们提供了灵活的内存管理手段,帮助我们在高性能应用中高效地管理数据。通过合理设置过期时间、选择合适的淘汰策略以及定期监控和调整,我们可以确保系统的稳定性和可靠性,从而更好地满足业务需求。原创 2024-06-11 17:16:15 · 976 阅读 · 0 评论 -
Redis的过期策略和内存淘汰机制
Redis的过期策略和内存淘汰机制是保障其高性能和稳定性的关键。正确设置过期策略和内存淘汰机制,能够有效管理内存,防止内存溢出,确保系统在高负载下依然能稳定运行。原创 2024-05-28 14:09:22 · 993 阅读 · 0 评论 -
Redis和数据库能做到强一致吗?
在 Redis 和数据库之间,存在一定的一致性和性能权衡。虽然 Redis 具有高性能和低延迟的优势,但在一致性方面可能存在一定的风险。相比之下,数据库能够提供强一致性的保障,适用于对一致性要求较高的场景。因此,开发者需要根据具体的业务需求和场景特点,选择合适的存储方案,权衡一致性和性能之间的关系,以提高系统的可靠性和稳定性。原创 2024-05-14 10:20:16 · 675 阅读 · 0 评论 -
Redis的跳表:高效实现有序集合
Redis 中的跳表是一种高效的数据结构,用于实现有序集合的存储和管理。通过对跳表的实现原理和优势的深入理解,可以更好地理解和应用 Redis 中的有序集合功能,提高系统的性能和可靠性。希望本文能够帮你更好地理解 Redis 的跳表实现,为实际应用提供参考和指导。原创 2024-05-14 10:18:43 · 571 阅读 · 0 评论 -
Java通过Jedis连接Redis单击版和集群版
需要把jedis依赖的jar包添加到工程中。Maven工程中需要把jedis的坐标添加到依赖。添加如下坐标到pom.xml文件中 <!-- Redis客户端 --> <dependency> <groupId>redis.clients</groupId> <artifactId...原创 2018-09-26 18:06:34 · 926 阅读 · 0 评论 -
Redis持久化方案(服务器宕机挽回数据)
Redis 数据都放在内存中。如果机器挂掉,内存的数据就不存在。需要做持久化,讲内存中的数据保存在磁盘,下一次启动的时候就可以恢复数据到内存中。 1.RDB 快照形式 (定期将当前时刻的数据保存磁盘中)会产生一个dump.rdb文件 特点:会存在数据丢失,性能较好,数据备份。 2.AOF append only fi...原创 2018-09-26 17:58:53 · 3198 阅读 · 0 评论 -
Redis的五种数据类型
1、String:key-value redis命令不区分大小写,但是key区分的redis中的数据都是字符串。redis是单线程,(不适合存储比较大的数据) 使用incr 命令,如果key 不存在,会自动创建key 并自动+1. redis中所有的数据都是字符串。 set key value 设置值 get key 获取值 incr key 加一 dec...原创 2018-09-26 17:55:50 · 9733 阅读 · 1 评论