1、概念說明前端
C/S(Client/Server(客服機/服務器))架構:客戶端/服務器架構。經過將任務合理分配到Client端和Server端,下降了系統的通信開銷,須要安裝客服端纔可進行管理操做。程序員
B/S(Browser/Server(瀏覽器/服務器))架構:是隨着Internet技術的興起,對C/S結構的一種變化或者改進的結構。在這種結構下,用戶界面徹底經過WWW瀏覽器實現,一部分事務邏輯在前端實現,可是主要事務邏輯在服務器端實現,造成所謂3-tier結構。因爲客戶端基本上沒有專門的應用程序,應用程序基本上都在服務器端。因爲客戶端沒有程序,應用程序的升級和維護均可以在服務器端完成,升級維護方便。瀏覽器
2、二者的區別與聯繫安全
C/S 架構即「客戶端-服務器」 架構。這裏的「客戶端」能夠是有 GUI (圖形用戶界面)的定製軟件,也能夠是瀏覽器,甚至能夠是經過 SSH 訪問服務器的命令行腳本。只要是客戶端經過訪問服務器直接調取計算或者存儲資源的,通通都是 C/S 架構,不能單純的從APP或者網站進行區別,即所謂的 B/S架構實際上是 C/S 架構的一種特殊的實現形式。服務器
網絡上從硬件、網絡、維護、數據安全等方面對二者的區別分析以下:網絡
1.網絡環境:
Client/Server是創建在局域網的基礎上的.Browser/Server是創建在廣域網的基礎上的.
2.硬件環境不一樣:
C/S 通常創建在專用的網絡上,小範圍裏的網絡環境,局域網之間再經過專門服務器提供鏈接和數據交換服務.
B/S 創建在廣域網之上的,沒必要是專門的網絡硬件環境,例與電話上網,租用設備.信息本身管理.有比C/S更強的適應範圍,通常只要有操做系統和瀏覽器就行
對安全要求不一樣
C/S 通常面向相對固定的用戶羣,對信息安全的控制能力很強.通常高度機密的信息系統採用C/S 結構適宜.能夠經過B/S發佈部分可公開信息.
B/S 創建在廣域網之上,對安全的控制能力相對弱,面向是不可知的用戶羣.
3.程序架構不一樣
C/S 程序能夠更加註重流程,能夠對權限多層次校驗,對系統運行速度能夠較少考慮.
B/S 對安全以及訪問速度的多重的考慮,創建在須要更加優化的基礎之上.比C/S有更高的要求 B/S結構的程序架構是發展的趨勢,從MS的.Net系列的BizTalk 2000 Exchange 2000等,全面支持網絡的構件搭建的系統.SUN 和IBM推的JavaBean 構件技術等,使 B/S更加成熟.
4.軟件重用不一樣
C/S 程序能夠不可避免的總體性考慮,構件的重用性不如在B/S要求下的構件的重用性好.
B/S 對的多重結構,要求構件相對獨立的功能.可以相對較好的重用.就入買來的餐桌能夠再利用,而不是作在牆上的石頭桌子
5.系統維護不一樣
系統維護是軟件生存週期中,開銷大,-------重要
C/S 程序因爲總體性,必須總體考察,處理出現的問題以及系統升級.升級難.多是再作一個全新的系統
B/S 構件組成,方面構件個別的更換,實現系統的無縫升級.系統維護開銷減到最小.用戶從網上本身下載安裝就能夠實現升級.
6.處理問題不一樣
C/S 程序能夠處理用戶面固定,而且在相同區域,安全要求高需求,與操做系統相關.應該都是相同的系統
B/S 創建在廣域網上,面向不一樣的用戶羣,分散地域,這是C/S沒法做到的.與操做系統平臺關係最小.
7.用戶接口不一樣
C/S 可能是創建的Window平臺上,表現方法有限,對程序員廣泛要求較高
B/S 創建在瀏覽器上,有更加豐富和生動的表現方式與用戶交流.而且大部分難度減低,減低開發成本.
8.信息流不一樣
C/S 程序通常是典型的中央集權的機械式處理,交互性相對低
B/S 信息流向可變化,B-B B-C B-G等信息、流向的變化,更象交易中心
我的理解:
BS架構:支持不少人訪問(甚至包括陌生人,遊客等),收到需求時直接從服務器獲取數據迴應,不須要信息的實時性,只在請求發生時進行響應,但數據須要長期有效性。B/S最大優點爲客戶端免維護,適用於用戶羣龐大,或客戶需求經長髮生變化的狀況.
CS架構:信息有着一對一,點對點的轉發,單線傳輸,實時轉發的特性的,服務器只作轉發功能,大量的工做在客戶端,能夠減輕服務器端壓力,若是用戶的需求特別複雜,用C/S.