Application Architecture(网络应用体系结构)

Definition

应用体系结构(Application Architecture)定义了应用进程在各个网络端系统(End Systems)上的组织模式与通信拓扑

它规定:

  • 进程间通信的角色分配(Server / Client / Peer)
  • 基础设施与数据中心的依赖关系
  • 资源提供与服务扩展的物理路径

简单理解:

应用体系结构决定了网络应用是依赖“权威中心集中响应”还是依赖“网络边缘对等协同”。


Components(核心组件)

  1. Client-Server 架构(客户-服务器体系结构)
    • 服务器(Server):常开(Always-on)的主机,拥有固定 IP 地址,集中响应客户端请求。通常托管于数据中心。
    • 客户机(Client):间歇连接的主机,主动向服务器发起通信。客户机之间不直接通信
  2. 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 架构:追求极致的资源自扩展性、低成本部署与无中心抗单点故障。