初识微服务架构 | 青训营

74 阅读2分钟

今天学习了微服务架构的原理以及实践,因此写下这篇笔记帮助自己梳理思路,以便后续复习。

系统架构的演变历

系统架构的演变历史,主要是经历了1.单体架构2.垂直应用架构3.分布式架构4.SOA架构5.微服务架构6.Service Mesh架构,这几个主要阶段。

下面介绍一下各个架构的特点

单体架构

image.png 特点:所有的功能都在一个程序之内

优势:1.性能最高2.冗余小

劣势:1.debug 困难2.模块相互影响3.模块分工、开发流程

垂直应用架构

image.png 特点:按照业务线垂直划分

优势:1.业务独立开发维护

劣势:不同业务存在冗余1.每个业务还是单体

分布式架构

image.png 特点:抽出业务无关的公共模块

优势:1.业务无关的独立服务

劣势:1.服务模块bug可导致全站瘫痪2.调用关系复杂3.不同服务冗余

面向服务架构

image.png 特点:面向服务

优势:1.服务注册

劣势:1.整个系统设计是中心化的2.需要从上至下设计3.重构困难

微服务架构

image.png 彻底的服务化

优势开发效率L23业务独立设计自下而上故障隔离

劣势:治理、运维难度L234观测挑战安全性分布式系统

微服务的基本概念

服务(service):一组具有相同逻辑的运行实体。实例(instance)

实例(instance):一个服务中,每个运行实体即为一个实例。

实例与进程的关系:实例与进程之间没有必然对应关系,可以一个实例可以对应一个或多个进程((反之不常见)。

集群(cluster):通常指服务内部的逻辑划分,包含多个实例。

常见的实例承载形式:进程、VM、k8s pod ….…

有状态/无状态服务:服务的实例是否存储了可持久化的数据(例如磁盘文件)。

参考

微服务架构原理及特征 - 掘金 (juejin.cn)