主從式架構

维基百科,自由的百科全书
跳转至: 导航搜索

主從式架構 (Client–server model) 或客户端-服务器(Client/Server)结构简称C/S结构,是一种网络架构,它把客户端 (Client) (通常是一个采用图形用户界面的程序)与服务器 (Server) 区分开来。每一个客户端软件的实例都可以向一个服务器或应用程序服务器发出请求。有很多不同类型的服务器,例如文件服务器终端服务器邮件服务器等。虽然它们的存在的目的不一样,但基本构架是一样的。

主從式架構通过不同的途径应用于很多不同类型的应用程序,最常见就是目前在因特网上用的网页。例如,当你在维基百科阅读文章时,你的电脑和网页浏览器就被当做一个客户端,同时,组成维基百科的电脑、数据库和应用程序就被当做服务器。当你的网页浏览器向维基百科请求一个指定的文章时,维基百科服务器从维基百科的数据库中找出所有该文章需要的信息,结合成一个网页,再发送回你的浏览器。

主從式架構由美国Borland公司最早研发[來源請求],目前最流行的两大主流软件体系结构之一,另一个是美国微软公司研发[來源請求]浏览器-服务器Browser/Server,B/S)结构。服务器端一般使用高性能的计算机,并配合OracleSybase等大型数据库;客户端需要安装专门的软件。在这种结构下,可以在服务器和客户端平衡服务处理量,但因为客户端安装了专门的软件,对平台有一定限制要求,安装和维护的工作量大。

目录

[编辑] 特征

主從式架構意图提供一个可缩放 (scaleable)的架构,借此网上的计算机或者处理过程是一个客户端或者服务器。服务器软件一般,但不是总是,运行在强大的专用商业计算机上。另一方面,客户端一般运行在普通个人电脑或者工作站上。

服務端的特徵:

  • 被動的角色(從)。
  • 等待來自用戶端的要求。
  • 處理要求並傳回結果。

用戶端的特徵:

  • 主動的角色(主)。
  • 發送要求。
  • 等待直到收到回應。

服务器可是有状态或者无状态的。无状态的服务器不会保留任何两个请求之间的信息,有状态服务器会记住请求之间的信息。这些信息的作用域可以是全局的或者某个事务 (session)的。静态 HTML 页面服务器是一个无状态服务器的例子,Apache Tomcat 是一个有状态服务器。

伺服端與用戶端的互動經常使用循序圖描述,循序圖是 UML 中的一個標準。


[编辑] 與點對點技術的比較

另一種已知的網路架構類型是點對點技術(peer-to-peer architecture),不同於主從式架構,網路上的每個使用端或程式的實體都擁有相同的等級,同時扮演用戶端與伺服器的角色。Peer to peer 常被縮寫成 P2P。

此兩種架構目前都被廣範使用,可以找尋有關中心式網路(Client-Server)或非中心式網路(Peer-to-peer)得到更詳細的資訊,此兩種架構都可於 Windows 與Linux 上面使用。

[编辑] 多层结构

[编辑] 寻址

[编辑] 例子

[编辑] 参见

[编辑] 其他网络架构