Go语言技术文章
-
用 Redis GEOSEARCHSTORE 把附近门店筛选结果落到新集合,实测 BYRADIUS、COUNT、排序和旧结果清理的边界。464 收藏 -
数据库 · MySQL | 5天前 | MySQL · 执行计划 · 索引优化 · 数据库排查 · 线上变更 · mysql 不可见索引 Invisible Index optimizer_switch 索引回归
MySQL 的不可见索引适合用来观察“去掉这条索引会怎样”,但它不是删除前的自动回滚按钮。本文以订单查询为例,演示设置不可见、用 optimizer_switch 做单会话影子验证、检查执行计划和恢复可见性的边界。308 收藏 -
数据库 · MySQL | 5天前 | MySQL · SQL · 递归查询 · CTE · 层级数据 · 层级数据 MySQL 递归CTE WITH RECURSIVE cte_max_recursion_depth 环检测
用部门层级和类别树说明 MySQL 8.4 递归 CTE 的停止条件、cte_max_recursion_depth、循环引用检测与路径验收,避免层级查询卡住或重复展开。454 收藏 -
MySQL 的 NULL 不是普通空值,WHERE 条件还会产生 UNKNOWN。本文用订单查询拆开三值逻辑、IS NULL 判断和索引执行计划的边界。234 收藏 -
数据库 · Redis | 5天前 | Redis · 消息队列 · 重试机制 · Stream · 消费组 · ACK · redis streams 重试 XREADGROUP XACK PEL pending
在 Redis Streams 下游,ACK 只是消费确认,不是消息删除;pending 列表、last-delivered-id 与重试窗口一起决定消息是否真正安全出队。本文用 redis-cli 的最小链路验证常见误区和可上线检查点。339 收藏 -
MySQL 组合索引不是把常用字段随意拼在一起。本文用等值条件、范围条件和排序三个场景说明列顺序如何影响扫描范围,并给出 EXPLAIN 验收方法。359 收藏 -
数据库 · Redis | 6天前 | Redis · 缓存 · 排行榜 · Sorted Set · 数据筛选 · redis 排行榜 BYSCORE Sorted Set ZRANGESTORE 窗口查询
Redis ZRANGESTORE 可以把 Sorted Set 的排名或分值窗口直接保存到新键,适合把排行榜切片、活动候选集和分页结果短暂落盘。本文用 redis-cli 核对 BYSCORE、REV、LIMIT、返回值与 TTL 边界,说明它和 ZRANGE、ZRANGESTORE 的使用取舍。420 收藏 -
MySQL 8.4 中,RANGE 和 ROWS 看起来只差一个单词,却会在同分值、时间范围和滚动统计中产生不同结果。通过订单金额累计和 7 天滑动平均两个例子,定位默认窗口边界并给出验收方法。380 收藏 -
Redis LPOS 查找列表元素时,负数 RANK、List 下标和空结果容易混淆。本文用重复通知场景拆解从尾部定位、扫描边界与应用侧验收。381 收藏 -
MySQL XA 事务进入 PREPARED 后,连接断开并不代表事务已经消失。本文从 XA RECOVER、事务分支和业务提交记录入手,说明如何区分可提交、可回滚和需要人工确认的状态,并给出恢复前后的验收边界。412 收藏 -
Redis ZMSCORE 可以一次查询 Sorted Set 中多个成员的分数,但返回顺序、缺失成员的 nil 和空集合结果经常被业务代码误判。本文用排行榜示例说明批量查询、结果映射与命中验收边界。247 收藏 -
MySQL 临时表在一个连接里明明存在,换个请求却提示表不存在,通常不是表被误删,而是会话边界或连接池复用方式发生了变化。本文用可复现 SQL 说明临时表的生命周期、连接核对、连接池风险和断线验收。188 收藏