Go语言技术文章
-
用 XINFO GROUPS、XINFO CONSUMERS 与 XPENDING 区分 Redis Streams 的未投递积压和未确认积压,并说明 lag、pending、idle、inactive 的版本语义与告警组合。132 收藏 -
通过会话级 optimizer_switch 对比 use_invisible_indexes 开关,验证不可见索引是否进入 MySQL 查询计划,并给出恢复设置与上线判断边界。283 收藏 -
本文用 Redis Vector Sets 组织向量、元素标识和轻量属性,说明如何用 VADD、VSIM、FILTER、COUNT 与 FILTER-EF 设计可解释的相似度查询结果。449 收藏 -
针对日期分区查询中 DATE、YEAR 等函数包裹分区键的场景,给出半开区间改写、EXPLAIN 验证、时区边界与不适用条件。224 收藏 -
对比 Redis Pub/Sub 与 Streams 的事件可靠性,说明在线广播、持久化、消费组、XACK、PEL 和故障恢复的边界,帮助按业务是否允许丢失选择消息模型。270 收藏 -
用 Redis Functions 封装单 SKU 库存扣减与成功回执,讲清重复请求、库存不足、TTL、Cluster 同槽、函数部署和故障恢复的幂等边界。468 收藏 -
迁移 MySQL utf8mb4 排序规则前,系统检查字符字段、索引、唯一键、外键、生成列与尾部空格语义,提前发现重复值和兼容性风险。319 收藏 -
用绝对毫秒时间戳设计 Redis ZSET 延迟队列的 score,并结合稳定任务 ID、原子领取、处理租约和幂等消费避免常见并发问题。394 收藏 -
从 InnoDB 死锁日志还原事务等待环,对应索引和 SQL 访问路径,并用统一锁顺序、缩小扫描范围与事务重试降低复发。401 收藏 -
Redis 7.4 开始支持 Hash 字段级 TTL。本文对比 HEXPIRE 与整 key EXPIRE 的适用场景、覆盖规则、版本边界和最小检查方法,帮助按数据生命周期选择更稳妥的过期策略。386 收藏 -
通过重复排序值和移动聚合案例说明 MySQL 窗口函数中 ROWS 与 RANGE 的结果差异,解释默认框架、peer rows、稳定排序键以及数值和时间范围的选择方法。394 收藏 -
Redis Cluster 的多 key 命令、MULTI/EXEC 和 Lua 脚本要求相关 key 落在同一 hash slot。本文用 Hash Tag 设计用户级 key,给出 MSET、事务与脚本的选择方法,并说明 CROSSSLOT、TRYAGAIN、热点和重分片边界。357 收藏 -
MySQL JSON_OVERLAPS 用于判断两个 JSON 文档是否存在共同元素,适合筛选标签、权限或适用范围数组。本文给出查询写法,并说明 JSON_CONTAINS、类型精确匹配、NULL、嵌套数组和 InnoDB 多值索引的边界。376 收藏 -
从 Redis 消费者组的 PEL 入手,说明如何用 XPENDING 识别滞留消息、用 XAUTOCLAIM 或 XCLAIM 转移所有权,并通过幂等处理、XACK 和失败隔离完成恢复闭环。101 收藏 -
用一套固定清单读取 MySQL EXPLAIN FORMAT=JSON:先定位 query_block 和表节点,再联读访问类型、索引、估算行数、过滤条件、排序与成本,最后用真实执行证据验证优化结果。243 收藏