Go语言技术文章
-
Redis Pipeline 出现异常时,不能只看 Exec 总错误。本文用 Go 客户端拆分请求级、命令级和业务级结果,区分 redis.Nil、命令参数错误与连接故障,并说明部分成功与重试边界。354 收藏 -
介绍 Redis Stream 如何通过 XREADGROUP、XACK、XPENDING 和 XAUTOCLAIM 组织可重试任务队列,并说明至少一次投递下的幂等、超时转交和历史清理边界。349 收藏 -
Redis 过期键并不是只靠一个定时器逐个删除:客户端访问到已过期键时会触发访问时处理,后台也会周期性抽样清理。本文用 TTL 的正数、-1、-2 返回值建立排查顺序,并说明主动过期、访问时删除和时间精度的边界。324 收藏 -
Redis Pub/Sub 断线重连不能补发已丢失消息,但可以保存订阅意图,在新连接建立后按快照恢复频道并用订阅回执确认 ready。本文给出 Go 风格实现思路和 Pub/Sub、Streams 的选型边界。309 收藏 -
MySQL InnoDB 中普通 SELECT、UPDATE、FOR SHARE 与 FOR UPDATE 使用的读视图不同。本文通过事务快照、当前版本和锁定动作,给出查询与并发修改的选择方法。306 收藏 -
MySQL 时间范围查询能否命中分区,关键不在分区数量,而在分区键、边界定义和 WHERE 谓词是否保持可裁剪形式。本文用 RANGE COLUMNS、半开区间与 EXPLAIN PARTITIONS 说明具体做法。301 收藏 -
旧表字符集迁移不能只改一个默认值。本文以 utf8mb4 为目标,说明如何盘点表列与连接设置、选择排序规则、执行 ALTER TABLE、处理显式列定义并安排迁移后的核对与回滚。281 收藏 -
围绕 (tenant_id, status, created_at) 示例,说明跳过复合索引最左列后普通访问、Skip Scan、EXPLAIN 判断和索引调整方案。244 收藏 -
介绍 Redis Sentinel 通过服务名获取当前主节点地址的配置与客户端实现,覆盖切换刷新、连接重建、端口映射和异步复制边界。236 收藏 -
围绕 mysqldump 讲清 InnoDB 一致性导出、对象清单、恢复先后和结果核对,帮助你规划一份真正可恢复的 MySQL 逻辑备份。235 收藏 -
围绕一条真实列表查询,拆分过滤、排序和返回字段,给出 MySQL 复合覆盖索引的布局方法、EXPLAIN 检查项,以及范围条件和写入成本的上线边界。228 收藏 -
用 Redis Lua 脚本把库存校验、扣减和请求记录写入放进同一次执行,配合 KEYS、ARGV、返回码与幂等记录处理重复请求、库存不足和集群键位边界。226 收藏 -
Redis 修改 maxmemory-policy 后,应先用 CONFIG GET 确认运行时策略,再用 INFO stats 记录 evicted_keys 差值。本文给出策略变更、持久化和淘汰计数判断方法。223 收藏 -
从 AOF 多部分文件、fork 与 Copy-on-Write、fsync 和 INFO persistence 指标入手,说明重写期间磁盘增长与延迟抖动的来源,并给出配置和排查方法。218 收藏 -
Redis Bitmap 的 offset 是从 0 开始的位偏移,不是字节下标。本文用字节映射、Go 边界检查和 BITFIELD 定宽字段示例,说明如何计算位图偏移并避免负数、整数溢出和 2^32 上限带来的越界问题。130 收藏