一词最早来自于Martin Fowler的一篇微服务文章
- 翻译
微服务架构风格是一种将一个单一应用程序开发为一组小型服务
的方法,每个服务运行在自己的进程
中,服务间通信采用轻量级通信机制
(通常用HTTP资源
API)。这些服务围绕业务能力构建
并且可通过全自动部署机制独立部署。这些服务共用一个最小型的集中式的管理
,服务可用不同的语言开发
,使用不同的数据存储技术
-
每个微服务可独立运行在自己的进程里
-
一系列独立,运行的微服务共同构建起整个系统
-
每个服务为独立的业务开发,一个微服务只关注某个特定的功能,例如订单管理、用户管理等
-
可使用不同的语言与数据存储技术(契合项目情
况和团队实力)
-
微服务之间通过轻量的通信机制进行通信,例如通过REST API进行调用;
-
全自动的部署机制
-
单个服务更易于开发、维护
-
单个微服务启动较快
-
局部修改容易部署
-
技术栈不受限
-
按需伸缩
-
运维要求高
-
分布式固有的复杂性
-
重复劳动
-
大型、复杂的项目
-
有快速迭代的需求
-
访问压力大
-
业