Go语言技术文章
-
数据库 · Redis | 2个月前 | Redis · 队列 · 并发控制 · 故障排查 · Sorted Set · redis Sorted Set ZPOPMIN ZMPOP 并发消费 业务顺序
Redis ZMPOP 可以从 Sorted Set 原子取出最小分值成员,但批量弹出后的业务顺序、空结果和多消费者并发仍需要单独设计。本文用 redis-cli 拆开 MIN、COUNT、分值返回和单消费者批处理边界。280 收藏 -
MySQL 存储程序可用裸 RESIGNAL 保留原始条件,用 GET STACKED DIAGNOSTICS 读取原始诊断。本文通过受控异常比较状态、错误号与消息,说明定向改写、额外语句、日志失败和事务归属的边界。280 收藏 -
Redis ZSET 分数相同时不会按插入顺序排列,而是继续按 member 的二进制字节序排序。本文用命令示例说明正反向查询,并给出姓名、序号和时间等业务 tie-break 的设计方法。279 收藏 -
Redis 配置 volatile-lru 却没有淘汰键时,先核对运行时策略和 maxmemory,再用 TTL 检查候选键是否真的带过期时间,最后排查覆盖写抹掉 TTL 的问题。279 收藏 -
Redis Stream 的消息保留可以按数量或消息 ID 控制:MAXLEN 适合固定条数,MINID 适合按时间窗口推进。本文用 XTRIM 和 XADD 示例说明精确、近似裁剪、消费组引用以及上线前的检查边界。279 收藏 -
MySQL JSON_OVERLAPS 用于判断两个 JSON 文档是否存在共同内容。本文以数组交集为主线,说明它与 JSON_CONTAINS 的区别,并补充对象、标量、NULL、类型边界和多值索引方向。279 收藏 -
MySQL ANSI_QUOTES 会把双引号内容解析为标识符。本文区分名称与字符串,说明会话配置、同名列误读风险及迁移写法,并提供保留原模式的临时表对照示例。279 收藏 -
MySQL ST_NumInteriorRing 用于返回 Polygon 内部环的数量,也就是多边形孔洞数。本文从最小 WKT 示例讲清外环与内环、1-based 编号、复数别名、NULL 和错误输入边界,并说明如何读取指定孔洞环。279 收藏 -
MySQL 隐形索引适合用来验证一个索引是否仍被优化器需要。本文以订单查询为例,演示如何将索引设为不可见、用 EXPLAIN 对比计划、观察线上指标,并在结果不理想时快速恢复。278 收藏 -
MySQL 8.4 的 INSERT 语法没有通用的 RETURNING 子句。本文用订单写入场景解释为什么不能把 PostgreSQL 式写法直接搬过来,并给出 LAST_INSERT_ID、事务内 SELECT 和多行写入的核对边界。278 收藏 -
Redis Lua 脚本返回多条结果时,关键不在于把值塞进 table,而在于分清 KEYS 与 ARGV、避开 nil 截断,并按 RESP2 的数组语义设计客户端解码。278 收藏 -
Redis 8.10 新增 LMOVEM 与 BLMOVEM。本文用 COUNT、EXACTLY、OBO、BULK 四个边界说明如何在非阻塞搬运和等待数据的队列消费者之间做选择。278 收藏 -
Redis GEOSEARCH 可以以给定经纬度或已有成员为中心,用 BYRADIUS 按米、千米等单位筛选地理成员,再用 ASC、COUNT、WITHDIST 和 WITHCOORD 控制排序、数量与返回字段。278 收藏 -
把 Redis MEMORY DOCTOR 当作内存问题线索入口,再用 INFO memory 和 MEMORY STATS 区分数据集、历史峰值、分配器碎片及客户端和复制缓冲区,按证据选择治理动作并复测。277 收藏 -
Redis Hash 适合平面字段和字段级读写,Redis JSON 适合嵌套对象、数组和路径级访问。本文从数据形状、更新粒度、查询能力、内存成本与生产迁移边界说明两者如何选择。277 收藏