什么是微服务?
1、微服务的权威定义
微服务架构(Microservice Architecture)是一种将单一应用程序系统性分解为一组小型、自治、围绕业务能力构建的服务集合的架构风格。
每个服务(即单一微服务):
- 运行于独立进程(或隔离环境),具备独立部署、弹性伸缩、故障隔离能力;
- 通过轻量级通信机制(通常为HTTP/REST、gRPC或异步消息)交互;
- 拥有专属数据存储(数据自治原则),通过明确定义的接口暴露业务能力;
- 由小型跨职能团队全生命周期负责(开发、测试、部署、运维),契合康威定律;
- 采用去中心化治理(技术栈、数据库选型自主)与基础设施自动化(CI/CD、配置管理)。