Spring Boot 3.5 + Java 25 微服务下,记录我如何用一个共享 starter 统一出站 HTTP 客户端的身份传播、错误语义、可观测性和弹性。
Posts for: #spring-boot
从现有项目抽象出 Maven Archetype
从现有 Spring Boot 项目抽象出 Maven Archetype 的一段流程记录,包括 Velocity 转义、.gitignore 被过滤、post-generate 钩子、git-commit-id 插件等真实踩坑点。
Spring Boot 3.5 下的数据库设置:HikariCP 调优、N+1 防护、事务管理与 Testcontainers 集成
数据库通常是微服务里比较关键的依赖之一,这套仓库在它身上花的心思集中在 HikariCP 连接池调优、open-in-view: false、@EntityGraph 防 N+1、@Transactional 传播行为、Testcontainers @ServiceConnection 和 Flyway 进阶实践。
Spring Boot 3.5 下的 Redis 用法:Lettuce 连接池、Redisson 锁、Bloom Filter 与 Lua 加载
Redis 在 Shop Platform 里同时承担缓存、限流、分布式锁、Bloom Filter 和 Lua 原子操作,对应要配的是 Lettuce 连接池、序列化策略、Redisson 锁、Bloom Filter 自动配置和 Lua 脚本加载方式。
Spring Boot 3.5 下的 Kafka 配置:消费者并发模型、acks/retries、序列化选型与 DLQ
Spring Boot 3.5 加 Spring Kafka 3.3 把 Kafka 该配的基本都配得起来,这套仓库落地的是消费者并发模型、生产者的 acks 与 retries、序列化选型、offset 提交策略、死信处理和 @RetryableTopic。
Spring Boot 应用的 Metrics 埋点:自动埋点覆盖了什么,什么时候要自己埋(2026)
以 Spring Boot 3.5 + Micrometer 为基础,整理一次应用层 Metrics 埋点实践:自动埋点覆盖范围、@Observed 注解用法、高低基数字段设计、手动 Observation API,以及与 Prometheus 和 OTel 的关系。
Spring Boot 微服务中的 Feature Toggle 实战:OpenFeature Property Provider + K8s ConfigMap 热更新
开关语义和供应商解耦之后,剩下的问题是 flag 从哪儿读、改完怎么不重启就生效。shop 项目这一版把这两件事分别交给 Spring Config 和 Configuration Watcher。
Spring Boot 3.5 接 OpenTelemetry:尽量少写手动接入,把四个信号串起来(2026)
基于当前项目的一次接入记录,整理 Spring Boot 3.5 + Java 25 下接入 OpenTelemetry 的一些做法:尽量依赖自动配置、启用虚拟线程、结合 JFR 持续性能分析,并把 Traces / Metrics / Logs / Profiles 串起来。
Java 25 on Kubernetes:默认配置未必适合容器
Java 25 跑在 Kubernetes 上,默认堆只用了 25%,CPU 节流的影响也比预期大,这几组实验数据和值得优先验证的配置项放在一起。
用 mirrord 把本地进程接入 K8s 集群:从 Demo 到真实调试实践
通过一个 Spring Boot + MySQL + kind 的 Demo,记录如何用 mirrord 让本地进程「假装」自己是 K8s 里的 Pod,无需重新打镜像就能接入集群资源进行调试。