Go语言技术文章
-
删除包含大量元素的 Redis Key 时,DEL 会把回收工作压在主线程,UNLINK 则先解除 Keyspace 引用,再由后台线程回收对象。本文用 redis-cli 和 lazyfree_pending_objects 拆解两者的边界、观测方法与回滚检查。247 收藏 -
两张结构一致的订单表合并查询时,UNION ALL 与 UNION 的差别不只是有没有重复数据,还会影响去重、临时表和排序路径。本文用可复现实验拆开两者的边界,并给出选择与验收方法。395 收藏 -
用 Redis SETBIT 把每天签到压成位图,重点处理日期偏移、BITCOUNT 统计、重复签到和跨月清理,附可运行示例与核对方法。162 收藏 -
MySQL 8.4 开启 sql_generate_invisible_primary_key 后,InnoDB 无主键表可能出现不可见的 my_row_id。本文用 SHOW CREATE TABLE、SHOW INDEX 和信息架构查询确认真实表结构,并说明复制与备份边界。206 收藏 -
用订单初始化和重试请求说明 Redis HSETNX 的字段级写入语义,结合 HGET、HEXISTS 与返回值 1/0 验证首次初始化、重复请求和字段已存在的边界。350 收藏 -
Redis 设置 EXPIRE 后,键不会按秒表准点从内存消失。本文用 TTL、INFO memory 和 MEMORY USAGE 区分惰性删除、定期抽样与大值回收,给出可复查的排查顺序和参数边界。291 收藏 -
数据库 · MySQL | 6小时前 | MySQL · InnoDB · 数据库备份 · 运维实践 · mysql innodb mysqldump 逻辑备份 --single-transaction
用一个可复查的导出命令讲清 mysqldump --single-transaction 的一致性边界:InnoDB 为什么能在不锁表的情况下读取同一快照,MyISAM 与 DDL 操作又会带来哪些风险。273 收藏 -
用 Redis 8.0 的 HGETEX 读取 Hash 字段并单独设置 TTL,拆解 FIELDS、EX 与 PERSIST 的参数边界,再用 HEXPIRETIME 和 HGET 验收结果。481 收藏 -
解释 Redis HSCAN 的 COUNT 参数为什么只是提示值,演示如何用游标循环完整遍历 Hash,并通过批次上限控制客户端内存与处理耗时。319 收藏 -
Redis 报 OOM 不一定是 used_memory 超过 maxmemory。本文从 maxmemory 判定、内存碎片率、客户端输出缓冲和大 key 四个方向核对真实占用,并给出可复现的 redis-cli 检查命令。460 收藏 -
REPLACE INTO 遇到主键或唯一键冲突时,不是原地更新,而是先删除旧行再插入新行。本文用订单同步场景拆开执行语义、AUTO_INCREMENT、外键级联和更稳妥的替代写法。109 收藏 -
Redis 延迟升高时,SLOWLOG 能帮助判断究竟是哪条命令在服务端执行过久。本文用 CONFIG SET、SLOWLOG GET 和 RESET 走完一次可复查的定位流程,并说明阈值、保留数量与采样盲区。403 收藏 -
批量接口遇到网络重试时,幂等键不能只停留在请求参数里。本文用批量导入订单场景说明请求级幂等、业务唯一约束和重复响应如何配合,并给出可核对的事务边界。390 收藏 -
Redis 分布式锁最容易出问题的地方,不是 SET NX EX 本身,而是任务执行时间超过租约后如何续期、谁有资格释放以及续期失败后怎样停止业务写入。本文用单实例锁的最小模型拆开租约、看门狗、随机令牌和围栏令牌的边界,再给出可验收的续期与释放检查清单。419 收藏 -
订单清理任务执行 DELETE 时,真正拖慢速度的可能不是主表扫描,而是子表外键检查、级联删除和长事务锁范围。本文用订单与明细表的场景拆开执行路径,给出索引核对、分批删除和安全验收方法。262 收藏