Go语言技术文章
-
Go Gonum 的最短路径结果不能只看 weight 是否为 0。本文结合 Shortest.To 和 WeightTo 的契约,区分源节点、零成本路径、不可达节点、未知节点与负环,并给出可复用的分类写法。226 收藏 -
Go container/ring 的 Unlink 从当前节点之后摘除连续节点,并返回独立子环。用六节点示例说明数量取模、锚点选择、剩余长度与返回值别名,以及严格数量包装方式。226 收藏 -
Go 更新配置文件时不要直接截断正式文件。把临时文件放在同一目录,完整写入并同步关闭后,再用 os.Rename 一次性切换,才能降低半文件和并发读取风险。225 收藏 -
从 label、原生约束和 aria-describedby 入手,把表单错误总览、字段状态与键盘焦点连起来,并说明客户端校验与服务端校验的边界。225 收藏 -
用一个长度前缀二进制报文示例,说明 Python memoryview 如何复用底层缓冲区、配合 struct.unpack_from 解析头部,并处理复制边界、可写性和生命周期。225 收藏 -
Go 的 flag.FlagSet.Visit 只遍历已经设置的命令行参数,适合生成启动日志和配置审计清单。本文用一个自定义 FlagSet 说明它与 VisitAll 的区别、排序规则和使用边界。225 收藏 -
用 Python statistics.quantiles 计算 P95/P99 时,关键不是只把 n 改成 100,还要根据样本语义选择 method,并在计算前清理 NaN、检查有效样本量。225 收藏 -
Python 3.15 增加私有方法的 pickle 支持,但恢复仍依赖模块、类定义与可序列化的实例状态。本文用私有绑定方法往返示例说明排查层次,并给出长期任务保存显式参数的设计取舍。225 收藏 -
梳理 CNCF Observability Summit 2026 官方议程中的 AI 与 MCP 可观测性方向,解释根因分析、模型决策追踪、事件响应自动化、多 GPU 工作负载和 OpenTelemetry 议题的关系与边界。225 收藏 -
Go net/url 的 URL.JoinPath 适合把已有 URL 与多个路径片段组合,并统一清理多余斜杠、. 和 ..。本文说明路径片段转义、查询参数保留和与 ResolveReference 的边界。225 收藏 -
Go http.Transport 的 DialTLSContext 会接管非代理 HTTPS 请求的 TLS 连接建立。本文给出带取消条件的自定义拨号写法,并梳理 TLSClientConfig、TLSHandshakeTimeout、ALPN 与 HTTP/2 的配置边界。225 收藏 -
Go 标准库 encoding/ascii85 可以把 ASCII85 文本还原为字节数据。本文从包装标记、Decode 返回值、NewDecoder 流式读取和异常输入四个方面说明怎样安全完成解码。225 收藏 -
systemd.slice 可以把多个服务放进同一棵 cgroup 子树,在父级统一设置 CPU、内存和任务数约束。本文用 batch.slice 示例说明创建、挂载、确认与回滚。225 收藏 -
Go log/slog.Group 可以把多个属性收拢到同一个日志组中。本文从请求日志场景说明 key、属性参数、空键和动态属性的处理方式,并比较 Group、GroupAttrs 与 WithGroup 的选择边界。225 收藏 -
解释 vmstat 首行和采样区间的不同口径,联合阅读 wa、b、bi/bo 与交换活动,再以设备延迟和业务时延判断 I/O 等待线索,避免把单个指标当成根因。225 收藏