什么是 微服务(Microservices)?
微服务用分布式复杂性(许多必须相互协调的小代码库)换取内部复杂性(一个庞大代码库)的降低。当团队需要独立的节奏和清晰的归属时,这种取舍是值得的;而当一个分布式系统在缺乏运维成熟度的情况下被构建出来时,它则会带来惩罚。
相关术语
- API 契约(API Contract) — 一份对 API 的正式规范(OpenAPI、gRPC proto、GraphQL schema),生产方与消费方都同意遵守。
- 事件通道(Event Channel) — 一条具名、带类型的事件流(通常是 Kafka 主题或等价物),服务通过它进行异步发布与订阅。
- 服务网格(Service Mesh) — 一个专门用于处理服务间通信的基础设施层,通常通过 sidecar 代理实现。