Go语言技术文章
-
文章 · java教程 | 1星期前 | Stream · Java教程 · 性能边界 · mapMulti · flatMap · Java mapMulti Stream flatMap Java Stream 条件展开 Java 16
Java Stream 的 mapMulti 适合把一个元素展开为零个或少量结果,尤其适用于带条件分支的解析和提取。本文用订单标签解析示例说明它与 flatMap 的选择、泛型推断、Consumer 生命周期和验收边界。250 收藏 -
文章 · linux | 1星期前 | Linux · 服务管理 · 安全加固 · 服务部署 · 文件权限 · Linux 迁移 服务单元 DynamicUser StateDirectory 服务降权 持久目录
把 Linux 服务改成 DynamicUser=yes 后,原来写在 /var/lib 下的目录很容易因为属主和目录创建时机出问题。本文用 StateDirectory=cache-worker 迁移一个缓存 worker,解释目录权限、旧数据迁移、重启复测和回滚边界。462 收藏 -
Java Optional.orElse 会在参数求值阶段执行备用方法,即使 Optional 已经有值也无法跳过副作用。本文用订单缓存回源场景对比 orElse 与 orElseGet,说明调用时机、性能成本、空值边界和可验证的测试写法。150 收藏 -
后台权限代码最怕把未知角色当成普通用户继续执行。本文用 PHP 8.2 枚举定义角色和动作,通过显式策略映射、拒绝默认分支与审计日志,把权限判断做成可测试、可追踪的边界。495 收藏 -
PHP-FPM 文件上传接口出现磁盘告警时,先从 upload_tmp_dir、is_uploaded_file、move_uploaded_file 和异常回收入手,建立可观测、可回滚的临时文件处理流程。357 收藏 -
文章 · linux | 1星期前 | Linux · 故障排查 · 服务管理 · 进程生命周期 · Linux 服务状态 active exited Type=oneshot RemainAfterExit 常驻进程
服务状态显示 active (exited) 不一定代表进程仍在运行。本文拆解 oneshot 服务的状态含义,给出常驻服务与一次性任务的判断、配置改法和复测命令。331 收藏 -
前端上线后用户仍看到旧页面,通常不是重新部署失败,而是 HTML、静态资源缓存和 Service Worker 的更新边界没有分开。本文用一套可回滚的发布检查,讲清 Cache-Control、文件指纹、CDN 缓存刷新和浏览器验证如何配合。267 收藏 -
Java CompletableFuture 里的 exceptionally、handle 和 whenComplete 都能接住异常,但职责并不相同。本文用一条可运行的订单校验流水线说明三者的返回值、异常传播、旁路记录和质量门禁边界,帮助你把失败处理放在正确的位置。125 收藏 -
支付渠道类型一多,enum 加 switch 容易把新增渠道遗漏在多个分支里。本文用 Java sealed interface 建模支付路由,和 enum + switch 做边界对比,给出兼容扩展、测试覆盖和上线选择建议。242 收藏 -
Postman Mock Server 返回了错误的 Example,通常不是接口地址写错,而是请求方法、路径变量、请求体匹配和响应选择头没有对齐。本文从集合、Example、环境变量到匹配核对,走完一条可复现的界面操作路径。169 收藏 -
批量导入 CSV 时,解析、校验和结果展示最好拆成可观测的前端流水线:主线程只负责触发与通知,Web Worker 分片处理数据,队列状态和失败原因由明确的质量门禁收口。441 收藏 -
文章 · java教程 | 1星期前 | 故障排查 · Java教程 · JFR · 虚拟线程 · 并发性能 · synchronized reentrantlock 虚拟线程 JFR Java 21 VirtualThreadPinned
Java 21 虚拟线程并不是开得越多越快。只要把慢 I/O 放进 synchronized,虚拟线程就可能 pin 住承载它的平台线程,吞吐随并发上升反而下降。本文用 JFR 和 tracePinnedThreads 还原定位过程,并给出锁替换与版本边界。343 收藏 -
文章 · python教程 | 1星期前 | protocol · Python教程 · 运行时 · typing · 类型检查 · Python 静态类型 typing.Protocol runtime_checkable 结构化类型 isinstance
Python 的 Protocol 主要服务于静态类型检查,runtime_checkable 只把接口成员是否存在带到 isinstance;它不会验证参数、返回值或属性类型。本文用可运行示例拆开两条边界,并给出适合生产代码的检查方式。295 收藏 -
同一个后台系统开两个标签页时,登录态、筛选条件或草稿状态很容易互相覆盖。本文用 BroadcastChannel 搭一个可验证的同步层,处理消息去重、版本冲突、页面关闭和不支持时的降级边界。333 收藏 -
PHP 8.5 新增 #[NoDiscard] 属性,可以在调用方忽略关键返回值时给出警告。本文从一个被吞掉的校验结果切入,说明属性的适用边界、(void) 豁免方式和升级到 PHP 8.5 前后的验证清单。390 收藏