从现有 Spring Boot 项目抽象出 Maven Archetype 的一段流程记录,包括 Velocity 转义、.gitignore 被过滤、post-generate 钩子、git-commit-id 插件等真实踩坑点。
Posts for: #spring-boot
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 热更新
微服务里的 Feature Toggle 走 OpenFeature SDK,开关语义与供应商解耦。shop 项目这条链路是 Property Provider 从 Spring Config 读 flag,K8s ConfigMap 挂载加 Configuration Watcher 触发热更新,再从静态 YAML 往生产级动态管理演进。
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,无需重新打镜像就能接入集群资源进行调试。
本地 Kind K8s 开发环境:问题驱动的工具选择与 Tradeoff
本地用 Kind 跑 Spring Boot 微服务,工具按问题挑:镜像循环慢就上模块级增量构建,改完代码快速验证交给 Tilt,IDE 打断点用 mirrord,GitOps 演练单独拉一个 ArgoCD。