微服务架构原理与治理实践| 青训营笔记

108 阅读2分钟

前言

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

今日学习内容:

  • 微服务架构介绍
  • 微服务架构原理及特征
  • 核心服务治理能力
  • 字节跳动服务治理实践

正文

微服务框架介绍

系统架构演变历史

为什架构需要演进?

  • 互联网的爆炸性发展
  • 硬件设施的快速发展
  • 需求复杂性的多样化
  • 开发人员的急剧增加
  • 计算机理论及技术的发展

单体架构 => 垂直应用架构 => 分布式架构 => SOA 架构 => 微服务架构

  • 单体架构

image.png

  • 优点

    • 性能最高
    • 冗余小
  • 缺点

    • debug 困难
    • 模块相互影响(非核心功能可能导致程序崩溃)
    • 模块分工、开发流程困难(几乎无法分工)
  • 垂直应用架构

image.png

按照业务线进行垂直划分

  • 优点:

    • 业务独立开发维护
  • 缺点:

    • 不同业务存在冗余
    • 每个业务还是单体
  • 分布式架构

image.png

抽出业务无关的公共模块,分布式独立部署运行

  • 优点

    • 业务无关的独立业务
  • 缺点

    • 服务模块 bug 可导致全站瘫痪
    • 调用关系复杂
    • 不同服务冗余
  • SOA 架构(Service Oriented Architecture)

image.png

面向服务,开始引入“服务”,“服务注册”的概念

  • 优点

    • 服务注册
  • 缺点

    • 整个系统设计是中心化的
    • 需要从上至下设计
    • 重构困难
  • 微服务架构

image.png

彻底的服务化

  • 优点

    • 开发效率
    • 业务独立设计
    • 自下而上
    • 故障隔离
  • 缺点

    • 治理、运维难度急剧增加
    • 观测挑战
    • 安全性
    • 分布式系统本身的复杂性

微服务架构概览

image.png

微服务架构核心要素

image.png

微服务架构原理及特征

核心服务治理能力

字节跳动服务治理实践