微服务架构2(上)| 青训营笔记

85 阅读2分钟

这是我参与「第五届青训营」伴学笔记创作活动的第 16天。

课堂笔记

一、本堂课重点内容:

  • 微服务架构介绍
  • 微服务架构原理及特征

二、具体案例:

1. 微服务架构介绍

1.1 系统架构的演变历史

image.png

单体架构

all in one process

  • 优势:

    1.性能最高

    2.冗余小

  • 劣势:

    1.debug困难

    2.模块相互影响

    3.模块分工、开发流程

image.png

垂直应用架构

按照业务线垂直划分

  • 优势:

    1.业务独立开发维护

  • 劣势:

    1.不同业务存在冗余

    2.每个业务还是单体

image.png

分布式架构

抽出业务无关的公共模块

  • 优势:

    1.业务无关的独立服务

  • 劣势:

    1.服务模块bug可导致全站瘫痪

    2.调用关系复杂

    3.不同服务冗余

image.png

SOA架构

面向服务

  • 优势:

    1.服务注册

  • 劣势:

    1.整个系统设计是中心化的

    2.需要从上至下设计

    3.重构困难

image.png

微服务架构

彻底地服务化

  • 优势:

    1.开发效率

    2.业务独立设计

    3.自下而上

    4.故障隔离

  • 劣势:

    1.治理、运维难度

    2.观测挑战

    3.安全性

    4.分布式系统

image.png

1.2 微服务架构概览

image.png

1.3 微服务架构核心要素
  • 服务治理

image.png

  • 可观测性

image.png

  • 安全

image.png

2. 微服务架构原理及特征

2.1 基本概念
  • 服务(service)

    一组具有相同逻辑的运行实体。

  • 实例( instance)

    一个服务中,每个运行实体即为一个实例。

  • 实例与进程的关系

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

  • 集群(cluster)

    通常指服务内部的逻辑划分,包含多个实例。

  • 常见的实例承载形式

    进程、VM、k8s pod ……

  • 有状态/无状态服务

    服务的实例是否存储了可持久化的数据(例如磁盘文件)

image.png

2.2 服务注册及发现
  • 服务实例上线及下线过程

image.png

image.png

image.png

image.png

image.png

image.png

image.png

2.3 流量特征
  • 统一网关入口
  • 内网通信多数采用RPC
  • 网状调用链路

image.png

三、课后个人总结

这次学习的微服务架构中的基本组件及术语,服务注册与发现,基本了解微服务架构的历史