-
直接用DEL释放锁会误删其他客户端的锁,因判断持有锁与删除非原子操作;Lua脚本通过原子执行“GET校验+DEL”解决,需传入key和client_id,返回1成功、0失败。
-
RedisLua脚本不能实现真正的分布式事务回滚,仅能通过条件化原子写入预防性拒绝,失败后需业务层设计补偿机制。
-
必须显式配置client-output-buffer-limit,否则普通客户端无输出缓冲区上限,易致内存耗尽;需为normal、pubsub等类型分别设置hard/soft限制,尤其pubsub缓冲区最易失控。
-
不能。PSUBSCRIBE仅支持glob模式(、?、[abc]),不解析冒号分隔的层级语义,news::等多星写法无效;实际可行的是单通配符前缀匹配(如news:),依赖命名规范而非Redis自动路由。
-
MySQL数据归档主要有四种方式。1.使用SQL语句手动归档,通过INSERT和DELETE迁移历史数据,适合小规模场景但需注意事务控制、索引影响和备份确认;2.利用事件调度器实现定时自动归档,可设定周期任务并建议配合分区使用以减少性能影响;3.结合时间分区表进行归档,提升查询效率且操作整个分区更高效,但存在分区键设计限制;4.借助第三方工具如pt-archiver或mysqldump,前者支持边归档边删除并控制资源占用,后者适用于低频小规模归档。根据数据量和业务需求选择合适方法,小型项目可用SQL+事件