客戶端伺服器
主從式架構(Client/Server)是一種網路架構,它把客戶端(Client)(通常是一個採用圖形用戶界面的程式)與伺服器(Server)區分開來。每一個客戶端軟體的實例都可以向一個伺服器或應![客戶端伺服器](/img/c/0da/nBnauM3X2ETO4ADO4ADO5UjN3ITMwIDOyIDOwADMwAzMxAzLwgzLyUzLt92YucmbvRWdo5Cd0FmLxE2LvoDc0RHa.jpg)
![客戶端](/img/d/d91/nBnauM3X0IDM5UzNyEDO5UjN3ITMwIDOyIDOwADMwAzMxAzLxgzL4QzLt92YucmbvRWdo5Cd0FmL0E2LvoDc0RHa.jpg)
特徵
主從式架構意圖提供一個可縮放(scaleable)的架構,藉此網上的計算機或者處理過程是一個客戶端或者伺服器。伺服器軟體一般,但不是總是,運行在強大的專用商業計算機上。另一方面,客戶端一般運行在普通個人電腦或者工作站上。
![高端伺服器](/img/f/6a4/nBnauM3X3UTOxczN2EDO5UjN3ITMwIDOyIDOwADMwAzMxAzLxgzLzYzLt92YucmbvRWdo5Cd0FmLwE2LvoDc0RHa.jpg)
服務端的特徵:
![測試伺服器](/img/c/313/nBnauM3X4YDM1UDNxIDO5UjN3ITMwIDOyIDOwADMwAzMxAzLygzL4czLt92YucmbvRWdo5Cd0FmLxE2LvoDc0RHa.jpg)
被動的角色(從)。等待來自客戶端的要求。處理要求並傳回結果。客戶端的特徵:主動的角色(主)。傳送要求。等待直到收到回應。伺服器可是有狀態或者無狀態的。無狀態的伺服器不會保留任何兩個請求之間的信息,有狀態伺服器會記住請求之間的信息。這些信息的作用域可以是全局的或者某個事務(session)的。靜態 HTML頁面伺服器是一個無狀態伺服器的例子,ApacheTomcat是一個有狀態伺服器。服務端與客戶端的互動經常使用循序圖描述,循序圖是UML中的一個標準。另一種已知的網路架構類型是點對點架構(peer-to-peerarchitecture),因為每一個即點或程式的實體都是客戶端與伺服器的角色,並且具有對等的責任。目前這兩種架構都被廣泛使用。
![伺服器](/img/1/4a7/nBnauM3X2cTOwEDN2IDO5UjN3ITMwIDOyIDOwADMwAzMxAzLygzLyEzLt92YucmbvRWdo5Cd0FmLyE2LvoDc0RHa.jpg)
與點對點技術的比較
![客戶伺服器](/img/9/e8c/nBnauM3X3MDO4kTM0MDO5UjN3ITMwIDOyIDOwADMwAzMxAzLzgzL2QzLt92YucmbvRWdo5Cd0FmL0E2LvoDc0RHa.jpg)
另一種已知的網路架構類型是點對點技術(peer-to-peerarchitecture),不同於主從式架構,網路上的每個使用端或程式的實體都擁有相同的等級,同時扮演用戶端與伺服器的角色。Peertopeer常被縮寫成P2P。此兩種架構目前都被廣范使用,可以找尋有關中心式網路(Client-Server)或非中心式網路(Peer-to-peer)得到更詳細的資訊,此兩種架構都可於Windows與Linux上面使用。