同一句 Class.forName 在 IDE 里跑得好好的,打成 fat jar 就报找不到类:看打包形态给的是哪个 application class loader,也看这条线程的 TCCL 是继承创建者的还是被 ThreadFactory 设过。
Posts for: #virtual-threads
Spring Boot 3.5 + Java 25 微服务里,Resilience4j 用在 HTTP、Redis、Kafka、DB 上的边界与最佳实践
结合最近五年的官方文档、工程资料与技术文章,整理 Spring Boot 3.5 + Java 25 微服务中 Resilience4j 在 HTTP、Redis、Kafka、DB 外部调用上的使用边界与实践建议。
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 客户端的身份传播、错误语义、可观测性和弹性。
Spring Boot 3.5 接 OpenTelemetry:尽量少写手动接入,把四个信号串起来(2026)
基于当前项目的一次接入记录,整理 Spring Boot 3.5 + Java 25 下接入 OpenTelemetry 的一些做法:尽量依赖自动配置、启用虚拟线程、结合 JFR 持续性能分析,并把 Traces / Metrics / Logs / Profiles 串起来。
Spring Boot 3.5 + Java 25 + Cloud Native 系列(三):BFF 聚合层
Shop Platform 的 BFF 聚合层用 Virtual Threads 做并发编排、Resilience4j 做四层防护,结账走 Saga 加优雅降级,游客不注册也能下单。
Spring Boot 3.5 + Java 25 + Cloud Native 系列(二):API Gateway 架构
API Gateway 是微服务的统一入口。这套仓库里它由 Spring Cloud Gateway Server MVC 加 Virtual Threads 承载,配 JWKS 校验的 JWT 过滤器链、Redis Lua 令牌桶限流和灰度路由,从 WebFlux 迁到 MVC 的取舍也在里面。