Go语言技术文章
-
Golang · Go问答 | 1天前 | 标准库 · go · 性能排查 · 直方图 运行时指标 Go runtime/metrics Float64Histogram Buckets Counts
Go runtime/metrics 的 Float64Histogram 返回边界与计数两个切片,本文说明 len(Buckets)-1 的长度关系、相邻边界区间、KindBad、空样本、Inf 边界和累计指标差分的处理方式。255 收藏 -
Go 的 ctx.Err() 适合判断 Canceled 和 DeadlineExceeded,context.Cause(ctx) 则能在设置取消原因后保留更具体的根因。本文用父子 Context、主动取消和超时三个场景说明两者如何配合。255 收藏 -
Go 服务把模型的流式输出转发给浏览器时,客户端刷新或断网会让上游请求继续消耗连接和配额。本文用 Request.Context、HTTP 流读取和取消信号复盘这个故障,并给出可验证的清理与回滚方案。254 收藏 -
Redis ZINTERCARD 只返回多个 Sorted Set 的交集数量,适合在推荐、活动资格和筛选接口中先做交集基数判断。本文用 redis-cli 拆开 ZINTERCARD 与 ZINTER、LIMIT 的差别,说明空 key、集群同槽和“大于阈值”判断的边界。254 收藏 -
服务开启 PrivateTmp=yes 后,宿主机和服务进程看到的 /tmp 不再是同一个目录。本文用一个临时文件消失的现场,解释配置生效值、主进程和挂载信息的核对顺序,并给出共享临时文件与安全隔离的取舍。254 收藏 -
PHP 日期计算里,1 月 31 日加一个月并不一定得到 2 月最后一天。本文对比 DateTimeImmutable 的 modify、显式锚定月初再回退一天等写法,给出可验证的选择边界。254 收藏 -
用沙漠盐湖与风蚀拱门做一组适合锁屏的竖屏手机壁纸,拆解金蓝主图、锁屏时间区留白、中文与英文提示词,以及暮紫色彩变体的改词方法。254 收藏 -
PHP Generator 结束后进程内存没有回落,往往不是 yield 本身泄漏,而是迭代器仍被引用、foreach 引用残留或 finally 尚未完成。本文用可复现实验拆解判断顺序。254 收藏 -
Rust 团队宣布下一代 trait solver 在 nightly 默认启用,并计划在未来几个月稳定化。本文从兼容性试跑角度拆解 impl Trait、高阶类型关联类型、编译耗时和回退开关,帮助团队判断是否现在就把 nightly 放进验证矩阵。254 收藏 -
用 Go net/http 实现文件上传时,同时处理请求体大小、multipart 内存边界、原始文件名清洗、扩展名校验和服务端存储名。254 收藏 -
用杏色亚麻布面、窗边斜向光影和低对比留白制作一组适合锁屏与主屏的手机壁纸,提供完整中英文提示词、暖灰色主体下移变体,以及时间区和图标区的调整方法。254 收藏 -
Go 读取 PEM 证书时要先用 encoding/pem 解出 DER,再交给 crypto/x509 解析;本文给出读取 DNSNames、IPAddresses、NotAfter 和处理证书链的完整方法。254 收藏 -
Go 的 os.ReadFile 面向普通文件,传入目录时出现错误通常是路径类型不匹配。本文解释 *os.PathError 的含义,并给出目录读取与错误判断的正确写法。254 收藏 -
Go generate 不会自动在 go test 前运行,这是 Go 工具链有意保留的职责边界。本文从 //go:generate 指令、生成文件和测试入口的关系出发,说明如何用显式命令或 CI 脚本稳定编排生成与测试,并排查生成缺失、版本漂移和失败传播问题。254 收藏 -
Python 的 typing.Protocol 主要服务静态结构化类型检查;即使加上 @runtime_checkable,isinstance() 也只适合确认属性是否存在,不会验证方法签名、参数类型、返回类型和业务行为。本文用代码拆开两种检查的边界,并给出运行时补强方案。254 收藏