结合 Homelab 场景,整理 Anycast、分层缓存、请求合并等能力是怎样在背后帮助保护和减压源站的。
在 K3s 上部署 ZITADEL 实现 SSO 单点登录
在 K3s homelab 环境中部署 ZITADEL 作为 OIDC 身份提供者,结合 oauth2-proxy 和 Traefik Gateway API 的 ForwardAuth 机制,为所有自托管服务实现统一的 SSO 单点登录。
Homelab OTel 实践:从日志采集到双集群全链路追踪
双集群 K3s Homelab 补齐 OpenTelemetry traces 之后的样子:OTel Collector 收数据,跨集群写进 Tempo,Grafana 联动数据源,各语言 SDK 按同一套约定接入。
Homelab 备份体系:Kopia + CronJob + GitOps,再加一份灾难恢复 SOP
backup.meirong.dev 某天打不开之后,我给双集群 K3s Homelab 补了一套备份:数据先分类,Kopia 加 CronJob 定时跑,跨集群传备份,配置走 GitOps 管,灾难恢复另有一份 SOP。
用 Cloudflare Workers 和 KV 自托管短链服务 Sink,跑在 s.meirong.dev
开源短链服务 Sink 跑在 Cloudflare Workers 上,KV 存映射,Analytics Engine 出访客统计,再加一层 IP 限速,对外就是 s.meirong.dev。
Reactive Redis 与 Lettuce SharedLock 的连锁问题:make coverage 卡死排查
集成测试卡在 make coverage 阶段,第一眼看到的是连接池超时,真正让进程挂住的是 Reactive Redis 下 Lettuce SharedLock 的自旋,两层问题得分开修。
VS Code 跑 mirrord 撞上 WebSocket 403:从 IDE 报错追到 K8s impersonation 的鉴权链路
把 mirrord OSS 接入 VS Code 时撞上一个 WebSocket 403,最后追到 K8s impersonation 的两条 authorization 链路,记录了排查、原理和最小修复。
Spring Boot 3.5 + Java 25 + React:在 K8s 里跑通一套跨链路 OpenFeature flag
不用 Spring Cloud Config Server 也能把 feature flag 做出来:Gateway、微服务和 React 三个角色共用同一个 flagd,热加载方案选型和 OFREP 跨栈一致性都在 kind 环境里验证过。
Spring Boot 3.5 BFF 出站 HTTP 客户端:连接池、超时与 HTTP/2 实战
BFF 调用多个下游 microservice 时,连接池要不要按服务隔离?connectTimeout / readTimeout 怎么 per-service 配置?Spring Boot 3.5 内部服务用 h2c 要避哪些坑?把这三个常见问题理清楚。
shop-starter-http-client:Spring Boot 3.5 微服务 HTTP 客户端基础设施设计
Spring Boot 3.5 + Java 25 微服务下,记录我如何用一个共享 starter 统一出站 HTTP 客户端的身份传播、错误语义、可观测性和弹性。