单体架构,SOA,微服务
架构演进单体架构SOA微服务单体架构一个归档包包含了应用所有功能的应用程序, 我们通常称之为单体应用。 架构单体应用的架构风格, 我们称之为单体架构, 这是一种比较传统的架构风格。单体架构的缺点 复杂性逐渐变高 技术债务逐渐上升 部署速度逐渐变慢 阻碍技术创新 无法按需伸缩SOA面向服务的
·
架构演进
单体架构
SOA
微服务
SOA
微服务
单体架构
一个归档包包含了应用所有功能的应用程序, 我们通常称之为单体应用。
架构单体应用的架构风格, 我们称之为单体架构, 这是一种比较传统的架构风格。
架构单体应用的架构风格, 我们称之为单体架构, 这是一种比较传统的架构风格。
单体架构的缺点
复杂性逐渐变高
技术债务逐渐上升
部署速度逐渐变慢
阻碍技术创新
无法按需伸缩
SOA
面向服务的架构(SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种各样的系统中的服务可以以一种统一和通用的方式进行交互。
SOA是一种粗粒度、松耦合服务架构,服务之间通过简单、精确定义接口进行通讯,不涉及底层编程接口和通讯模型。
微服务
微服务架构风格这种开发方法,是以开发一组小型服务的方式来开发一个独立的应用系统的。
其中每个小型服务都运行在自己的进程中,并经常采用HTTP资源API这样轻量的机制来相互通信。
这些服务围绕业务功能进行构建,并能通过全自动的部署机制来进行独立部署。
这些微服务可以使用不同的语言来编写,并且可以使用不同的数据存储技术。
对这些微服务我们仅做最低限度的集中管理
微服务特点:
1. 每个微服务可独立运行在自己的进程里;
2. 一系列独立运行的微服务共同构建起了整个系统;
3. 每个服务为独立的业务开发,一个微服务一般完成某个特定的功能,比如:订单管理、用户管理等;
4. 微服务之间通过一些轻量的通信机制进行通信,例如通过REST API或者RPC的方式进行调用。
2. 一系列独立运行的微服务共同构建起了整个系统;
3. 每个服务为独立的业务开发,一个微服务一般完成某个特定的功能,比如:订单管理、用户管理等;
4. 微服务之间通过一些轻量的通信机制进行通信,例如通过REST API或者RPC的方式进行调用。
微服务优点:
易于开发和维护
启动较快
局部修改容易部署
技术栈不受限
按需伸缩
DevOps
启动较快
局部修改容易部署
技术栈不受限
按需伸缩
DevOps
微服务挑战
运维要求较高
分布式的复杂性
接口调整成本高
重复劳动
分布式的复杂性
接口调整成本高
重复劳动
微服务设计原则
单一职责原则
服务自治原则
轻量级通信原则
接口明确原则
服务自治原则
轻量级通信原则
接口明确原则
更多推荐
已为社区贡献1条内容
所有评论(0)