这是我参与「第五届青训营 」笔记创作活动的第5天
1. 本堂课重点内容
- 架构基本概念
- 企业级后端架构剖析
- 企业级后端架构的挑战
2. 详细知识点介绍
2.1 架构基本概念
架构,又称软件架构
- 是有关于软件整体结构与组件的抽象描述
- 用于指导软件系统各个方面的设计
实现一个软件有很多种方法,架构在方法选择上起着至关重要的指导作用
架构的重要性
- 地基没打好,大厦容易倒
- 地基坚实了,大厦才能盖得高
- 站在巨人肩膀上,才能看得远
架构的演进
- 单机架构
- 垂直应用架构:解决了单机架构运维需要停服的缺点
- SOA架构
- 微服务架构
2.2 企业级后端架构剖析
云计算:是指通过软件自动化管理,提供计算资源的服务网络,是现代互联网大规模熟悉分析和存储的基石。
基础:
- 虚拟化技术
- 编排方案
架构:
- IaaS
- PaaS
- SaaS
- FaaS
云原生:云原生技术为组织(公司)在公有云、自由云、混合云等新型的动态环境中,构建和运行可弹性拓展的应用 提供了可能。
2.3 企业级后端架构的挑战
挑战:
- 基础设施层面
-
物理资源是有限的
- 机器
- 带宽
-
资源利用率受制于部署服务
-
- 用户层面
- 网络通信开销大
- 网络抖动导致运维成本提高
- 异构环境下,不同示例资源水位不均
问题解决:
- 离在线资源并池
- 自动扩缩容
- 微服务亲和性部署
- 流量治理CPU水位负载均衡
3. 后端架构实战
- 需要哪些输入
- 服务网格数据面
- 支持带权重的负载均衡策略
- 注册中心存储了所有容器的权重信息
- 宿主机能提供
- 容器的资源使用情况
- 物理资源信息(如CPU型号)
- 设计时需要考虑哪些关键点
- 紧急回滚能力
- 大规模
- 极端场景