日常2018/4/9---b/s和c/s架構分別是什么?區別?


b/s和c/s架構分別是什么?區別?

c/s架構是什么,有何特點?

前言:一般系統都由三部分組成:‘表示層,功能層,數據層’。其中表示層是和用戶進行交互的;而功能層是對事物進行處理數據運算;數據層進行數據查,改,存儲等操作。

這里說的c/s架構一般是指client-server的兩層c/s架構;客戶端在整個架構中負責表示層和功能層任務,除了可以負責和用戶交互事物的運算和數據存儲,后端服務器負責數據層任務。極大程度上共享了用戶終端的資源;實現了胖客戶端;瘦服務端的效果。

 

c/s架構特點

  • 開發者成本高:程序的適配性差;需要針對不同環境開發不同系統版本;開發成本高;維護擴展困難。實現client和server數據同步統一需要做針對性處理。
  • 性能優良:共享終端的資源;因此響應速度較快,性能優勢明顯,但是擴展性較差,不適合大型分布式架構。
  • 用戶使用成本高:使用成本高;使用需要安裝,升級;但多進程功能更豐富,界面效果號。
  • c/s服務端更安全:服務端壓力較小有客戶端分擔事物;數據存儲管理透明,公開度低。用戶參入度小,有專人管理。和服務端直連,點對點模式更安全,直連響應速度快,大數據通信時不易堵塞。
  • 數據安全:數據分布式存儲;單個集團數據一旦出問題會影響總的數據同步,安全性差,且單集團數據一旦同步異常會導致整個數據一致性出現問題。程序響應慢,數據無法實時處理,一旦需要升級或優化,需要對所有節點都進行重新部署。

缺點:

  1. 客戶端適配性差,針對不同系統需要開發不同版本,成本高,維護擴展困難。
  2. 對網絡要求高,用戶需要安裝,功能變更又需要升級用戶成本高。
  3. c/s架構適用於局域網,網絡成本高。
  4. 界面通用性差,一旦需求變更,只能重新改寫,復用性低。

服務器:

  1. 對服務器要求高,用戶增多,服務器難以擔當時,只能更換更高性能服務器,擴展性差。
  2. 胖客戶端,當客戶端用戶增多時;用戶數增多會出現通信擁堵,服務器響應速度慢等情況。
  3. 用戶是通過ODBC連接到數據庫的,且每個連接到數據庫的用戶都會保持一個ODBC連接,會一直占用中央服務器的資源,對服務器的要求很高。

用戶:

  1. 用戶需要安裝才能使用;不能隨時隨地使用,網絡要求較高。
  2. 由於是odbc連接庫,導致用戶數量收到限制,難以擴展。
  3. 適用於局域網,難以擴展到全球用戶

開發維護成本高

 

b/s架構是什么,有何特點?

c/s架構的改進;用通用的瀏覽器代替了客戶端;可以說是3層c/s架構。下圖常規b/s架構結構圖:

 

第一層是瀏覽器,即客戶端,只有簡單的輸入輸出功能,處理極少部分的事務邏輯。由於客戶不需要安裝客戶端,只要有瀏覽器就能上網瀏覽,所以它面向的是大范圍的用戶,所以界面設計得比較簡單,通用。

 

第二層是WEB服務器,扮演着信息傳送的角色。當用戶想要訪問數據庫時,就會首先向WEB服務器發送請求,WEB服務器統一請求后會向數據庫服務器發送訪問數據庫的請求,這個請求是以SQL語句實現的。

 

第三層是數據庫服務器,他扮演着重要的角色,因為它存放着大量的數據。當數據庫服務器收到了WEB服務器的請求后,會對SQL語句進行處理,並將返回的結果發送給WEB服務器,接下來,WEB服務器將收到的數據結果轉換為HTML文本形式發送給瀏覽器,也就是我們打開瀏覽器看到的界面。

優點:

  架構

  1. 非局域網;基於廣域網;能實現大量用戶的信息傳播。
  2. 頁面/需求變更成本低;一經變更;所有用戶都能看到;無需考慮系統版本;適配性強。
  3. 和web平台無關;服務器方便擴展。擴展性強。

  開發

  1. 技術難度低,開發成本低。代碼或模塊通用性強。
  2. 頁面或模塊通用性強;易復用。

  服務器

  1. 數據集中存放在中央數據庫;數據同步性好;
  2. 數據集中存放有利於數據安全和權限分配;
  3. 服務器系統選擇空間大;結構穩定。
  4. 服務器易於擴展;容易實現負載均衡。

  用戶

  1. 基於廣域網;對用戶網速要求低。
  2. 無需安裝;外部用戶也可以使用;用戶使用成本低。
  3. 基於jbcd連接
  4. 所有的用戶都不直連數據庫;而是通過一個JDBC連接緩沖池連接到數據庫的,用戶數基本上是無限的。

  成本

  1、開發成本低:代碼復用性強,開發技術要求不高,基本不需要維護,需求和程序變更方便;

  2、用戶使用成本極低。

  3、硬件網絡要求低。

 

缺點:

  1、無法實現復雜的頁面效果;比如英雄聯盟頁面。

  2、用戶過多時;服務器壓力很大;響應會變慢;性能比不上c/s架構。

  3、數據過於集中;一旦服務器崩潰就徹底game over。

  4、性能有瓶頸,對性能要求高的應用,比如大型網游一般不能考慮b/s架構。

 

c/s架構和b/s架構區別

  在響應速度,用戶界面,數據安全等方面,C/S強於B/S,但是在業務擴展和適用www條件下,B/S明顯勝過C/S。可以這么說,B/S的強項就是C/S的弱項,反之亦然。它們各有優缺點,相互無法取代。

 

 

 

區別主要在以下方面:

  • 架構
  • 邏輯事物處理
  • 工作原理:C/S架構是客戶端和服務器直接相連,實現點對點的通信,B/S是瀏覽器通過WEB服務器向數據庫服務器發送數據請求,實現多對多的通信。
  • 響應速度
  • 成本
  • 維護,升級,擴展成本
  • 信息共享覆蓋用戶


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM