为什么会到这里
微服务不是“更小的单体”,而是对组织边界、团队边界和系统边界的一次同步重构。
这篇前言先把几个核心问题讲清楚,避免把微服务当成“万能框架”。
企业为什么采用微服务?
常见动因包括:
- 复杂度分层:单体系统扩展到一定规模后,变更成本急剧上升
- 交付节奏加快:团队可以并行交付不同业务域
- 可用性与弹性:资源可以按服务粒度扩缩容
- 运维与治理分离:监控、链路追踪、鉴权、网关可按域逐步演进
康威定律(Melvin R. Conway,1968)提醒我们:组织结构会影响系统结构。
团队沟通方式决定服务边界,服务边界反过来约束协作效率。
从单体到微服务时要先澄清的事
- 业务边界是否清晰,是否可以稳定抽象成上下文
- 数据边界如何定义,是否有明确的归属权(ownership)
- 可观测性(监控、日志、链路追踪)是否能同步落地
- 发布流程与回滚能力是否能支撑多服务部署
先区分两个重点
面向对象更多是一种“建模思维”,微服务更偏“组织架构”与“运行模型”。
没有一致的建模,就算堆再多组件,系统依然会变得难以维护。
Spring Bean 和依赖治理
在微服务里,Spring 体系的 IoC/DI 仍是默认范式,但你需要在服务粒度、事务边界和客户端负载均衡之间做出清晰取舍。
把“技术能力”放到前面不一定对,先把“问题边界”定义清楚更重要。
DISCUSSION
讨论与反馈