Go语言技术文章
-
GitHub发布专用密钥检测分类器。本文区分现有告警升级、推送保护私有预览与评审新增检查,并说明开启、预算和授权边界。401 收藏 -
Go WebSocket 握手前应使用 websocket.Upgrader.CheckOrigin 精确校验 Origin。本文说明 Origin 与 Host 的边界、白名单写法、常见放行反例,以及来源校验与身份鉴权的区别。401 收藏 -
context.AfterFunc 的 stop 函数只负责解除回调关联,并不等待回调结束。本文用取消清理场景说明 true、false 的含义,以及如何等待已启动回调完成。401 收藏 -
Go Rows 关闭后 Next 返回 false,而 Err 不一定因主动关闭变成非 nil。用假设排障场景解释返回 Rows 前 defer Close 的所有权错误,并给出消费与关闭责任统一的函数写法。401 收藏 -
Go SQL事务可采用显式提交、延迟回滚兜底结构。本文以库存预留代码说明中间错误返回、ErrTxDone、清理异常与提交失败的处理,并解释事务上下文和盲目重试的风险。401 收藏 -
Java 虚拟线程的阻塞等待不等于长期占用载体。结合 JDK 版本区分卸载、固定限制与资源池竞争,并用同负载下的线程、连接等待、延迟和错误率判断改动,避免把承载优化当成容量扩张。401 收藏 -
Go 精简容器中 time.LoadLocation 失败,通常是镜像缺少 IANA 时区数据库。本文按查找顺序说明安装 tzdata 与导入 time/tzdata 两种修复方案,并给出容器上线复查清单。401 收藏 -
页面卸载时,fetch 加上 keepalive 可以让小型收尾请求继续发送,但它受未完成请求体总预算约束,不能替代大文件上传或可靠队列。本文给出 pagehide、UTF-8 字节计算、幂等事件 ID 和 sendBeacon 降级写法。401 收藏 -
用 Go 标准库 container/list 和 map 实现一个可运行的 LRU 缓存,说明访问命中、队首移动、更新和队尾淘汰之间的关系,并补充容量与并发边界。401 收藏 -
跨省换工作后,企业职工基本养老保险关系通常可向新参保地申请转移接续。本文说明线上入口、线下办理、进度查询和省内流动、重复缴费、已领取待遇等常见边界。401 收藏 -
用 AbortSignal.timeout 给 fetch 请求设置固定时限,并区分 TimeoutError、AbortError、HTTP 错误和网络错误;同时说明 AbortSignal.any 的组合方式与兼容边界。401 收藏 -
交叉类型(Intersection Types)的作用,说白了就是把多个类型“叠加”到一起,组合成一个全新的类型,而这个新类型会同时具备所有成员类型中的内容。 这类似于面向对象中的多重继承,让一个类型可以拥有多个类型的特性。 交叉类型工作原理 类型 A (Person) name: string a400 收藏 -
用 Linux ss -Htnp 从监听 socket、TCP 状态和进程归属三条线核对端口占用,并说明权限不足时如何判断结果是否完整。400 收藏 -
用户输入被拼进 Go 正则表达式时,regexp.QuoteMeta 可以把元字符变成字面量。本文用搜索过滤场景拆开转义、拼接、匹配和空输入边界。400 收藏 -
从 Logger、Handler、WithAttrs 和 WithGroup 的调用关系入手,解释结构化日志字段如何进入 Record,以及自定义 Handler 面对并发写入时应该承担哪些边界。400 收藏