Go语言技术文章
-
用 Redis INFO commandstats 拆解单命令 CPU 异常,理解 calls、usec、usec_per_call、failed_calls 与采样窗口的关系,并给出可复核的排查流程。135 收藏 -
给一个需要同时写入多个 Redis 字符串键的初始化场景,说明 MSETNX 为什么能做到全成全败、返回 0 时如何定位已存在键,以及单机原子语义在集群多键操作中的边界。189 收藏 -
Redis ZSet 适合按时间分拣延迟任务,但先用 ZRANGEBYSCORE 读取、再用 ZREM 删除会留下并发抢占窗口。本文从两个 worker 同时取到同一 job_id 的现场出发,说明如何用 Lua 把筛选与删除放进一次原子操作,并保留重复执行与故障恢复边界。192 收藏 -
数据库 · MySQL | 2星期前 | MySQL · 事务 · 并发控制 · 隔离级别 · InnoDB · READ COMMITTED MySQL一致性读 当前读 快照读 REPEATABLE READ FOR UPDATE
用两个事务的可复现实验解释 MySQL InnoDB 快照读为什么看不到另一个事务刚提交的数据,并对比 REPEATABLE READ、READ COMMITTED 与 SELECT ... FOR UPDATE 的适用边界。207 收藏 -
MySQL 8.4 RESOURCE GROUP 可以把后台批处理会话放入独立资源组,通过 VCPU、THREAD_PRIORITY 和 SET RESOURCE GROUP 限制其对前台查询的影响。本文用一个可回滚的示例说明创建、绑定、核验与平台边界。349 收藏 -
用 Redis HINCRBY 为哈希字段做原子计数,验证键和字段不存在时的初始化行为,并处理非整数值与 64 位整数边界。351 收藏 -
数据库 · Redis | 2星期前 | Redis · hash · 数据生命周期 · 缓存过期 · Redis 7.4 · redis Hash HEXPIRE HPTTL 字段过期 Redis 7.4
Redis 7.4 的 HEXPIRE 可以只给 Hash 中指定字段设置过期时间,适合拆分会话或临时属性的生命周期。本文用 HSET、HEXPIRE、HPTTL 和 HGETALL 核对 FIELDS 参数、返回值、版本边界与常见误区。450 收藏 -
数据库 · MySQL | 2星期前 | MySQL · 索引 · 数据库 · 执行计划 · 性能排查 · 执行计划 cost_info MySQL EXPLAIN FORMAT=JSON rows_examined_per_scan 索引选择
用一个订单查询拆解 MySQL EXPLAIN FORMAT=JSON:怎么看 cost_info 和 rows_examined_per_scan,如何把估算行数、过滤条件与索引选择对上,避免只盯着 type=ALL 下结论。276 收藏 -
数据库 · MySQL | 2星期前 | MySQL · 事务 · C API · 批量写入 · 批量Insert mysql_info mysql_affected_rows CLIENT_FOUND_ROWS
批量 INSERT 成功后,mysql_affected_rows() 只能给出影响行数,mysql_info() 还能返回 Records、Duplicates、Warnings 等细节。本文用 MySQL 8.4 C API 示例说明两者如何配合,以及 CLIENT_FOUND_ROWS 什么时候会改变判断。152 收藏 -
连接池让数据库线程看起来都一样时,可以查询 performance_schema.session_connect_attrs,用 ATTR_NAME、ATTR_VALUE 和 PROCESSLIST_ID 把连接还原到驱动、应用实例与线程,再结合连接状态完成定位。248 收藏 -
Redis Sentinel 切主后客户端频繁重连,通常要从主观下线、+switch-master 事件、服务发现和连接池旧连接四个边界排查;本文给出一次可回滚的定位路径。409 收藏 -
Redis 设置了 EXPIRE 后,键并不一定在到点瞬间从内存消失。本文从 TTL 读数、访问触发的惰性删除和后台主动过期检查入手,说明为什么会看到过期键,以及怎样用命令判断问题究竟在观察方式、访问路径还是过期清理压力。122 收藏 -
MySQL 给大表加索引时,ALGORITHM 和 LOCK 决定了变更方式与并发影响。本文用 ALTER TABLE 说明如何预判支持范围、处理元数据锁,并在上线前做可回退的核对。264 收藏 -
数据库 · Redis | 2星期前 | Redis · 消息队列 · Stream · 消费组 · 重试 · XAUTOCLAIM · redis streams XPENDING XAUTOCLAIM PEL pending JUSTID
Redis Streams 里,XAUTOCLAIM 只负责把空闲消息转交给新消费者,不能替代 XACK,也不会自动清空 PEL。本文用 redis-cli 拆开 JUSTID、XPENDING、XACK 与 XDEL 的边界,给出重试后验收消息是否真正收口的检查路径。501 收藏 -
Redis 向量检索不是把 KNN 数字改大就能得到稳定结果。使用 FT.SEARCH 时,应先明确过滤条件、DIALECT 2 和 HYBRID_POLICY 的关系,再根据候选规模选择 ADHOC_BF 或 BATCHES,并检查距离排序是否符合业务语义。474 收藏