OpenFeature 加 flagd 的全链路场景下,一个前后端共享语义的新 flag 要灰度,先升级后端还是先升级前端?两条路径的风险对比下来,先让 backend 兼容、再升级 frontend 通常少踩一些坑。
Spring Boot 3.5 + Java 25 微服务里,Resilience4j 用在 HTTP、Redis、Kafka、DB 上的边界与最佳实践
结合最近五年的官方文档、工程资料与技术文章,整理 Spring Boot 3.5 + Java 25 微服务中 Resilience4j 在 HTTP、Redis、Kafka、DB 外部调用上的使用边界与实践建议。
软件供应链最小基线:SBOM + cosign 镜像签名
软件供应链的最小基线按问答展开:CycloneDX 生成 SBOM、cosign keyless 给镜像签名、再把 SBOM 作为 attestation 绑到镜像上,为什么这么做和绕不开的 tradeoff 一并回答。
Claude Code 为什么会拒绝我?harness 与 vibe coding 时代的工程边界
从一次被 Claude Code 拒绝的 git push 出发,结合最近几个月能查到的官方文档、CVE、论文与失败案例,整理 vibe coding 时代为什么需要工程边界、Claude Code 的 harness 如何分层,以及其他 AI 编码 agent 的不同取舍。
九个瓶颈里只有三个在数据库上:OceanBase / TiDB 容量压测
这轮 OceanBase 与 TiDB 容量压测的口径先定清楚,九层瓶颈逐层定位下来只有三个真落在数据库上,同一个运行区间还要按两种计费模型各算一遍账。
Liquibase (XML) 在微服务里的 14 个问题:schema 归属、changeSet ID、大表 DDL 与回滚
围绕真实项目里常见的 Liquibase(XML)反模式,按问题整理我目前更倾向采用的做法:从 changelog 怎么组织、changeSet 怎么命名,到大表 DDL、K8s 下的锁和回滚,最后是 CI 里怎么把这些挡住。
REST API 版本管理:四种常见策略、Spring Boot 4 原生支持与一些陷阱
四种常见的 REST API 版本管理策略各有代价,Spring Boot 4 的原生支持进来之后,跟历史实现方案怎么取舍、哪些坑容易踩到,得重新对一遍。
ADR 与 Service Catalog:我在架构治理里反复用到的两类文档
微服务规模增大后我开始补的两类结构化文档,问答体:ADR 记下为什么这样选,catalog-info.yaml 记下这是什么、归谁、依赖什么。
shop-starter-http-client 接入:跑通第一个 @HttpExchange 客户端
Step-by-step 指南,按这套步骤通常可以在 Spring Boot 3.5 BFF 工程里跑起第一个 @HttpExchange 出站客户端。
Homelab 消息通知:Alertmanager 通过 Gotify 推送告警
在 Homelab K3s 集群中,通过部署 alertmanager_gotify_bridge 将 Prometheus Alertmanager 的告警推送到 Gotify,实现自托管消息通知。记录从 Vault 存储 Token、ESO 同步 Secret、到 Alertmanager 路由配置的完整步骤。