Go语言技术文章
-
CloseIdleConnections 只处理 Transport 中已完成请求、当前处于 keep-alive 空闲状态的连接,不会中断正在使用的连接。本文用可复现代码拆开它与 MaxIdleConnsPerHost、IdleConnTimeout 的边界。428 收藏 -
Java 24 的 Gatherers.fold 适合没有合并器、且结果依赖输入顺序的聚合。本文用分段账单摘要拆解状态边界、空流结果与并行流验收,避免把 fold 当成可随意并行的 reduce。233 收藏 -
目录扫描不一定要为每个文件再做一次 Stat。本文从 os.ReadDir 返回的 DirEntry 出发,区分 Type 与 Info 的职责,并给出按目录项类型筛选、必要时再调用 entry.Info 的可复现写法。414 收藏 -
用 archive/tar.Reader 顺序读取 tar 包时,目录项不应被当成文件内容处理。本文从 Reader.Next 的自动丢弃规则出发,给出跳过目录、限制目标路径、区分 io.EOF 与 ErrInsecurePath 的可验证写法。293 收藏 -
Go 1.24 的 os.OpenInRoot 如何安全打开不可信文件名?本文用目录逃逸、符号链接和错误分支说明 Root 的边界,并给出可核对的最小代码。381 收藏 -
用一个可复现的 PHP Fiber 示例排查 start、suspend、resume 和 getReturn 的状态边界,避免重复恢复与未完成读取。149 收藏 -
json.Decoder 默认会忽略结构体中不存在的 JSON 字段。本文用兼容升级、管理接口和边界校验三个场景说明 DisallowUnknownFields 什么时候适合开启,以及如何识别 unknown field 错误。278 收藏 -
科技周边 · 业界新闻 | 6天前 | ai · robots.txt · 开发者工具 · Cloudflare · 网站安全 · AI爬虫 robots.txt Cloudflare Bot Preference Sync Agent bot 网站访问策略
Cloudflare 在 2026 年 8 月发布 Bot Preference Sync,用一套偏好设置同步 robots.txt 与 Search、Agent、Training 三类 AI bot 策略。它适合减少手工维护,但上线前仍要核对公开 robots.txt、真实请求和例外路径。299 收藏 -
os.ReadFile 适合一次性读取小文件,但面对超大配置会把完整内容装入 []byte。本文比较 os.ReadFile、os.Open 与 bufio.Reader 的使用边界,给出按行分块解析和可复查的内存控制方法。307 收藏 -
Go 的 template.FuncMap 适合注册纯函数,但闭包若持有可变共享状态,模板并发执行时仍会产生竞态。本文从注册、解析、执行三个边界拆解风险,并给出可验证的安全写法。423 收藏 -
runtime/metrics.Read 只负责把运行时指标写入 Sample 的 Value。本文用动态发现、类型判断和采样快照说明如何稳定读取,避免把指标描述、样本槽位和 Value 类型混为一谈。418 收藏 -
科技周边 · 人工智能 | 6天前 | websocket · 人工智能 · gemini · 实时语音 · Gemini Live API session resumption SessionResumptionUpdate GoAway
Gemini Live API 的 WebSocket 连接会周期性结束,单纯重连会丢掉上下文。本文用 session resumption 保存最新恢复句柄,再结合 GoAway.timeLeft、generationComplete 和上下文压缩处理重连时机与数据边界。436 收藏 -
Golang · Go问答 | 6天前 | golang · HTTP · Context · net/http · Go问答 · 请求复制 · Http请求 net/http context header Go问答 Request.Clone
net/http.Request.Clone 会复制请求的大部分结构和 Header,但不会复制 Body 的底层读取位置。本文用重试与多下游请求场景拆开 Body、Header、URL 和 Context 的独立性边界。496 收藏 -
Go 1.27 新增标准库 uuid 包。本文用 NewV7、Parse、Compare 和 String 拆开时间排序、格式兼容、非法输入与零值边界,给出可运行的请求标识示例。251 收藏 -
Go 1.22 改变了 range 循环变量的作用域。本文用 goroutine 闭包示例说明旧写法为何会读到同一个值、go.mod 如何决定语义,以及升级后怎样验证和清理多余代码。391 收藏