它接受乙個來自客戶端的請求的過程。獲得來自客戶端的請求後會處理所需的收集所需的資訊,將其傳送到請求客戶端。一旦這樣做完成後,就又變成準備為另乙個客戶端。伺服器程序始終等待準備用於處理傳入請求。
例項:web伺服器一直等待來自網際網路瀏覽器的請求,並盡快得到任何請求從瀏覽器,它拿起乙個請求的html頁面,並把它傳送回該瀏覽器。
注意,客戶端需要知道的存在伺服器的位址,但是伺服器並不需要在建立的連線之前知道客戶端的位址。一旦建立連線後,雙方都可以傳送和接收資訊。
這是乙個過程,這通常使得資訊請求。得到回應後,這一過程可能會終止或可能會做一些其他的處理。
例如:網際網路瀏覽器作為乙個客戶端應用程式,web伺服器傳送乙個請求到得到乙個html網頁。
客戶端-伺服器模式的特定場景與面臨的問題以及解決方案和例項
特定場景:大量使用者訪問如何進行優化客戶端海量資源
乙個問題:資源不對等,如何實現資源共享
解決方案:
1 增加伺服器數量
2 優化資料庫-連線池訪問數
3 二層發展成三層-中介軟體篩選過濾
4 優化客戶端,伺服器處理完後0.06秒已已經處理完,已傳輸到了但在5秒客戶端才顯示。
5 中間加佇列,減少資料庫的壓力
例項:京東圖書
例項描述:2023年京東為了給其旗下京東圖書造勢,推出大幅度優惠政策,致使活動當天伺服器崩潰,強東一怒之下又添了幾台昂貴的伺服器,然並卵,新增伺服器之後不久,伺服器再次崩潰~~(不爭氣的伺服器),好吧,我承認是訪問的人太多了。
例項分析:軟體架構設計出現了問題,沒能很好的處理大規模使用者的訪問,造成了崩潰,還記得強東當時在文博發文說加3倍的伺服器,然而,不改變架構,只是從表面上去解決問題,那麼最終一定還是會導致崩潰(事實證明沒錯,加了之後又崩潰了)。
優勢
1.在大多數情況下,客戶機伺服器體系結構允許的角色和責任的計算系統是其中幾個已知只有通過網路互相獨立的計算機分發。這將建立乙個額外的優勢,這種體系結構:提高維護的簡便性。例如,它可以更換,維修,公升級,甚至遷移伺服器,同時它的客戶都不知情,並保持該更改的影響。
2.所有資料都儲存在伺服器上,通常比大多數客戶更大的安全控制。伺服器可以更好地控制訪問和資源,以保證只有那些具有適當許可權的使用者可以訪問和更改資料。
3.由於資料的集中儲存,對資料的更新是更容易管理相比,乙個p2p模式。在後者,資料更新可能需要分發和應用到每個網路中的對等,既費時又容易出錯,因為可以有成千上萬甚至數百萬的同齡人。
4.許多成熟的客戶端伺服器技術已經可以方便的目的是確保安全,使用者介面友好,易用性。
5.具有不同功能的多個不同的客戶它的功能。
劣勢
1.作為客戶端同時請求數給定的伺服器的增加,伺服器可以成為過載。對照到乙個p2p網路,在其總頻寬實際上增加為節點的新增,由於p2p網路的總頻寬可以大致計算作為該網路中每個節點的頻寬的總和。
客戶端 伺服器模式
目錄 客戶端 伺服器模式 客戶端程序 伺服器程序 2層和3層架構 服務端的特徵 客戶端特徵 定義 客戶端 伺服器模式 client server model 簡稱c s結構,是一種網路架構,它把客戶端 client 與伺服器 server 區分開來。每乙個客戶端軟體的例項都可以向乙個伺服器或應用程式...
客戶端 伺服器模式分析
客戶端 伺服器模式定義 架構模式是乙個通用的 可重用的解決方案,用於在給定上下文中的軟體體系結構中經常出現的問題。架構模式與軟體設計模式類似,但具有更廣泛的範圍。維基百科 而客戶端 伺服器模式由兩部分組成 乙個伺服器和多個客戶端。伺服器元件將為多個客戶端元件提供服務。客戶端從伺服器請求服務,伺服器為...
Docker的客戶端伺服器模式
docker提供了remote api,類似於restful 風格的api,我們可以呼叫remote api將自己的程式和docker整合,從而執行我們的程式在docker上。docker的c s 模式的連線方式 客戶端與守護程序的連線方式 docker守護程序的配置和操作 使用service命令啟...