Go语言技术文章
-
从客户端 GET、判断、DECRBY 的竞态出发,说明 Redis Lua 如何把检查与更新放入同一次原子执行,并给出 KEYS、ARGV、EVALSHA、NOSCRIPT 和脚本长度的迁移清单。363 收藏 -
Redis Pub/Sub 断线后不能补回已经错过的消息。本文解释至多一次投递的原因,并用 Redis Streams 消费组设计可补读的可靠事件方案。362 收藏 -
数据库 · MySQL | 2星期前 | MySQL · 配置文件 · NDB Cluster mysqld 滚动重启 config.ini MySQL NDB my.cnf ndb_mgmd ndbd
MySQL NDB Cluster 修改配置后,不是所有场景都要重启整簇。本文区分 config.ini 与 my.cnf 的职责,说明管理节点、数据节点和 SQL/API 节点的重启边界,以及 --reload、RESTART、STOP 的使用取舍。362 收藏 -
Redis 连接数量一多,只看地址和用户名很难判断请求来自哪个客户端库。本文用 Redis 7.2 引入的 CLIENT SETINFO 设置 LIB-NAME、LIB-VER,再通过 CLIENT LIST 和 CLIENT INFO 核对连接来源,并处理旧版本兼容。361 收藏 -
介绍 Redis CLIENT TRACKING 的 BCAST 模式,说明如何用 PREFIX 接收客户端缓存失效通知,并处理 RESP2 重定向、NOLOOP、前缀重叠和通知连接断开等边界。361 收藏 -
Redis ACL CAT 能列出权限分类和分类内命令。本文比较分类授权、增量组合与逐条命令三种做法,并给出缓存账号的实际配置顺序与复核方法。361 收藏 -
MySQL 混合字符串表达式的排序规则可用 CHARSET、COLLATION、COERCIBILITY 观察;数值越小优先级越高,显式 COLLATE 为 0。本文用原创 SQL 说明列、字面量、拼接和同优先级冲突的判断方法。361 收藏 -
ROW_NUMBER()分页出错是因为ORDER BY字段重复导致行号分配不稳定,必须在排序末尾添加唯一列(如id)兜底;WHERE条件需用子查询或CTE套一层且rn别名不可省略;避免使用运行时函数或精度不足的时间字段。ROW_NUMBER() 分页为什么总出错?需知,ROW_NUMBER() 本身360 收藏 -
用 InnoDB 任务表实现并发取件时,NOWAIT 适合立即失败,SKIP LOCKED 适合跳过占用行。本文给出事务边界、SQL 写法、错误处理和复制安全边界。360 收藏 -
用 INFO stats、memory、keyspace 三组指标和时间窗口差值,区分 Redis 的 maxmemory 驱逐、TTL 过期与 noeviction 拒写。360 收藏 -
Redis ACL DRYRUN 可以在不执行命令的情况下模拟用户权限。本文从 ACL SETUSER 配置命令权限和密钥模式,逐项验收读写边界、拒绝原因与上线前回归。359 收藏 -
MySQL 组合索引不是把常用字段随意拼在一起。本文用等值条件、范围条件和排序三个场景说明列顺序如何影响扫描范围,并给出 EXPLAIN 验收方法。359 收藏 -
MySQL 联合索引缺少中间列时,后缀列通常不能像连续最左前缀一样直接定位,但可能参与索引条件检查。本文用执行计划区分查找、过滤与 Skip Scan,并给出索引调整判断方法。358 收藏 -
Redis Cluster 的多键命令要求相关键位于同一 hash slot。本文用 hash tag 设计键名,再用 CLUSTER KEYSLOT 排查空标签、嵌套花括号和模板不一致等问题。358 收藏 -
MySQL 不可见索引可以模拟删除而保留快速回滚能力。本文从索引约束、不可见化、执行计划、慢查询和工作负载三层观察,给出决定是否 DROP INDEX 的检查顺序。358 收藏