Go语言技术文章
-
科技周边 · 业界新闻 | 6天前 | 云原生 · kubernetes · 云原生 Kubernetes restartPolicy Sidecar Containers initContainers Pod生命周期
Kubernetes 原生 Sidecar Containers 自 v1.33 起稳定。本文用一个最小 YAML 说明它为什么写在 initContainers、如何由 started 和探针推进启动、为什么终止时应用先停,以及 Job、资源计算和旧版本兼容边界。458 收藏 -
MCP 工具调用返回 input_required 时,如何保存不透明 requestState,处理 sampling、elicitation 或 roots 输入,并携带 inputResponses 重试原始调用。458 收藏 -
用 Maven toolchains 把项目需要的 JDK 从 Maven 运行环境中解耦:配置 toolchains.xml、声明匹配条件,并处理版本范围、vendor 和 CI 路径边界。458 收藏 -
使用 strings.Builder 构造长字符串时,先校验空输入,再按片段和分隔符的字节数估算容量并调用 Grow。本文用一个可复用示例说明错误返回、Len、Cap、Reset 与 Builder 生命周期边界。458 收藏 -
使用 bytes.Cut 解析首个分隔符时,关键不是看 before 或 after 是否为空,而是读取 found。本文用一组覆盖空字段、缺少分隔符、空输入和空分隔符的示例,说明如何保留错误边界并安全复用原始字节切片。458 收藏 -
MySQL NDB事件订阅和普通SQL查询都能访问NDB数据,但职责完全不同:SQL主动读取当前快照,NDB API事件订阅等待数据变化。本文对比触发方式、结果形态、调用关系、ndbinfo观察入口、恢复重建和SQL补数边界,给出按任务选型的清单。457 收藏 -
科技周边 · 业界新闻 | 3星期前 | AI编程 · 业界新闻 · 开发者工具 · GitHub Copilot Agent Host 本地沙箱 Local sandboxing MXC AI编程安全
GitHub 宣布 Copilot 本地沙箱正式可用,覆盖 Copilot CLI、Copilot app 和使用 Agent Host 的 VS Code 会话。本文按官方公告与文档拆解文件、网络、凭据和本地服务边界,并说明它与完整虚拟机、云沙箱的区别。457 收藏 -
Go regexp 的关键不是把每次匹配都换成缓存,而是区分固定模式和动态模式:固定表达式用 MustCompile 在初始化阶段复用,动态表达式用 Compile 返回错误,并给缓存设置输入和容量边界。457 收藏 -
Python 的 Popen.communicate 超时后,不能只捕获异常就结束。本文从输出管道、TimeoutExpired、kill 与再次 communicate 四个环节说明如何终止子进程、回收句柄,并保留已经产生的 stdout 和 stderr。457 收藏 -
Go bytes.Buffer.Bytes 返回的是未读区切片视图,不是独立副本。本文说明 Read、Write、Reset、Truncate 为什么会让旧数据变化,并给出稳定快照的复制写法。457 收藏 -
Go 1.27 的 bytes.CutLast 可以按最后一次分隔符拆分字节切片。本文说明它与 Cut、LastIndex 的区别、未找到和空分隔符边界,以及返回原切片视图时何时需要 Clone。457 收藏 -
Go encoding/json/v2 的 UnmarshalRead 面向单个顶层 JSON 值,不能直接当作多值流循环入口。本文用 jsontext.Decoder 与 UnmarshalDecode 逐个读取 Reader 中的 JSON 对象,并说明 io.EOF、数组封装和错误边界。457 收藏 -
Go gob 接口字段需要注册实际承载的具体类型。本文用完整消息往返示例说明两端注册、类型断言与名称冲突的排查方式。457 收藏 -
讲清 Go encoding/xml Encoder.Indent 的 prefix 与 indent 参数,演示结构体和 token 编码的可读 XML 输出,并说明 Flush、MarshalIndent 与混合文本边界。457 收藏 -
Go 的 opentype.NewFace 通过 FaceOptions.DPI 设置字体栅格化所用的每英寸点数。本文用一个最小示例说明 DPI、Size、Metrics 与绘制坐标的关系。457 收藏