工程实践
已收录文章:36篇
-
大文件上传卡顿,通常不是把请求并发数调大就能解决。前端需要先把 File 切成固定大小的分片,用 SHA-256 或服务端校验确认每片,再用有限并发窗口上传,失败时只重试缺失分片。本文用浏览器原生 API 拆出一套可回查、可暂停、可恢复的实现边界。211 收藏
-
科技周边 · 业界新闻 | 1个月前 | devops · gitHub actions · 工程实践 · 持续集成 · CI/CD GitHub Actions Runner升级 自托管 runner 2.329.0GitHub Actions 正在恢复自托管 Runner 版本强制检查:2.329.0 是注册或重新注册的最低版本,已注册 Runner 还要在新版本发布后 30 天内完成更新。本文把官方变更拆成可执行的盘点、升级和回归检查。209 收藏
-
用 Go strings.Cut 解析 key=value 配置行,区分分隔符缺失、空值和多余分隔符,比较 strings.Split 的误判与基准结果,给出可直接落地的解析边界。207 收藏
-
Go 服务接入多模态接口时,图片预检应放在上传入口:先检查 MIME、文件头和字节上限,再决定是否送给模型;遇到格式不支持或服务超时则返回可解释的降级结果。202 收藏
-
RAG 系统最危险的不是检索慢,而是证据为空时模型仍然给出肯定答案。本文用相似度门槛、引用绑定和拒答回退,把无证据回答挡在业务接口之外。188 收藏
-
科技周边 · 业界新闻 | 1个月前 | 开发工具 · google · AI编程 · 工程实践 · AI编程 Google Antigravity 代理式开发 Google I/O 2026 开发验证Google I/O 2026 介绍了 Antigravity 这类面向行动的代理式开发平台。本文不把它当成自动交付按钮,而是从权限、任务拆分、结果验证和人工回退四个边界说明哪些工作适合交给代理,哪些仍要由工程师把关。182 收藏
-
给管理接口增加 IP 白名单时,字符串比较、IPv4 与 IPv6 混用、掩码边界都容易出错。本文使用 Go netip.ParsePrefix 和 Prefix.Contains 搭建可复用的 CIDR 白名单校验器,补齐配置检查、匹配顺序和失败回归用例。167 收藏
-
Redis 的 EXPIRE 作用在整个 key 上,不能直接给同一个 HASH 的每个 field 设置独立 TTL。本文从用户会话属性和临时状态的场景出发,对比拆 key、时间戳字段、ZSET 索引三种设计,并给出清理任务、并发边界和验收方法。162 收藏
-
用 Go embed.FS 嵌入模板时,直接把整个目录交给模板引擎容易扩大读取范围。本文从目录挂载、路径清理和上线验收三个环节,给出可复查的安全写法。161 收藏
-
Go 项目从 fmt.Println 走向结构化日志后,标准库 slog、zap 和 zerolog 都能完成 JSON 输出,但默认行为、扩展方式、性能与迁移成本并不一样。本文按项目约束比较三种方案,并给出可落地的选择规则。151 收藏
-
npm 从 2026 年 7 月起在发布时自动扫描新包,包可能正常上线、进入人工复核或被拦截;带有双用途安全能力的包还要声明 contentPolicy、附带 DISCLOSURE,并使用强制双因素认证的发布方式。文章把这项变化落到 CI 验收、延迟重试和申诉准备上。108 收藏
-
context.WithValue 适合传递贯穿请求链的元数据,不适合替代函数参数或承载业务配置。本文用键类型、取值失败和测试隔离三个边界,说明什么时候该用、什么时候该拆出显式参数。107 收藏