Go语言技术文章
-
用 Redis INCRBYFLOAT 做累计值时,重点不是把返回值当金额类型,而是核对输入格式、字符串结果、浮点误差和业务落库边界。487 收藏 -
本文从零构建一个 MySQL 审计日志小项目:用订单表、审计表和触发器记录状态变更,演示本地运行、按订单查询、索引设计和过期清理。486 收藏 -
MySQL 分区表归档不要直接 DROP PARTITION:先用 INFORMATION_SCHEMA.PARTITIONS 核对边界,再用 EXCHANGE PARTITION 把旧数据换到归档表,最后用校验和回滚演练确认没有误删。483 收藏 -
Redis 7.4 项目里把集合成员一次性读回应用,容易让单次请求和客户端内存一起抖动。本文从 SMEMBERS 迁移到 SSCAN,说明游标循环、COUNT 提示、重复项处理和上线复测的边界。483 收藏 -
MySQL 事务中遇到一条可恢复的业务错误时,不必立刻回滚全部操作。本文用 SAVEPOINT 演示局部回滚,解释保存点对锁状态的影响,并给出重试与提交前核对边界。482 收藏 -
用 Redis 8.0 的 HGETEX 读取 Hash 字段并单独设置 TTL,拆解 FIELDS、EX 与 PERSIST 的参数边界,再用 HEXPIRETIME 和 HGET 验收结果。481 收藏 -
数据库 · MySQL | 4天前 | MySQL · 数据库 · 死锁 · InnoDB · 性能排查 · mysql innodb 死锁 事务 LATEST DETECTED DEADLOCK 锁顺序
MySQL 发生死锁后,不能只看报错回滚。本文从 SHOW ENGINE INNODB STATUS 的 LATEST DETECTED DEADLOCK 还原事务、锁资源和等待关系,再用相反锁顺序构造最小复现并给出上线前验收清单。480 收藏 -
数据库 · Redis | 5天前 | Redis · 缓存 · 运维排查 · 过期策略 · PubSub · redis TTL 过期事件 keyspace notification notify-keyspace-events
Redis 监听过期事件时,最常见的问题不是订阅代码,而是 notify-keyspace-events 没有打开 K 或 E、x 标志选错,或者把过期时间归零误当成事件已经发出。本文从配置、频道、TTL 验收和可靠性边界逐步排查。477 收藏 -
Redis 内存告警时,INFO memory 只能告诉你总量,MEMORY USAGE 才能把问题落到具体键。本文用 user:42:feed 和 members 两个真实键形态,拆解 SAMPLES 采样、集合成员核对与安全处置顺序。477 收藏 -
Redis BITFIELD 适合把多个小整数压进一个字符串,但积分计数一旦选错位宽或溢出策略,结果可能悄悄回绕。本文用积分桶示例拆开 GET、INCRBY、OVERFLOW 的边界,并给出可重复的验收命令。476 收藏 -
Redis HRANDFIELD 适合从 Hash 中抽取随机字段。本文用 redis-cli 核对单字段、COUNT、WITHVALUES、负数 COUNT、空键和重复结果,避免把随机读取误当成去重抽样。476 收藏 -
Redis SORT_RO 是 SORT 的只读变体,适合在只读副本上完成列表、集合或有序集合排序。本文用商品候选列表拆开 LIMIT、GET、ALPHA 的结果边界,解释为什么 SORT 会被导向主节点,以及如何验证查询结果和复杂度风险。475 收藏 -
EXPLAIN 里的 rows 只是优化器估算要扫描的索引记录数,不等于最终访问数据页的成本。本文用订单列表查询拆开回表、覆盖索引和分页取数的关系,并给出可复现的验收方法。475 收藏 -
Redis CLIENT PAUSE 会在指定毫秒内暂停客户端命令。本文用最小演练解释 WRITE、ALL、TIMEOUT 与 CLIENT UNPAUSE 的差异,并给出主从切换前后的检查顺序。474 收藏 -
Redis 向量检索不是把 KNN 数字改大就能得到稳定结果。使用 FT.SEARCH 时,应先明确过滤条件、DIALECT 2 和 HYBRID_POLICY 的关系,再根据候选规模选择 ADHOC_BF 或 BATCHES,并检查距离排序是否符合业务语义。474 收藏