1. 程式人生 > >java web學習3c/s b/s

java web學習3c/s b/s

軟體開發架構模式:

c/s架構--------客戶端—+伺服器端

b/s架構--------瀏覽器——+伺服器端

C/S 架構的概念

C/S是Client/Server,即客戶端/伺服器端架構,一種典型的兩層架構。

客戶端包含一個或多個在使用者的電腦上執行的程式

伺服器端有兩種,一種是資料庫伺服器端,客戶端通過資料庫連線訪問伺服器端的資料;另一種是Socket伺服器端,伺服器端的程式通過Socket與客戶端的程式通訊。

C/S 可以看做是胖客戶端架構

因為客戶端需要實現絕大多數的業務邏輯和介面展示。作為客戶端的部分需要承受很大的壓力,因為顯示邏輯和事務處理都包含在其中,

通過與資料庫的互動(通常是SQL或儲存過程的實現)來達到持久化資料,以此滿足實際專案的需要。

C/S 優點和缺點

優點:(1)介面和操作可以很豐富 (2) 安全效能可以很容易保證,實現多層認證也不難 (3)由於只有一層互動,因此響應速度較快。

缺點:(1)適用面窄,通常用於區域網中

(2)使用者群固定。由於程式需要安裝才可使用,因此不適合面向一些不可知的使用者      (3)維護成本高。發生一次升級,則所有客戶端的程式都需要改變。

B/S 架構的概念

B/S是Browser/Server,即瀏覽器/伺服器架構。

Browser指的是Web瀏覽器,極少數事務邏輯在前端實現,但主要事務邏輯在伺服器端實現,Browser客戶端,WebApp伺服器端和DB端構成所謂的三層架構。

B/S架構的系統無須特別安裝,只有Web瀏覽器即可。

B/S 可以看做是瘦客戶端架構

B/S架構中,顯示邏輯交給了Web瀏覽器,事務處理邏輯在放在了WebApp上,這樣就避免了龐大的胖客戶端,減少了客戶端的壓力。因為客戶端包含的邏輯很少,因此也被成為瘦客戶端。

C/S 優點和缺點

優點:(1)客戶端無需安裝,有Web瀏覽器即可 (2)BS架構可以直接放在廣域網上,通過一定的許可權控制實現多客戶訪問的目的,互動性較強。         (3)BS架構無需升級多個客戶端,升級伺服器即可。

缺點:(1)在跨瀏覽器上,BS架構不盡如人意。(2)表現要達到CS程式的程度需要花費不少精力。         (3)在速度和安全性上需要花費巨大的設計成本,這是BS架構的最大問題。         (4)C和S互動是請求-響應模式,通常需要重新整理頁面,這並不是客戶樂意看到的。(在Ajax風行後此問題得到了一定程度的緩解)