一 性能优化让Redis跑得更快、更稳内存淘汰策略Redis内存满了怎么删数据推荐用volatile-lru优先删最近最少用、且设了过期时间的key避免内存溢出。系统内核优化vm.swappiness1让系统尽量用物理内存少用硬盘swapswap慢会拖垮Redis。vm.overcommit_memory1允许Redis在内存不足时也能创建进程比如备份数据时的fork操作。监控慢查询开启Redis慢查询日志找出执行慢的命令比如大key操作及时优化。总之缓存的核心是“用空间换时间”但用不好会适得其反。记住避免缓存穿透、击穿、雪崩管好key和value合理配置连接池提前做好监控和预案就能让缓存成为系统的“加速器”而不是“绊脚石”。二 Redis高级功能1)、Redis产品有哪些Redis官网提供多个产品和版本核心分为Redis CloudRedis的云服务可申请免费实例体验Redis Stack功能空间有限付费版5美元/月起。Redis Insight官方图形化客户端解决客户端混乱问题。版本划分Redis OSS传统Redis版本基础功能。Redis Stack在Redis OSS基础上增加多个扩展模块核心介绍对象。Redis Enterprise企业版功能更全适合生产环境。2)、Redis Stack核心扩展功能体验Redis Stack的扩展模块可通过Redis Cloud免费实例快速体验主要包括以下实用功能1. Redis JSON原生支持JSON数据是什么Redis的扩展模块能直接存储、查询和修改JSON数据底层用二进制格式存储比字符串存JSON更高效。有什么用支持丰富的JSON操作比如设置JSON数据JSON.SET、查询属性JSON.GET user $.name、修改数值JSON.NUMINCRBY、删除字段JSON.DEL等。优势性能更高二进制存储比文本格式读写更快、更省内存。树状结构可快速访问子元素查询效率优于传统文本存储。生态集成支持Redis的TTL、事务、发布/订阅等功能。2. Search And Query复杂数据搜索解决问题传统Redis用keys *或SCAN指令搜索key时要么阻塞线程要么只能简单过滤无法满足复杂条件如多字段筛选。传统Scan搜索通过游标迭代返回部分结果SCAN cursor MATCH pattern适合简单key过滤但不支持复杂条件。Search And Query模块类似ElasticSearch支持基于HASH或JSON数据建索引实现多条件搜索。示例创建产品索引FT.CREATE搜索“name含HUAWEI且price在1000-5000”的商品FT.SEARCH无需迁移数据到其他数据库。3. Bloom Filter海量数据快速判重是什么一种算法用二进制数组和多个哈希函数快速判断“元素是否在集合中”适合海量数据场景如用户签到去重、缓存穿透过滤。特点优点极省空间、查询快O(1)。缺点有“误判率”可能把不存在的元素判为存在且无法删除元素。Redis使用通过BF.RESERVE创建过滤器BF.ADD添加元素BF.EXISTS判断是否存在返回1表示可能存在0表示一定不存在。4. Cuckoo Filter支持删除的布隆过滤器改进版是什么布隆过滤器的升级版解决了“无法删除元素”的问题空间利用率更高但算法更复杂。特点用“桶Bucket”存储数据指纹压缩后的数据支持CF.DEL删除元素。误判率受桶大小默认2和指纹影响桶越大空间利用率越高但误判率也越高。3)、Redis Stack补充手动安装与调用手动安装扩展模块下载扩展模块如redisbloom.so在Redis配置文件中用loadmodule加载重启Redis即可使用需注意文件权限。Java客户端调用由于扩展模块较新Java客户端需通过Lua脚本调用如布隆过滤器的BF.RESERVE、BF.ADD指令需处理服务端未安装模块的异常。总结Redis Stack通过多个扩展模块JSON、Search And Query、Bloom Filter、Cuckoo Filter等让Redis从“简单缓存”升级为支持复杂数据存储、搜索和高效判重的工具适合需要处理JSON数据、复杂搜索或海量数据去重的场景。可通过Redis Cloud免费实例快速体验也可手动安装模块集成到自有Redis服务中。