5.1、什么是微服务
分类: 微服务架构理论与实践
什么是微服务
微服务是一种架构风格,将应用程序构建为一组小型、独立的服务。本节将学习微服务的基本概念。
本节将学习:微服务定义、微服务特征、微服务 vs 单体,以及微服务优势。
微服务定义
定义
微服务 是一种架构风格,将应用程序构建为一组小型、独立的服务,每个服务运行在自己的进程中,通过轻量级机制(通常是 HTTP RESTful API)进行通信。
核心思想
微服务的核心思想:
- 单一职责
- 独立部署
- 技术多样性
- 去中心化治理
微服务特征
主要特征
微服务的主要特征:
- 小型化:每个服务专注于单一业务功能
- 独立性:服务可以独立开发、部署、扩展
- 去中心化:数据管理和治理去中心化
- 技术多样性:不同服务可以使用不同技术栈
微服务 vs 单体
架构对比
对比表
| 特性 | 单体应用 | 微服务 |
|---|---|---|
| 部署 | 单一部署单元 | 多个独立部署单元 |
| 扩展 | 整体扩展 | 按需扩展 |
| 技术栈 | 统一技术栈 | 技术多样性 |
| 数据 | 共享数据库 | 独立数据库 |
微服务优势
主要优势
微服务的优势:
- 独立扩展:每个服务可以独立扩展
- 技术多样性:不同服务可以使用不同技术
- 故障隔离:一个服务故障不影响其他服务
- 团队自治:不同团队可以独立开发
官方资源
本节小结
在本节中,我们学习了:
第一个是微服务定义。 微服务是一种架构风格。
第二个是微服务特征。 小型化、独立性、去中心化、技术多样性。
第三个是微服务 vs 单体。 架构对比和差异。
第四个是微服务优势。 独立扩展、技术多样性、故障隔离、团队自治。
这就是微服务的基本概念。理解微服务的定义和特征,是学习微服务架构的基础。
在下一节,我们将学习为什么需要微服务。