Go语言技术文章
-
errors.Join 会丢弃 nil 参数;只有所有输入都是 nil 时才返回 nil。本文用批量校验示例说明如何判断聚合结果,并用 errors.Is 识别具体错误。364 收藏 -
Java 25+ 中用 ScopedValue 传递只读请求上下文,重点比较它与 ThreadLocal 的生命周期、可见性、嵌套绑定和结构化子任务继承边界。364 收藏 -
Go pprof profile 为空时,先区分采样窗口、目标负载、阻塞与互斥采样开关,以及 StopCPUProfile 和 Writer 写入边界,再选择正确的修复动作。364 收藏 -
Go 类型推断会从泛型函数的普通实参、赋值上下文和类型约束中补全类型参数。本文用命名切片、无类型常量和部分显式参数说明推断路径,并整理泛型类型不能省略参数的边界。364 收藏 -
Go net.Dialer 的 Timeout 是相对拨号开始的最长时长,Deadline 是绝对截止时刻;二者和 Context 截止时间取最早值。本文用可复用的 DialContext 示例说明设置方式、多地址解析和超时判断。364 收藏 -
OpenTelemetry 从 CNCF 毕业后,项目成熟度信号与三信号统一仍是两件事。本文从 service.name、deployment.environment、trace_id 和 Collector 管道出发,给出把 Trace、Metrics、Logs 串成可复查证据链的设计与验收方法。364 收藏 -
Redis HyperLogLog 用固定空间估算去重数量,本文用 PFADD、PFCOUNT 和 PFMERGE 说明误差、分片合并及适用边界。364 收藏 -
用同一条 SQL 固定更新前后口径,结合 EXPLAIN、SHOW INDEX 和 COLUMN_STATISTICS 判断 ANALYZE TABLE 是否改变了优化器计划,并给出统计信息异常时的回退思路。364 收藏 -
用 Go iter.Seq 把回调式遍历接入 for range,讲清 yield 提前停止、资源清理、iter.Pull 和单次迭代的工程边界。364 收藏 -
从路径段与查询参数的组件边界出发,解释 Go net/url 中加号、空格、PathEscape、QueryEscape 以及两组 Unescape 的差异,并给出避免二次编码的排查清单。364 收藏 -
LLM输出能解析不代表字段完整。本文从JSON Schema最小契约、响应状态归一化、字段缺失有限重试和上线观测四个方面,给出结构化输出的处理方案。364 收藏 -
米坛社区同时提供网页版、知识库与 Android 客户端相关入口。本文按公开产品站信息说明两种访问方式的适用场景、客户端最低系统版本和下载安全边界。364 收藏 -
errors.Unwrap 只调用 Unwrap() error,因此不会拆开 errors.Join 产生的 Unwrap() []error。本文说明单链与错误树的区别,以及 Is、As 和显式枚举的正确用法。364 收藏 -
使用 Go encoding/json 的 Decoder.Token、More 与 Decode 按层读取嵌套 JSON,逐条处理目标数组,并安全跳过未知结构。364 收藏 -
文章 · linux | 3星期前 | 定时任务 · Linux · 运维 · Cron OnCalendar Persistent systemd timer systemd-analyze calendar
把 cron 迁移为 systemd timer 时,应以同名 service 承载命令,以 OnCalendar 定义日历时间,再用 Persistent、AccuracySec 和 RandomizedDelaySec 控制补跑、精度与错峰。本文给出可直接落地的 unit、表达式校验及排查方法。364 收藏