Redis数据库
文章平均质量分 75
IT之一小佬
敲响键盘之乐,跳起程序之舞,抵达智慧之巅!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Redis数据库技术栈总结
本文目录涵盖了Redis数据库的全面学习路径,包括环境安装配置、数据结构、技术知识、交互操作、性能优化及其他相关内容。环境安装配置部分详细介绍了Redis及其可视化工具在不同操作系统上的安装步骤和配置方法。数据结构部分深入探讨了Redis支持的各种数据类型及其操作命令。技术知识部分涵盖了Redis的特性、应用场景、持久化策略、事务处理、发布订阅模式、哨兵监控、主从同步及集群搭建等高级功能。交互操作部分提供了Python与Redis数据库及集群的交互方法,包括增删改查和模糊查询等操作。性能优化部分则关注Red原创 2025-05-11 17:28:38 · 1298 阅读 · 0 评论
-
Redis + Lua 解决库存超卖问题 —— Python 实现完整教程
Redis + Lua 解决库存超卖问题原创 2025-10-13 22:20:32 · 683 阅读 · 0 评论 -
Redis 大数据量下高效查找指定前缀 Key
Redis 大数据量下高效查找指定前缀 Key 的解决方案 本文针对 Redis 海量数据场景(如 1 亿 Key)中查找特定前缀 Key 的需求,提供了专业解决方案: 问题分析:直接使用KEYS命令会导致 Redis 阻塞,危害线上服务。 核心方案:采用SCAN命令增量迭代,配合MATCH模式安全遍历,避免服务中断。 实现示例:提供完整的 Python 脚本(支持连接参数、进度显示、结果保存),包含: Redis 连接管理 游标迭代逻辑 错误处理和统计输出 使用方法:支持命令行参数配置,可指定主机、密码、原创 2025-10-12 23:38:03 · 968 阅读 · 0 评论 -
Redis Lua脚本
Redis自2.6版本起引入了Lua脚本功能,允许开发者在Redis服务器上执行Lua脚本,从而减少网络请求次数,降低网络延迟。脚本执行具有原子性,确保操作不会被其他命令打断,且能替代Redis的事务功能,支持错误回滚。通过EVAL命令,可以执行Lua脚本,其中脚本通过KEYS和ARGV数组访问键名和附加参数。在脚本中,可以使用redis.call()函数执行Redis命令,但需避免死循环和耗时操作,以防阻塞Redis服务器。Lua脚本在Redis中提供了一种高效、原子性的操作方式,是处理复杂逻辑的理想选择原创 2025-05-12 20:41:28 · 362 阅读 · 0 评论 -
Redis主从架构介绍及复制原理
Redis主从架构通过配置主节点和从节点实现数据复制,确保数据的高可用性和负载均衡。搭建从节点时,需复制并修改redis.conf文件,设置端口、日志文件、数据目录等,并配置replicaof指向主节点。启动从节点后,通过redis-cli连接并测试数据同步。Redis主从复制工作原理基于PSYNC命令,主节点在后台生成RDB快照并发送给从节点,从节点加载数据后,主节点再发送缓存命令。从Redis 2.8开始,支持部分数据复制(断点续传),减少全量复制的开销。为缓解主从复制风暴,可采用多级从节点架构,部分从原创 2025-05-12 19:44:51 · 580 阅读 · 0 评论 -
缓存击穿介绍及解决方案
缓存击穿是指某个热点key在缓存过期瞬间,大量请求直接访问数据库,导致数据库压力骤增甚至崩溃。解决方案包括使用互斥锁和热点数据不过期。互斥锁确保只有第一个请求能访问数据库并更新缓存,其他请求等待缓存更新后直接读取。热点数据不过期则通过定时任务异步更新缓存,避免缓存失效。代码实现中,通过setnx方法设置互斥锁,确保只有一个线程能执行数据库查询并更新缓存,其他线程等待或重试。原创 2025-05-11 18:42:58 · 241 阅读 · 0 评论 -
Redis开发规范
本文介绍了Redis的key设计、value设计、命令使用和客户端使用的优化技巧。在key设计上,建议将表名作为前缀,主键列名和值作为中间段,存储列名作为后缀。value设计应避免bigkey,控制string类型大小在10KB以内,集合元素个数不超过5000。命令使用上,禁止线上使用keys、flushall等命令,合理使用select,推荐批量操作提高效率,不建议过多使用事务功能。客户端使用上,推荐Jedis、Spring Data Redis和Redisson,避免多个应用共享一个Redis实例,使用原创 2025-05-11 19:05:15 · 843 阅读 · 0 评论 -
缓存数据一致性及解决方案
在项目开发中,缓存的使用至关重要,尤其是在保证数据一致性方面。常见的缓存更新策略有三种:先更新数据库再更新缓存、先删除缓存再更新数据库、先更新数据库再延时删除缓存。第一种策略因线程安全问题可能导致脏数据,通常不被采用。第二种策略在并发场景下可能导致缓存中始终存储旧数据,也不理想。第三种策略通过延时删除缓存,虽然存在极低概率的并发问题,但由于数据库读操作通常快于写操作,实际发生概率极低,因此被认为是最优方案。通过合理设置缓存过期时间,可以进一步确保数据的最终一致性。原创 2025-05-11 19:21:28 · 447 阅读 · 0 评论 -
缓存雪崩介绍及解决方案
缓存雪崩是指大量缓存同时失效,导致请求直接涌向数据库,造成数据库压力骤增的现象。为避免这种情况,可以采取以下措施:1. 过期时间打散:为缓存设置随机的过期时间,避免集中失效;2. 热点数据不过期:对热点数据设置永不过期,并定期更新;3. 加互斥锁:对同一key的请求加锁,确保只有一个线程访问数据库,其他线程等待并使用缓存结果。代码实现中,通过synchronized锁机制确保线程安全,但需注意加锁仅减轻数据库压力,未提升系统吞吐量。原创 2025-05-11 18:50:32 · 375 阅读 · 0 评论 -
缓存穿透介绍及解决方案
缓存穿透是指用户请求的数据在缓存和数据库中均不存在,导致每次请求都直接访问数据库,增加数据库压力。常见于恶意攻击,如请求无效ID。解决方案包括对空值进行缓存,即使查询结果为空也将其缓存,并设置较短的过期时间;以及使用布隆过滤器,通过判断元素是否在集合中来减少无效查询,从而有效缓解缓存穿透问题。原创 2025-05-11 18:24:55 · 412 阅读 · 0 评论 -
缓存预热介绍及解决方案
缓存预热是一种在系统上线前将热点数据预先加载到缓存中的技术,旨在避免缓存冷启动时数据库负载过高。缓存冷启动指的是新系统启动时缓存中无数据,若直接对外服务,高并发可能导致数据库崩溃。解决思路包括提前将部分数据加载到Redis中,但若数据量过大,无法全部写入Redis,需根据实时访问情况统计高频热数据并写入。此外,可通过多服务并行读取数据实现分布式缓存预热,以提升系统性能和数据库稳定性。原创 2025-05-11 18:15:09 · 330 阅读 · 0 评论 -
Redis脑裂介绍及解决方案
Redis集群脑裂是指由于网络分区,导致Redis主节点(Master)与从节点(Slave)及哨兵(Sentinel)集群断开连接,哨兵无法感知主节点存在,从而将某个从节点提升为新的主节点,导致集群中出现两个主节点。这种情况下,如果客户端继续向原主节点写入数据,新主节点无法同步这些数据,网络恢复后,原主节点降为从节点并同步新主节点数据,可能导致大量数据丢失。为解决此问题,可在redis.conf中配置min-replicas-to-write 1和min-replicas-max-lag 5,确保主节点在原创 2025-05-11 17:46:38 · 378 阅读 · 0 评论 -
Redis企业级问题及解决方案
Redis企业级问题及解决方案原创 2023-11-06 21:51:35 · 360 阅读 · 0 评论 -
Redis中慢查询功能
Redis中慢查询功能原创 2023-11-04 10:46:24 · 665 阅读 · 0 评论 -
Redis可视化工具_安装Redis_Desktop_Manager
Redis可视化工具_安装Redis_Desktop_Manager原创 2023-11-01 22:27:28 · 370 阅读 · 0 评论 -
Redis数据类型Geospatia
Redis数据类型Geospatia原创 2023-11-01 21:39:29 · 225 阅读 · 0 评论 -
Redis数据类型Bitmaps
Redis数据类型Bitmaps原创 2023-11-01 21:08:18 · 286 阅读 · 0 评论 -
Redis数据结构HyperLogLog
Redis数据结构HyperLogLog原创 2023-01-28 23:09:13 · 505 阅读 · 0 评论 -
redis中增删改查普通操作和使用管道pipeline的效率区别
redis中增删改查普通操作和使用管道pipeline的效率区别原创 2023-01-15 18:04:22 · 673 阅读 · 0 评论 -
python中redis进行模糊查询(keys()、scan()、scan_iter())
python中redis进行模糊查询(keys()、scan()、scan_iter())原创 2023-01-15 17:19:13 · 11071 阅读 · 0 评论 -
Redis中发布订阅模式用法
Redis中发布订阅模式用法原创 2023-01-09 22:10:12 · 3618 阅读 · 0 评论 -
Redis的哨兵监控模式用法
Redis的哨兵模式用法原创 2023-01-09 00:24:04 · 873 阅读 · 0 评论 -
Redis中Config SET/GET命令用法详解
Redis中Config Set命令用法详解原创 2023-01-08 23:31:25 · 1623 阅读 · 0 评论 -
Redis中事务用法详解(ACID)
Redis中事务用法详解(ACID)原创 2023-01-08 12:04:49 · 437 阅读 · 0 评论 -
Redis持久化存储策略机制(RDB、AOF)
Redis持久化存储策略机制(RDB、AOF)原创 2023-01-08 23:28:59 · 5059 阅读 · 0 评论 -
redis批量处理工具pipeline
redis批量处理工具pipeline原创 2023-01-06 00:13:44 · 3493 阅读 · 0 评论 -
python中布隆过滤器用法详解
python中布隆过滤器用法详解原创 2022-11-13 23:46:04 · 4600 阅读 · 1 评论 -
centos7中安装redis插件bloom-filter
centos7中安装redis插件bloom-filter原创 2022-11-13 23:29:58 · 852 阅读 · 0 评论 -
Centos7 安装Redis详细教程
Centos7 安装Redis详细教程原创 2022-11-13 16:21:38 · 13081 阅读 · 3 评论 -
Redis学习笔记记录1【图灵】
Redis学习笔记记录1【图灵】原创 2022-09-26 22:04:49 · 552 阅读 · 0 评论 -
windows安装redis数据库
下载链接:https://github.com/microsoftarchive/redis/releases首先选择版本3.2.100点击下载好的安装包,开始安装,一路默认next直到finish 即可 安装完成后,打开任务管理器,选择服务,查看redis服务是否在运行,停止开启即可输入window+R中输入redis-cli并回车/或者在cmd中输入redis-cli也是可以的。(redis-cli是客户端程序)如果正常提示进入,并显示正确端口号,则表示服务已经启动 设置密原创 2021-06-27 22:49:55 · 221 阅读 · 0 评论 -
Python与redis集群进行交互操作
Python与redis集群交互 安装包如下 pip install redis-py-cluster redis-py-cluster源码地址https://github.com/Grokzen/redis-py-cluster 创建⽂件redis_cluster.py,示例码如下: from rediscluster import RedisClusterif __name__ == '__main__': try: # 构建原创 2021-02-16 16:17:51 · 390 阅读 · 2 评论 -
Redis数据库搭建集群(集群概念、redis集群介绍、搭建集群操作、Python与redis集群交互)
Redis数据库搭建集群(集群概念、redis集群介绍、搭建集群操作、Python与redis集群交互)原创 2021-02-16 16:15:24 · 8573 阅读 · 5 评论 -
Redis数据库搭建主从同步(主从概念、主从配置、主从数据操作)
Redis数据库搭建主从同步(主从概念、主从配置、主从数据操作)原创 2021-02-16 14:00:09 · 610 阅读 · 2 评论 -
python与Redis数据库进行交互(增删改查)
python与Redis数据库进行交互(增删改查)原创 2021-02-16 13:11:44 · 681 阅读 · 2 评论 -
Redis中有序集合zset数据类型
Redis中有序集合zset数据类型(增加(添加元素)、获取(获取指定范围元素、返回权值在min和max之间的成员、返回成员member的score值)、删除(删除指定元素和指定权值范围的元素))原创 2021-02-16 12:22:57 · 4258 阅读 · 0 评论 -
Redis中集合set数据类型(增加(添加元素)、获取(获取所有元素)、删除(删除指定元素))
Redis中集合set数据类型(增加(添加元素)、获取(获取所有元素)、删除(删除指定元素))原创 2021-02-16 12:14:09 · 4410 阅读 · 0 评论 -
Redis中列表list数据类型用法详解
Redis中列表list数据类型用法详解原创 2021-02-16 12:09:13 · 5322 阅读 · 0 评论 -
Redis中哈希hash数据类型(增加修改(设置单一属性、设置多个属性)、获取(获取键所有属性、获取单一属性值、获取多个属性值)、删除、使用hash可能出现的问题)
Redis中哈希hash数据类型(增加修改(设置单一属性、设置多个属性)、获取(获取键所有属性、获取单一属性值、获取多个属性值)、删除、使用hash可能出现的问题)原创 2021-02-16 00:10:04 · 5662 阅读 · 3 评论 -
Redis键命令(查找键、判断键值是否存在、查看键值类型、删除键值、设置过期时间、查看键值有效时间,永久有效、键值移动、更改键名)
Redis键命令(查找键、判断键值是否存在、查看键值类型、删除键值、设置过期时间、查看键值有效时间,永久有效、键值移动、更改键名)原创 2021-02-15 23:49:05 · 26672 阅读 · 2 评论
分享