Go语言技术文章
-
Redis Pipeline 不是批次越大越快。本文从 RTT、回复队列和单批延迟三个角度,给出可落地的批量窗口设计与 Go 实现。181 收藏 -
go vet 的 printf 检查会对照格式动词与实参数量、类型。本文用 Go 示例解释 %d、%s 等格式为什么触发诊断,以及如何修正而不是用 %v 掩盖问题。181 收藏 -
Python sqlite3 的 commit() 结束的是连接上的事务,不会自动关闭 Cursor。本文区分提交后的 fetch、重新 execute、写入游标和 autocommit 场景,给出安全的读取与确认方式。181 收藏 -
Go 处理大文件 multipart 上传时,不要用 io.ReadAll 把正文全部读入内存。本文用 multipart.Reader 逐个读取 Part,配合请求总量和单文件上限、临时文件改名与失败清理,完成一套可落地的流式保存写法。181 收藏 -
slices.Clip 会把切片容量收紧到长度,适合在函数边界阻止下游 append 写入隐藏尾部,但它不复制元素,也不保证释放仍被引用的大底层数组。本文对比 Clip、三索引切片与复制方案。181 收藏 -
Go 1.27 新增原生 uuid 包,能生成、解析 UUID 并支持 V4/V7。真正的迁移关键不在删掉 go get,而在核对旧包的 SQL、JSON、随机源和 API 依赖。181 收藏 -
Go 的 http.CookieJar 没有一个叫 Clear 的公开方法。要清理过期 Cookie,通常让 jar 按 Expires 和 MaxAge 过滤,登出时再发送匹配域名与路径的删除 Cookie;如果问题仍然存在,就从目标 URL、Domain 和 Path 三个维度核对。181 收藏 -
用一个订单、商品和批次的 JSON 示例,说明 MySQL JSON_TABLE 的 NESTED PATH 相对路径、空数组补 NULL、类型处理和重复行排查方法。181 收藏 -
用 MySQL 8.4 EXPLAIN ANALYZE 对齐 rows、actual rows 和 loops,判断估算偏差、统计信息与慢查询热点。181 收藏 -
讲清 Go encoding/gob 接口字段为什么要注册具体实现类型,并用收发示例说明值、指针、注册名和解码边界。181 收藏 -
ArrayDeque 明确禁止 null,不是实现遗漏,而是为了让 pollFirst 的 null 返回值稳定表示“队列为空”。本文从 addLast、pollFirst 和空值哨兵的关系出发,说明如何改造入队契约并验证边界。180 收藏 -
io.Copy 返回的 written 和 err 如何判断传输是否完整?本文从写入中断现场出发,拆解 EOF、写入错误、短写入与大小核对的边界。180 收藏 -
Golang · Go问答 | 3星期前 | 字符串 · 标准库 · go · 接口设计 · Go strings.CutPrefix Go strings.CutSuffix 协议头 字符串裁剪 零值返回
strings.CutPrefix 和 CutSuffix 都返回裁剪后的字符串与 found 布尔值,但空前缀、未匹配和完整匹配的结果不同。本文用协议头解析场景说明如何组合两个函数,避免把未匹配误判为空字符串。180 收藏 -
介绍蛋蛋分享库产品站、安卓工具箱定位、硬件监控与日常功能、版本兼容信息,并说明同名应用辨别、权限核对和安装安全边界。180 收藏 -
Go 1.27 的 runtime/secret 用 Do 包住机密计算时,新建 goroutine 会继承 secret mode,但它不是万能的内存清理器。本文拆开 Enabled、堆对象可达性、全局变量、平台支持和 GOEXPERIMENT=runtimesecret 的边界,帮助你判断这项实验能力能否放进密码学代码。180 收藏