Go语言技术文章
-
用 MySQL 隐形索引代替立即删除:先确认索引状态,再比较 EXPLAIN、慢查询和单语句计划,最后按证据恢复或安排 DROP INDEX。333 收藏 -
Go log/slog 可以通过 HandlerOptions.ReplaceAttr 统一删除或改写 time、source 等内置字段。本文说明 groups 的层级边界,并用 TextHandler 与 JSONHandler 解释稳定输出方案。333 收藏 -
Go netip.Prefix.Contains 返回结果异常时,先检查地址族、映射地址、零值和 IPv6 zone,再确认 Prefix 是否有效以及是否需要 Masked 规范化。333 收藏 -
Python 资源数量不固定时,用 contextlib.ExitStack 统一登记上下文管理器和 cleanup 回调,按后进先出顺序完成关闭,并用 pop_all 交接清理责任。333 收藏 -
Redis ZMPOP 可以从多个有序集合中找到第一个非空 key,再按 MIN 或 MAX 批量弹出成员。本文拆解 COUNT、空集合和返回结构,帮助你写出可预测的优先级取数逻辑。333 收藏 -
Python dataclass 不只看注解写了什么名字,还要判断它最终是否能解析为 typing.ClassVar。本文用直接导入、公共模块重新导出和字符串注解三个最小场景,说明 ClassVar 为什么不进入字段集合,以及如何用 fields() 和签名快速定位异常。333 收藏 -
Go io.ReaderAt 适合按偏移读取固定长度记录。本文用偏移公式、完整读取示例和错误表,说明如何处理短读、EOF、溢出和底层 I/O 错误。333 收藏 -
本文介绍如何基于系统模块定义和用户实际权限,生成一个带布尔标记(1/0)的权限映射对象,实现模块动作级的细粒度权限比对与结构化输出。 本文介绍如何基于系统模块定义和用户实际权限,生成一个带布尔标记(1/0)的权限映射对象,实现模块动作级的细粒度权限比对与结构化输出。做权限管理时,经常会遇到这样一个场332 收藏 -
Redis Bitmap 很适合保存按天变化的签到状态,但连续天数不能直接用 BITCOUNT 代替。本文从日期偏移、补签规则和查询性能三个角度,给出可验证的存储方案与边界处理。332 收藏 -
配置文件直接覆盖时,读线程可能看到半截内容。本文用 Java NIO 的临时文件、Files.move 和同目录改名实现一次完整替换,并说明 ATOMIC_MOVE 不可用时如何回退与核对结果。332 收藏 -
context.AfterFunc 的停止函数只负责阻止尚未开始的回调;一旦回调已经启动,调用 Stop 不会等待它结束。本文用可复现代码拆开停止竞态、资源释放和幂等收尾。332 收藏 -
科技周边 · 业界新闻 | 1个月前 | 云原生 · Etcd · kubernetes · 版本发布 · 火绒流量防火墙 ETCD Kubernetes v1.37 Watch Cache kube-apiserver
Kubernetes v1.37 将 Watch Cache 初始化与重建过程中的请求洪峰处理推进到稳定状态,kube-apiserver 会对恢复期的 list/watch 请求进行有界处理,并在需要时返回 HTTP 429。本文从控制面恢复场景拆解这项发布变化、客户端退避边界和升级后的验收动作。332 收藏 -
Go 1.24 的 encoding.TextAppender 允许类型直接把文本表示追加到已有字节切片。本文用 AppendText 与 MarshalText 对比,说明何时能减少临时分配、如何保持语义一致,以及实现和基准中的边界。332 收藏 -
围绕暮色峡谷中的悬浮石桥制作一组原创竖屏手机壁纸,先展示紫蓝暮色主图,再提供对应中英文提示词、锁屏留白改词方法和明显不同的金色云隙变体。332 收藏 -
用 Java Runtime.Version 解析并比较运行时版本,区分 feature、interim、update、patch 与 pre 预览标记,避免把字符串排序误当成版本判断。332 收藏