Go语言技术文章
-
Redis Pub/Sub 适合在线订阅者都能即时收到、允许离线丢失的广播;Redis Streams 适合需要留痕、回放、消费组分工和确认的消息。本文从触发信号、持久化边界、故障处理和告警复盘给出选型方法。135 收藏 -
用MEMORY USAGE估算Redis单键内存,区分业务长度和实例内存,讲解SAMPLES的有限采样与全量含义,并给出受限查询、权限和结果记录方法。220 收藏 -
Redis 写入后再执行 EXPIRE 会留下异常窗口。本文用 SET NX EX 把不存在条件、值和过期时间放进一条命令,并说明 OK、空返回、TTL、PX 与 KEEPTTL 的边界。117 收藏 -
Redis TTL 返回负数通常不是命令失效:-1 表示键存在但没有过期时间,-2 表示键不存在。本文用最小 redis-cli 示例对照 SET EX、PERSIST、DEL 和 PTTL,给出一套排查 TTL 负数的判断顺序。255 收藏 -
解释Cluster原生MGET的同槽限制,区分槽和节点、普通前缀与哈希标签,给出同槽命令和客户端非原子读取示例,并说明结果顺序、热点和失败语义。143 收藏 -
Redis Streams 的积压不能只看 XLEN。本文用 XPENDING、XINFO GROUPS 和 XINFO CONSUMERS 区分 pending 与 lag,并给出从现象到根因的排查命令。449 收藏 -
Redis 7 及以上可以把 Lua 逻辑保存为 Function library,再用 FCALL 按名称调用。本文用库存扣减示例说明 FUNCTION LOAD、KEYS/ARGV、原子执行和升级边界。286 收藏 -
Redis Lua 脚本不能依靠多个 return 表达式同时返回多个顶层结果,常用做法是返回一个按位置约定的 Lua 数组表。本文从 EVAL 参数开始,说明状态码、消息和业务值怎样放进同一份数组回复,并处理 nil、布尔值和错误分支。231 收藏 -
本文用 Redis ZRANGE 的 BYSCORE、排他分值和 LIMIT 实现有序集合游标分页,说明如何保存下一页游标、避免重复分值跳过数据,并判断末页与查询成本。414 收藏 -
说明HSCAN游标与COUNT规则,给出二进制安全的JSONL增量导出示例,讨论重复字段、并发修改、响应容量、失败文件与恢复幂等的设计。334 收藏 -
Redis XAUTOCLAIM 的 COUNT 是每轮尝试接管的数量上限,不保证恰好返回相同条数。本文结合 PEL、min-idle-time、start 游标和 COUNT×10 扫描窗口,说明如何控制恢复负载、读取三段返回值并处理 0-0 与已删除消息边界。215 收藏 -
MySQL 事件调度器适合执行清理、汇总等周期任务,但安全性不只取决于 EVERY 语句。本文用一个分批清理示例,说明 event_scheduler、EVENT 权限、DEFINER、批量上限、审计记录、INFORMATION_SCHEMA.EVENTS 和副本禁用边界。159 收藏 -
MySQL LOAD DATA 导入包含换行的字段时,正确配置字段分隔符、引号包裹、转义字符和行结束符,并用警告与抽样查询确认数据没有错行。181 收藏 -
MySQL histogram 不会替代索引,它解决的是优化器看不清列值分布、导致 rows 估算失真的问题。本文以订单状态列为例,演示怎样建立和查看 histogram,再用 EXPLAIN 判断统计信息的作用,并说明 bucket、采样率、自动更新和适用边界。386 收藏 -
从 InnoDB 死锁报告中的事务 ID、MySQL thread id、SQL 和锁对象入手,结合 Performance Schema 与应用日志,把死锁日志对应到具体连接和业务事务。185 收藏