Application Architecture(网络应用体系结构)
Definition
应用体系结构(Application Architecture)定义了应用进程在各个网络端系统(End Systems)上的组织模式与通信拓扑。
它规定:
- 进程间通信的角色分配(Server / Client / Peer)
- 基础设施与数据中心的依赖关系
- 资源提供与服务扩展的物理路径
简单理解:
应用体系结构决定了网络应用是依赖“权威中心集中响应”还是依赖“网络边缘对等协同”。
Components(核心组件)
- Client-Server 架构(客户-服务器体系结构)
- 服务器(Server):常开(Always-on)的主机,拥有固定 IP 地址,集中响应客户端请求。通常托管于数据中心。
- 客户机(Client):间歇连接的主机,主动向服务器发起通信。客户机之间不直接通信。
- P2P 架构(Peer-to-Peer 对等体系结构)
- 对等节点(Peers):对专用服务器依赖极小,分布在边缘的间歇连接端系统直接建立通信。
- 核心特征:自扩展性(Self-scalability)。每个 Peer 在请求资源(下载)的同时也在向网络贡献资源(上传)。
Relationship(组件关系)
flowchart TD subgraph CS["Client-Server 架构"] Server["数据中心 Server"] --> C1["Client 1"] Server --> C2["Client 2"] Server --> C3["Client 3"] end subgraph P2P["P2P 架构"] P1["Peer A"] <--> P2["Peer B"] P2 <--> P3["Peer C"] P3 <--> P1 end
Design Goal(设计目标)
- C/S 架构:追求高度可控性、安全防护、集中管理与高服务质量(QoS)。
- P2P 架构:追求极致的资源自扩展性、低成本部署与无中心抗单点故障。