Go语言技术文章
-
Go 1.27 的 encoding/json/v1 已由 v2 实现支撑。本文解释如何用 DefaultOptionsV1 建立兼容基线,再逐项切换字段匹配、omitempty、nil 容器和重复字段等语义,降低一次性迁移风险。172 收藏 -
Go 1.27 将 simd 与架构相关的 archsimd 作为实验性标准库能力带入发布版,但它不是所有业务代码的通用加速开关。本文从数据布局、目标架构和实验性 API 三个边界判断适用场景,并给出接入前的检查清单。332 收藏 -
Go 1.27 新增实验性的 simd 与 archsimd 包,但实验性 API、目标架构和可移植性都决定了它不能按普通标准库功能直接上线。本文按调用边界、构建条件和回退策略说明如何判断。173 收藏 -
Go 1.27 为 testing/synctest 增加 Sleep,把时间休眠与同步等待放到同一个测试语义里。本文拆开 Sleep、Wait、协作组和虚拟时间的边界,帮助你判断测试为何仍会卡住或提前通过。261 收藏 -
Go 1.27 让 go doc 支持 package@version 查询,但查不到符号不一定是版本不存在。本文拆解模块解析、包路径、符号名和版本选择的边界,给出一套不运行目标业务代码的排查清单。255 收藏 -
Go 1.27 的运行时针对小对象分配做了专项优化。本文围绕官方给出的 80B 阈值,说明它影响的对象范围、适合怎样判断收益,以及为什么不能把版本说明直接当成业务性能承诺。103 收藏 -
Go 1.27 扩展了泛型函数的类型推断场景。本文用函数类型赋值、类型转换和 channel send 三个边界,说明何时可以省略类型参数,以及旧代码迁移时如何核对。469 收藏 -
Go 1.27 为 compile、link、asm、cgo、cover、pack 等工具加入 response file(@file)参数解析。本文用一个构建参数过长的场景,说明文件格式、引号换行边界、适用工具和迁移核对点。409 收藏 -
Golang · Go教程 | 15小时前 | 依赖管理 · Go教程 · Go Modules · Go 1.27 · require go.mod 间接依赖 Go 1.27 go mod tidy 直接依赖
Go 1.27 会把 go.mod 中多个 require 块整理成直接依赖和间接依赖两组。本文说明 tidy 的边界、哪些依赖会被标记 indirect,以及升级后如何检查差异。103 收藏 -
Golang · Go教程 | 15小时前 | Go教程 · go fix · 代码迁移 · Go 1.27 · go fix modernizer Go 1.27 atomictypes embedlit slicesbackward unsafefuncs
Go 1.27 给 go fix 增加 atomictypes、embedlit、slicesbackward 和 unsafefuncs 四类 modernizer。本文从真实升级场景出发,说明如何按代码边界选择工具、审查改动并保留可回退的迁移证据。377 收藏 -
Go 1.27 将 uuid 纳入标准库后,生成、解析和数据库持久化该怎么分层?本文用一个订单请求标识场景,拆开 uuid API 的职责、字符串边界、二进制存储取舍与迁移检查点。372 收藏 -
Go 1.27 将 uuid 纳入标准库后,生成、解析和数据库持久化该怎么分层?本文用一个订单请求标识场景,拆开 uuid API 的职责、字符串边界、二进制存储取舍与迁移检查点。267 收藏 -
Golang · Go问答 | 16小时前 | 并发 · pprof · 故障排查 · Go问答 · Go 1.27 · Go goroutine泄漏 net/http/pprof goroutineleak runtime/pprof
Go 1.27 将 goroutineleak profile 作为正式能力,但空结果不等于没有泄漏。本文从 runtime/pprof 的可达性判定出发,核对阻塞原语、全局对象盲区与 net/http/pprof 入口。340 收藏 -
Golang · Go问答 | 16小时前 | 并发 · pprof · 故障排查 · Go问答 · Go 1.27 · Go goroutine泄漏 net/http/pprof goroutineleak runtime/pprof
Go 1.27 将 goroutineleak profile 作为正式能力,但它不是所有阻塞协程的万能扫描器。本文从 runtime/pprof 的可达性判定出发,拆开检测到的泄漏、全局对象造成的盲区,以及 net/http/pprof 入口的核对方式。248 收藏 -
Go 1.27 针对小对象的专用内存分配器可降低分配成本,但它不会替服务端回收仍被引用的对象。本文用请求缓冲、缓存切片和 goroutine 三个边界,说明如何判断分配变快与对象活得过久是两件事。463 收藏