收录了golang频道下的 38 篇文章
-
- Go bytes.Buffer 复用后数据为什么变了:Reset、Bytes 别名与拷贝边界
- Go 里把 bytes.Buffer.Bytes() 返回的切片保存下来,再复用 Buffer 写下一条消息,旧数据为什么会跟着变化?关键在于 Bytes 返回的是底层数组视图,不是独立副本。本文用消息编码场景说明 Reset、切片别名、Clone 拷贝和并发边界,给出可复查的安全写法。
- Golang· Go问答 | 2天前 | golang· 并发编程· bytes.Buffer· 内存管理· Go问答· bytes reset bytes.Buffer Go内存 切片别名 470浏览 收藏
-
- Go HTTP 服务怎么限制请求体:MaxBytesReader、超时与错误日志边界
- Go HTTP 服务接收上传、Webhook 或 JSON 请求时,单靠 ReadAll 很容易被异常大请求拖高内存。本文从请求体上限、读取超时、状态码和日志字段四个边界入手,给出一套可复查的 net/http 防护实现。
- Golang· Go教程 | 3天前 | golang· HTTP· 安全· Go教程· net/http· 接口防护· net/http 请求超时 MaxBytesReader Go HTTP 请求体限制 内存防护 173浏览 收藏
-
- Go HTTP 请求超时怎么处理:context.WithTimeout 的最小配方与常见坑
- Go 服务调用 HTTP、数据库或 RPC 时,超时不能只靠客户端等待。本文用 context.WithTimeout 给请求链路加上可传播的截止时间,并说明 cancel、父子 Context、select 和错误判断的常见坑。
- Golang· Go问答 | 3天前 | golang· HTTP· Context· 并发编程· context.Context context.WithTimeout Go HTTP 超时 397浏览 收藏
-
- Go HTTP 客户端为什么会卡在连接阶段:Transport 超时参数与复测指标
- Go 的 http.Client 超时太粗时,DNS、建立连接、TLS 握手和响应读取会混在同一个等待里。本文用一段可复现的慢请求场景拆开 Transport 参数,给出基线指标、改动方案和复测边界。
- Golang· Go问答 | 3天前 | golang· 超时· HTTP· Go问答· Transport· 网络排查· 连接超时 http.Transport Client.Timeout Go HTTP 客户端超时 TLS握手超时 112浏览 收藏
-
- Go 1.26.5 和 1.25.12 发布:crypto/tls、os 修复后,生产服务怎么判断升级窗口
- Go 官方发布 Go 1.26.5 与 Go 1.25.12,包含 crypto/tls 和 os 相关安全修复,以及编译器、运行时和 go 命令的缺陷修复。本文把这次小版本更新拆成影响面、升级判断、灰度检查和回退清单,帮助生产团队决定何时跟进。
- 科技周边· 业界新闻 | 4天前 | golang· 业界新闻· 版本升级· 安全修复· 生产运维· crypto/tls Go 1.26.5 Go 1.25.12 CVE-2026-39822 Go 版本升级 生产发布 324浏览 收藏
-
- Go HTTP 服务怎么设请求边界:请求体、超时和响应头的生产配置
- Go 的 http.Server 默认足够启动一个接口,却不会替业务限定大请求体、慢请求头和响应写入时间。本文用上传接口的真实边界,拆解 MaxBytesReader、ReadHeaderTimeout、WriteTimeout 与 MaxHeaderBytes 的职责,并给出可复查的生产配置。
- Golang· Go教程 | 5天前 | golang· HTTP· go· 服务端· 实战· 安全配置· http.server MaxBytesReader ReadHeaderTimeout Go HTTP 服务 请求体限制 响应头限制 455浏览 收藏
-
- Go 从 channel 读取到零值怎么办:用 ok 判断关闭状态,别把业务数据当结束信号
- Go 从 channel 接收时,关闭后的读取会立刻返回元素类型的零值。本文用订单事件场景说明如何用第二个返回值 ok 区分真实数据、关闭信号与业务结束条件,并给出可复查的写法。
- Golang· Go问答 | 5天前 | 并发· channel· golang· go· 排错· 并发 零值 Go channel ok 判断 关闭 channel 333浏览 收藏
-
- Go errgroup.SetLimit 怎么用:批量调用下游时限制并发、保留取消与错误
- 批量请求第三方接口时,errgroup.WithContext 配合 SetLimit 能把并发上限、首个错误返回和派生上下文取消放进同一段代码。这里给出可直接核对的最小写法、限额取值与几个容易卡住的边界。
- Golang· Go问答 | 6天前 | golang· errgroup· Context· 并发控制· Go问答· SetLimit· 错误传播 Go errgroup.SetLimit errgroup.WithContext Go 并发限制 批量调用 context 取消 467浏览 收藏
-
- Go 1.25 sync.WaitGroup.Go 怎么用:少写 Add/Done,但别忽略 panic 和复用边界
- Go 1.25 为 sync.WaitGroup 增加了 Go 方法,常见的 Add、go func、defer Done 三段式可以收成一次调用。它能减少计数配对遗漏,却不会替业务处理 panic、取消或结果收集。本文用批量写入场景解释最小写法、和旧写法的边界差异、版本兼容与复用 WaitGroup 时容易忽略的顺序。
- Golang· Go问答 | 6天前 | WaitGroup· golang· goroutine· 并发编程· Go问答· Go 1.25· Goroutine 并发 WaitGroup Go 1.25 sync.WaitGroup.Go Add Done 448浏览 收藏
-
- Go singleflight 怎么合并同一请求:缓存失效时别让 500 个请求一起回源
- 一个热门缓存键刚失效时,几百个请求可能同时回源,把数据库或下游接口推到峰值。Go 的 golang.org/x/sync/singleflight 能让同一个 key 的重叠调用只保留一趟加载,其余调用等待并复用结果。这里用一个商品读取场景说明放置位置、key 范围、多实例边界、错误传播和上线核对项。
- Golang· Go教程 | 1星期前 | golang· 缓存· singleflight· go· 高并发· 后端开发· Go 并发控制 缓存失效 请求合并 singleflight 回源 109浏览 收藏
查看更多
课程推荐
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让学生了解MySQL如何与客户端进行通信。此外,课程还将介绍如何优化MySQL的网络通信性能,包括连接池、网络压缩、SSL加密等高级技术。学生将通过实践项目,亲手
- 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 485次学习
-
- Golang深入理解GPM模型
- Golang深入理解GPM调度器模型及全场景分析,希望您看完这套视频有所收获;包括调度器的由来和分析、GMP模型简介、以及11个场景总结。
- 474次学习

