Spring Petclinic Microservices 架构研究入口

这份 Petclinic 示例把熟悉的业务拆到了多个服务。可以与单体版本对照:一次查询多经过了哪些网络调用,配置与发现放在哪里,某个服务停掉后会怎样?这些变化比服务数量更值得研究。

版本与资料依据

  • last_verified: 2026-08-24
  • version_scope: 3858f9c630cf989bb6809a86edf47c2be78dc9f1
  • source_type: official-repository
  • stability: fast-moving

Research identity

Architecture / module map

关注 config/discovery/gateway 与 customers/visits/vets 等服务、observability 和 deployment assets。

Entry points / request-data flow

从 gateway 请求进入目标服务,追踪 discovery、远程调用、独立数据与 trace;再模拟一个服务不可用。

Patterns worth learning

把服务拆分带来的配置、路由、网络、观察和部署成本显式化。

Patterns not to copy blindly

示例演示的组件组合不代表所有系统默认架构,也不证明拆分收益。

Evidence status

  • CONFIRMED:仓库身份、commit 以及本文链接到的公开目录/入口;结论只覆盖该快照。
  • INFERENCE:模块责任和 flow 由静态目录、依赖与命名推断,需通过测试/运行 trace 复核。
  • UNKNOWN:给定 commit 的全部基础设施版本、云部署选项与生产 hardening。

阅读任务

  1. 在固定 commit 建立 module/dependency map;
  2. 从启动入口跟踪一条请求到持久化或外部系统;
  3. 选择一个成功测试和一个失败/安全测试;
  4. 记录 transaction、identity、error、observability 与 deployment boundary;
  5. 输出可定位文件/符号的笔记,不用 stars 代替技术证据。