Go语言技术文章
-
Golang · Go问答 | 1个月前 | golang · errgroup · Context · 并发控制 · Go问答 · SetLimit · 错误传播 Go errgroup.SetLimit errgroup.WithContext Go 并发限制 批量调用 context 取消
批量请求第三方接口时,errgroup.WithContext 配合 SetLimit 能把并发上限、首个错误返回和派生上下文取消放进同一段代码。这里给出可直接核对的最小写法、限额取值与几个容易卡住的边界。467 收藏 -
Go 服务的正则匹配突然占满 CPU,常见原因不是规则本身,而是每次请求都重新编译 regexp。本文用基线、pprof 和缓存编译结果的对比,说明如何定位并控制这类热路径开销。467 收藏 -
Golang · Go问答 | 1个月前 | go · 性能 · kubernetes · 运行时 · 容器化 · Kubernetes GOMAXPROCS Go问答 Go 1.25 SetDefaultGOMAXPROCS 容器CPU配额
同一份 Go 服务部署到 Kubernetes 后,节点有 16 个核,Pod 却只限 2 个核,手动设置的 GOMAXPROCS 还可能在扩缩容后失真。Go 1.25 已让运行时默认读取容器 CPU 配额,本文用一个可复现的小程序说明如何检查旧配置、恢复运行时默认值,并给出上线前的边界清单。467 收藏 -
Redis 开启 AOF 后,后台重写可能让延迟突然抖高。本文用 INFO persistence、内存和磁盘指标拆开判断 fork、写时复制、AOF 增量与磁盘瓶颈,并给出安全验收与回退方法。467 收藏 -
Slack切换工作区时登录不上怎么办?本文核对浏览器回退、客户端更新、设备支持范围和账号安全路径。467 收藏 -
围绕雨后山城电车站这一原创手机壁纸主题,拆解蓝灰雾气、暖色车灯、锁屏时间区留白与竖屏构图,并提供可复用的中英文提示词、变体和改词方法。467 收藏 -
WebSocket 断线重连最容易踩中旧连接复活:旧 socket 的 close 回调晚到,可能覆盖新连接状态。本文从 readyState、连接代次、指数退避和手动关闭四个边界出发,给出可验证的浏览器实现。467 收藏 -
一组适合锁屏和桌面的雨后玻璃花房手机壁纸提示词,包含主壁纸、明显不同的冷色变体、完整中英文提示词和可直接替换的改词方法。467 收藏 -
从文件发送到 TCP 连接的实际路径出发,比较 Linux sendfile 与 splice 的适用边界,并用 strace 和返回值验收零拷贝改造是否真的生效。467 收藏 -
time.Ticker.Stop 只负责停止后续计时,不承诺把已经进入通道的值清空。本文从定时刷新任务的退出现场出发,拆解停止语义、旧值竞态、goroutine 泄漏与可验证的退出写法。467 收藏 -
Go HTTP 客户端偶发变慢时,只看总耗时很难判断问题在 DNS、建连、TLS 还是服务端首字节。本文用 net/http/httptrace 的 ClientTrace 串起关键回调,区分连接复用与新建连接,并给出可落地的耗时记录和排查边界。467 收藏 -
Go 1.24 引入的 runtime.AddCleanup 适合为包装资源安排兜底清理,但回调不是确定时钟,也不能替代显式 Close。本文用文件句柄包装场景说明 AddCleanup、KeepAlive 和 Cleanup.Stop 的真实边界。467 收藏 -
encoding/binary.Append 会把固定大小数据追加到已有字节切片,并返回可能扩容后的新切片。正确承接返回值,才能同时处理底层数组复用、容量变化和不支持类型的错误。467 收藏 -
Python 动态调用函数时,inspect.signature、Signature.bind 和 BoundArguments.apply_defaults 可以把参数匹配从运行时报错提前到调用前校验。本文用一个命令分发场景拆开位置参数、关键字参数、缺省值和可变参数的边界。467 收藏 -
用 Python sqlite3.Connection.set_authorizer 在 SQL 进入 SQLite 编译阶段前拦截动作,理解 SQLITE_OK、SQLITE_DENY、SQLITE_IGNORE 的差异,并划清审计与安全边界。467 收藏