架构初探 | 青训营笔记

47 阅读2分钟

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

1. 本堂课重点内容

  1. 架构基本概念
  2. 企业级后端架构剖析
  3. 企业级后端架构的挑战

2. 详细知识点介绍

2.1 架构基本概念

架构,又称软件架构

  • 是有关于软件整体结构与组件的抽象描述
  • 用于指导软件系统各个方面的设计

实现一个软件有很多种方法,架构在方法选择上起着至关重要的指导作用

架构的重要性

  • 地基没打好,大厦容易倒
  • 地基坚实了,大厦才能盖得高
  • 站在巨人肩膀上,才能看得远

架构的演进

  • 单机架构
  • 垂直应用架构:解决了单机架构运维需要停服的缺点
  • SOA架构
  • 微服务架构

2.2 企业级后端架构剖析

云计算:是指通过软件自动化管理,提供计算资源的服务网络,是现代互联网大规模熟悉分析和存储的基石。

基础:

  • 虚拟化技术
  • 编排方案

架构:

  • IaaS
  • PaaS
  • SaaS
  • FaaS

云原生:云原生技术为组织(公司)在公有云、自由云、混合云等新型的动态环境中,构建和运行可弹性拓展的应用 提供了可能。

image.png

2.3 企业级后端架构的挑战

挑战:

  • 基础设施层面
    • 物理资源是有限的

      • 机器
      • 带宽
    • 资源利用率受制于部署服务

  • 用户层面
    • 网络通信开销大
    • 网络抖动导致运维成本提高
    • 异构环境下,不同示例资源水位不均

问题解决:

  • 离在线资源并池
  • 自动扩缩容
  • 微服务亲和性部署
  • 流量治理CPU水位负载均衡

3. 后端架构实战

  1. 需要哪些输入
  • 服务网格数据面
    • 支持带权重的负载均衡策略
  • 注册中心存储了所有容器的权重信息
  • 宿主机能提供
    • 容器的资源使用情况
    • 物理资源信息(如CPU型号)
  1. 设计时需要考虑哪些关键点
  • 紧急回滚能力
  • 大规模
  • 极端场景