ONEPSOFT | 软考学习知识库
deepread3|论文3 云原生架构设计(容器 / 微服务 / Serverless / 服务网格)详解
对应清单条目:#3 论文·云原生架构设计(容器/微服务/Serverless/服务网格)
教材来源:《系统架构设计师教程(第 2 版)》第 14 章 云原生架构设计(14.2–14.3)、第 1 章 1.4 微服务、第 15 章 SOA 微服务化
一、知识点定位
一句话定位:云原生不是某一项技术,而是一组 " 把弹性、韧性、安全、可观测等非业务代码尽量甩给云基础设施 " 的架构原则 + 技术组合(容器打底、微服务拆分、Serverless 极致弹、服务网格治理下沉)。
二、教材原文精摘(第 14 章,原封不动)
【容器与 Docker】原文:
容器作为标准化软件单元,它将应用及其所有依赖项打包,使应用不再受环境限制,在不同计算环境间快速、可靠地运行……Docker 提出了创新的应用打包规范——Docker 镜像,解耦了应用与运行环境……容器镜像迅速成为了应用分发的工业标准。
Kubernetes 已经成为容器编排的事实标准……提供了分布式应用管理的核心能力:资源调度、应用部署与管理、自动修复、服务发现与负载均衡、弹性伸缩。声明式 API:开发者可以关注于应用自身,而非系统执行细节。
【微服务定义 / 与 SOA 区别】原文:
微服务架构 (Microservices Architecture) 是服务导向架构 (SOA) 的升级。每一个服务就是一个独立的部署单元……互相解耦,通过远程通信协议(比如 REST、SOAP)联系。
SOA 与微服务的区别:①微服务相比于 SOA 更加精细,更多以独立的进程方式存在,互相无影响;②接口更通用化(HTTP RESTful),无关语言平台;③更倾向于分布式去中心化部署。
微服务架构是 SOA 架构的进一步优化,去除了 ESB 企业服务总线,是真正意义上去中心化的分布式架构……不同的微服务采用不同的数据库技术,服务独立,数据源唯一。
【Serverless / FaaS】原文:
Serverless 计算包含以下特征:①全托管的计算服务,无需关注基础设施开发运维;②通用性,结合云 BaaS API 支撑重要应用;③自动弹性伸缩,无需提前容量规划;④按量计费,无需为闲置资源付费。
函数计算 (FaaS) 是 Serverless 中最具代表性的产品形态。通过把应用逻辑拆分多个函数,每个函数都通过事件驱动的方式触发执行。
【服务网格 Service Mesh】原文:
服务网格 (Service Mesh) 旨在将微服务间的连接、安全、流量控制和可观测等通用功能下沉为平台基础设施,实现应用与平台基础设施的解耦……开发者无需关注微服务相关治理问题而聚焦于业务逻辑本身。
服务 A 调用服务 B 的所有请求,都被其下的服务代理(Sidecar)截获,代理完成服务发现、熔断、限流等策略,而这些策略的总控是在控制平面 (Control Plane) 上配置。以 Istio 为例:Pilot(服务发现、流量管理)、Mixer(访问控制、可观测性)、Citadel(认证、加密)。
【云原生架构原则(14.2.2)】原文:
三、系统解读(逐段讲透)
核心一句话总结:云原生 = 用容器统一交付、用微服务拆分边界、用Serverless吃掉弹性峰值、用服务网格接管治理,整体服从 " 服务化/弹性/可观测/韧性/自动化 " 原则——本质是让业务代码只关心业务,非功能特性全交给云。
四、工程实践举例(土木工程视角)
云原生的每一层都有 " 建造工业化 " 的对应物:
知识点 ↔ 工程实践 对照表
| 教材知识点要素 | 你的实践场景对应 | 映射说明 |
|---|---|---|
| 容器镜像(解耦环境、一次构建到处运行) | 预制 PC 构件(工厂标准化、现场一致拼装) | 标准化单元解耦生产与运行环境 |
| 单体架构 | 现浇整体结构(一处改全动) | 集中式、迭代随规模骤降 |
| 微服务(独立部署、去中心化) | 装配式建筑(构件独立可换) | 松耦合、独立生命周期 |
| ESB 总线(SOA 集中式) | 现场集中搅拌站(单点瓶颈) | 集中连接、耦合重响应慢 |
| 服务网格 Sidecar(治理下沉) | 装配式标准连接件/预埋件 | 非功能从本体剥离到标准件 |
| Serverless/FaaS(全托管/按量/弹性) | 租赁泵车(免运维/按方计费/随加车) | 免基础设施、弹性、按量 |
| 韧性原则(提升 MTBF) | 结构冗余/抗震设防/多场所备用 | 异常时业务不中断 |
当知识点涉及架构演进时,补充演化链(单体→SOA→微服务→云原生,对应你从现浇到装配式的工业化升级):
流程图(结构化呈现)
云原生能力
对应关系
| 节点A | 关系 | 节点B |
|---|---|---|
| 云原生\n容器+微服务+Serverless+Mesh | 承载 | 容器: 标准化交付 |
运维视角提示:云原生六原则里韧性 + 可观测直接是运维服务的命根子。微服务拆细后," 一次点击背后多次调用 " 若不靠链路追踪(可观测)就查不出故障点;限流降级熔断(韧性)是线上救火的标准动作。换句话说,云原生把运维从 " 救火队 " 变成 " 平台能力 "——正是该建立的心智模型。