Go语言技术文章
-
用 Redis MODULE LIST 盘点实例加载的扩展模块,核对 name、ver、path 等返回字段,并给出上线前后的风险检查方法。121 收藏 -
Redis 删除大键时,DEL 会同步承担复合值的释放成本,UNLINK 则先摘除键并把内存回收放到后台线程。本文按负载、键大小和监控方式给出选择清单。120 收藏 -
Redis 7.0 引入的 SPUBLISH 和 SSUBSCRIBE 会把消息限制在频道对应的集群分片内,适合降低普通 Pub/Sub 的跨节点扩散。本文从频道哈希、订阅连接和返回值入手,给出一组可复查的消息验收方法。119 收藏 -
MySQL 报 Too many connections 时,不要先盲目调大 max_connections。本文用 Threads_connected、Threads_running、SHOW PROCESSLIST、Connections 和 Threads_created 建立一条可复现的定位顺序,区分连接泄漏、并发峰值与线程创建开销。119 收藏 -
MySQL 函数索引不生效,先对照索引表达式与 WHERE 谓词,再检查复合索引列顺序、覆盖列、回表和 EXPLAIN 计划。118 收藏 -
MySQL invisible index 试验结束后,用 ALTER TABLE ... ALTER INDEX ... VISIBLE 恢复可见,再通过 IS_VISIBLE、SHOW INDEX 和 EXPLAIN 确认对象状态与执行计划。118 收藏 -
数据库 · MySQL | 2个月前 | MySQL · 数据库 · SQL · MySQL VALUES() 弃用 ON DUPLICATE KEY UPDATE MySQL 行别名 INSERT AS new MySQL upsert INSERT SELECT
MySQL 已将 ON DUPLICATE KEY UPDATE 中用 VALUES() 读取新行字段的写法标记为弃用。本文从库存快照写入场景出发,给出行别名 AS new 的最小改写、INSERT ... SELECT 的不同处理方式,以及上线前应核对的兼容边界。117 收藏 -
从列定义、参数绑定和 EXPLAIN 计划三处排查 MySQL 隐式类型转换,避免字符串列与数字比较导致索引无法高效查找。116 收藏 -
Redis 更新值时,SET、SET KEEPTTL、HSET、PERSIST 和 EXPIRE 对已有 TTL 的影响不同。本文用命令对照、事务示例和回归清单区分保留、重置与删除过期时间的边界。116 收藏 -
Redis LMPOP 可以从多个 List 中选择一个非空队列并批量取出元素,但它不是轮询器。本文核对 LEFT、RIGHT、COUNT、空结果和多键顺序,给出多队列消费的安全写法与上线检查点。115 收藏 -
Redis 客户端缓存要避免脏读,重点是正确启用 CLIENT TRACKING 并处理 INVALIDATE 消息。本文比较默认跟踪、OPTIN、OPTOUT、BCAST 与 NOLOOP,说明连接池、跟踪表容量和数据库编号带来的边界。115 收藏 -
用 Redis Lua 脚本把库存校验与扣减放进一次 EVAL,讲清 KEYS、ARGV、返回值和集群键名的使用边界。114 收藏 -
用 MySQL 8.4 的 authentication_policy 规划单因素与多因素账号,说明 caching_sha2_password、旧客户端兼容窗口和上线前登录验收方法。113 收藏 -
Redis ZDIFFSTORE 会把第一个有序集合中不属于后续集合的成员写入目标键。本文用候选榜与已处理榜说明差集的成员边界、分值保留规则、空结果和集群同槽核验。112 收藏 -
Redis 7.4 及以上可用 HEXPIRE 为 Hash 字段设置独立 TTL,并用 HTTL 或 HPTTL 检查剩余时间;本文同时说明返回值、更新边界和旧版本替代方案。112 收藏