Go语言技术文章
-
用 Go net/http 提供静态文件时,http.FileServer 不会替你决定 Cache-Control。本文通过 handler 包装器区分带 hash 的资源和 HTML 入口,讲清缓存头与条件请求的职责边界。145 收藏 -
Go 1.27正式提供encoding/json/v2,但它并不是把旧包强制替换掉。本文从无效UTF-8、重复键、nil切片和结构化标签四个边界出发,说明怎样用DefaultOptionsV1分阶段迁移,以及哪些项目应该先保持原有语义。145 收藏 -
Go 生成 GIF 时,局部帧叠加和 Disposal 选择不当会让旧像素残留。本文解释 DisposalNone、DisposalBackground、DisposalPrevious 的区别,并给出编码与排查方法。145 收藏 -
Go csv.Reader 的 FieldsPerRecord 为零时会由首条记录确定后续列数。本文比较零值、正数和负数,解释表头、空字段与 ErrFieldCount,并给出读取策略迁移示例。145 收藏 -
同时读取 Example.Output 与 EmptyOutput,区分显式空输出、未声明输出和非空预期文本。通过带注释的 AST 静态抽取示例,说明记录字段和运行证据的边界。145 收藏 -
Linux 的 mount --rbind 会把源目录树及其内部的子挂载一起映射到新位置。本文区分 --bind 与 --rbind,说明 rslave、rprivate、findmnt、mountinfo 和递归卸载的配合方式。145 收藏 -
FileSystemDirectoryHandle.resolve 用两个文件系统句柄判断目录归属,返回相对名称数组或 null,而不是绝对路径。本文用导出清单场景说明数组拼接、目录外拒绝、安全上下文和常见误区。145 收藏 -
database/sql 查询提前返回时,如果 Rows 没有关闭,连接可能持续处于使用中。本文用 MaxOpenConns=1 的最小测试说明阻塞现象,并给出安全读取与排查方法。145 收藏 -
Hugging Face Transformers 的 generate 返回序列可能同时包含输入提示词和新生成 token。本文按 decoder-only、encoder-decoder、批量 padding 三种边界说明如何只解码新增内容,并解释 max_new_tokens、return_dict_in_generate 与 pipeline 输出的区别。145 收藏 -
CNCF 2026 年云原生报告显示,Kubernetes 生产使用已较普及,但 AI 模型持续部署仍处于早期。本文按数据管道、训练实验和生产服务拆解推理基础设施趋势。144 收藏 -
介绍Go fs.WalkDir遍历embed.FS并读取正文的方法,通过完整示例说明子树路径、回调错误和SkipDir,分析资源内嵌的部署收益与更新边界。144 收藏 -
Kubernetes Event 本身不是稳定的发布审计日志。本文用发布批次标签、Pod 模板注解、k8sobjectsreceiver 和 k8sattributesprocessor,把事件与 OpenTelemetry 遥测按同一批次身份关联,并说明事件保留期、重复和语义变化的边界。144 收藏 -
Go time.After 放在 select 循环里会在每轮创建新的 Timer。本文解释持续就绪分支下的定时器积压、Go 1.23 的垃圾回收变化,以及如何用一个可复用的 time.Timer 配合 Stop、排空和 Reset 降低分配压力。143 收藏 -
Go io.ReaderAt 的短读不能简单当成失败或成功。本文说明如何保留 n 个有效字节,区分正常尾部 EOF、固定块中途 ErrUnexpectedEOF 与底层 I/O 错误,并封装安全的定长读取函数。143 收藏 -
光伏项目并网后,巡检资料不能只保存几张现场照片。本文按项目基线、设备巡检、故障单、运行数据和复盘归档五个层次,整理一套可追溯的资料闭环方法。143 收藏