###C/S模型編程
####C/S模型概述 C/S(客戶端/服務器)模型,是經常使用的服務器模型,包括如今說的B/S(瀏覽器/客戶端)模型,都是對C/S結構的一種變化或者改進的結構。 TCP/IP協議在設計和實現上並無客戶端和服務器的概念,在通訊過程當中全部服務器都是對等的。但因爲資源被數據提供者所壟斷,因而產生了C/S模型:全部客戶端都經過服務器獲取所需資源。模型以下圖1所示:瀏覽器
####C/S模型的邏輯流程 C/S模型的TCP服務器與TCP客戶端工做流程以下圖2所示 服務器
####C/S模型的分析網絡
###P2P模型異步
#####P2P模型概述 P2P(Peer to Perr, 點對點)模型,摒棄以服務器爲中心的格局,讓全部主機重歸對等,使得每臺機器在消耗服務的同時也給別人提供服務,雲計算機集羣能夠看做P2P模型的一個典範。從編程角度,P2P能夠看做C/S的擴展:每臺主機便是客戶端,又是服務器。P2P模型以下圖3所示 socket
####P2P分析 缺點:用戶之間傳輸的請求過多時,網絡負載加劇,同時主機直接很難互相發現。因此實際P2P模型一般帶有一個專門的發現服務器,用於查找服務(甚至能夠提供內容服務),使得每一個客戶都儘快地找到本身所需的資源。下圖3爲帶發現服務器的P2P模型性能
注(本文內容參考 Linux高性能服務器編程——第八章 遊雙著)雲計算