详细总结BS架构和CS架构
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                详细总结BS架构和CS架构
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.                        
                                文章內容學習百度百科和博主 “向上人生”
CS架構
- 客戶端-服務器,即Client-Server(C/S)結構。C/S結構通常采取兩層結構。服務器負責數據的管理,客戶端負責完成與用戶的交互任務。
CS結構
- 在C/S結構中,應用程序分為兩部分:服務器部分和客戶端部分。服務器部分是多個用戶共享的信息與功能,執行后臺服務,如控制共享數據庫的操作等;客戶端部分為用戶所專有,負責執行前臺功能,在出錯提示、在線幫助等方面都有強大的功能,并且可以在子程序間自由切換。
- 客戶端通過局域網與服務器相連,接受用戶的請求,并通過網絡向服務器提出請求,對數據庫進行操作。服務器接受客戶端的請求,將數據提交給客戶端,客戶端將數據進行計算并將結果呈現給用戶。服務器還要提供完善安全保護及對數據完整性的處理等操作,并允許多個客戶端同時訪問服務器,這就對服務器的硬件處理數據能力提出了很高的要求。
- C/S結構在技術上已經很成熟,它的主要特點是交互性強、具有安全的存取模式、響應速度快、利于處理大量數據。但是C/S結構缺少通用性,系統維護、升級需要重新設計和開發,增加了維護和管理的難度,進一步的數據拓展困難較多.
CS的優缺點
- 優點
 C/S結構的優點是能充分發揮客戶端PC的處理能力,很多工作可以在客戶端處理后再提交給服務器。對應的優點就是客戶端響應速度快。
 具體表現在以下兩點:
 (1)應用服務器運行數據負荷較輕。最簡單的C/S體系結構的數據庫應用由兩部分組成,即客戶應用程序和數據庫服務器程序。二者可分別稱為前臺程序與后臺程序。運行數據庫服務器程序的機器,也稱為應用服務器。一旦服務器程序被啟動,就隨時等待響應客戶程序發來的請求;客戶應用程序運行在用戶自己的電腦上,對應于數據庫服務器,可稱為客戶電腦,當需要對數據庫中的數據進行任何操作時,客戶程序就自動地尋找服務器程序,并向其發出請求,服務器程序根據預定的規則作出應答,送回結果,應用服務器運行數據負荷較輕。
 (2)數據的儲存管理功能較為透明。在數據庫應用中,數據的儲存管理功能,是由服務器程序和客戶應用程序分別獨立進行的,并且通常把那些不同的(不管是已知還是未知的)前臺應用所不能違反的規則,在服務器程序中集中實現,例如訪問者的權限,編號可以重復、必須有客戶才能建立訂單這樣的規則。所有這些,對于工作在前臺程序上的最終用戶,是“透明”的,他們無須過問(通常也無法干涉)背后的過程,就可以完成自己的一切工作。在客戶服務器架構的應用中,前臺程序不是非常“瘦小”,麻煩的事情都交給了服務器和網絡。在C/S體系下,數據庫不能真正成為公共、專業化的倉庫,它受到獨立的專門管理 。
- 缺點.
 維護成本高,發生一次升級,則所有客戶端的程序都需要改變。
- (1)隨著互聯網的飛速發展,移動辦公和分布式辦公越來越普及,這需要我們的系統具有擴展性。這種方式遠程訪問需要專門的技術,同時要對系統進行專門的設計來處理分布式的數據。
- (2)客戶端需要安裝專用的客戶端軟件。首先涉及到安裝的工作量,其次任何一臺電腦出問題,如病毒、硬件損壞,都需要進行安裝或維護。特別是有很多分部或專賣店的情況,不是工作量的問題,而是路程的問題。還有,系統軟件升級時,每一臺客戶機需要重新安裝,其維護和升級成本非常高。
- (3)對客戶端的操作系統一般也會有限制。可能適應于Win98, 但不能用于Windows2000或Windows XP。或者不適用于微軟新的操作系統等等,更不用說Linux、Unix等。[1](目前,大多數客戶端都適應win XP系統,但對微軟新的操作系統或其他開發系統就兼用不了。)
- (4)傳統的C/S體系結構雖然采用的是開放模式,但這只是系統開發一級的開放性,在特定的應用中無論是Client端還是Server端都還需要特定的軟件支持。由于沒能提供用戶真正期望的開放環境,C/S結構的軟件需要針對不同的操作系統開發不同版本的軟件, 加之產品的更新換代十分快,已經很難適應百臺電腦以上局域網用戶同時使用。而且代價高, 效率低 。
- (5)C/S架構的劣勢還有高昂的維護成本且投資大。首先,采用C/S架構,要選擇適當的數據庫平臺來實現數據庫數據的真正“統一”,使分布于兩地的數據同步完全交由數據庫系統去管理,但邏輯上兩地的操作者要直接訪問同一個數據庫才能有效實現,有這樣一些問題,如果需要建立“實時”的數據同步,就必須在兩地間建立實時的通訊連接,保持兩地的數據庫服務器在線運行,網絡管理工作人員既要對服務器維護管理,又要對客戶端維護和管理,這需要高昂的投資和復雜的技術支持,維護成本很高,維護任務量大。
- (6)傳統的C/S結構的軟件需要針對不同的操作系統系統開發不同版本的軟件,由于產品的更新換代十分快,代價高和低效率已經不適應工作需要。在JAVA這樣的跨平臺語言出現之后,B/S架構更是猛烈沖擊C/S,并對其形成威脅和挑戰。
BS架構
- B/S架構即瀏覽器和服務器架構模式,是隨著Internet技術的興起,對C/S架構的一種變化或者改進的架構。在這種架構下,用戶工作界面是通過WWW瀏覽器來實現,極少部分事務邏輯在前端(Browser)實現,但是主要事務邏輯在服務器端(Server)實現,形成所謂三層3-tier結構。B/S架構是WEB興起后的一種網絡架構模式,WEB瀏覽器是客戶端最主要的應用軟件。這種模式統一了客戶端,將系統功能實現的核心部分集中到服務器上,簡化了系統的開發、維護和使用。客戶機上只要安裝一個瀏覽器(Browser),如Netscape Navigator或Internet Explorer,服務器安裝Oracle、Sybase、Informix或 SQL Server等數據庫。瀏覽器通過Web Server同數據庫進行數據交互。 這樣就大大簡化了客戶端電腦載荷,減輕了系統維護與升級的成本和工作量,降低了用戶的總體成本(TCO)。
BS結構
- 在 B/S 結構中,每個節點都分布在網絡上,這些網絡節點可以分為瀏覽器端、服務器端和中間件,通過它們之間的鏈接和交互來完成系統的功能任務。三個層次的劃分是從邏輯上分的,在實際應用中多根據實際物理網絡進行不同的物理劃分。
- 瀏覽器端:即用戶使用的瀏覽器,是用戶操作系統的接口,用戶通過瀏覽器界面向服務器端提出請求,并對服務器端返回的結果進行處理并展示,通過界面可以將系統的邏輯功能更好的表現出來。
- 服務器端:提供數據服務,操作數據,然后把結果返回中間層,結果顯示在系統界面上。
- 中間件:這是運行在瀏覽器和服務器之間的。這層主要完成系統邏輯,實現具體的功能,接受用戶的請求并把這些請求傳送給服務器,然后將服務器的結果返回給用戶,瀏覽器端和服務器端需要交互的信息是通過中間件完成的。
BS的優缺點
- 優點
 通過一定的權限控制實現多客戶訪問的目的,交互性較強
- (1)軟件系統的改進和升級越來越頻繁,B/S架構的產品明顯體現著更為方便的特性。對一個稍微大一點單位來說,系統管理人員如果需要在幾百甚至上千部電腦之間來回奔跑,效率和工作量是可想而知的,但B/S架構的軟件只需要管理服務器就行了,所有的客戶端只是瀏覽器,根本不需要做任何的維護。無論用戶的規模有多大,有多少分支機構都不會增加任何維護升級的工作量,所有的操作只需要針對服務器進行;如果是異地,只需要把服務器連接專網即可,實現遠程維護、升級和共享。所以客戶機越來越“瘦”,而服務器越來越“胖”是將來信息化發展的主流方向。今后,軟件升級和維護會越來越容易,而使用起來會越來越簡單,這對用戶人力、物力、時間、費用的節省是顯而易見的,驚人的。因此,維護和升級革命的方式是“瘦”客戶機,“胖”服務器。
- (2)大家都知道windows在桌面電腦上幾乎一統天下,瀏覽器成為了標準配置。但在服務器操作系統上,windows并不是處于絕對的統治地位。軟件的趨勢是凡使用B/S架構的應用管理軟件,只需安裝在Linux服務器上即可,而且安全性高。所以服務器操作系統的選擇是很多的,不管選用那種操作系統都可以讓大部分人使用windows作為桌面操作系統電腦不受影響,這就使得最流行免費的Linux操作系統快速發展起來,Linux除了操作系統是免費的以外,連數據庫也是免費的,這種選擇非常盛行。
- (3)由于B/S架構管理軟件只安裝在服務器端(Server)上,網絡管理人員只需要管理服務器就行了,用戶界面主要事務邏輯在服務器(Server)端完全通過WWW瀏覽器實現,極少部分事務邏輯在前端(Browser)實現,所有的客戶端只有瀏覽器,網絡管理人員只需要做硬件維護。但是,應用服務器運行數據負荷較重,一旦發生服務器“崩潰”等問題,后果不堪設想。因此,許多單位都備有數據庫存儲服務器,以防萬一。
- 缺點
 在速度和安全性上需要花費巨大的設計成本
- (1)客戶端服務器端的交互是請求-響應模式,通常動態刷新頁面,響應速度明顯降(Ajax可以一定程度上解決這個問題)。無法實現分頁顯示,給數據庫訪問造成較大的壓力。
- (2) 在速度和安全性上需要花費巨大的設計成本。功能弱化,難以實現傳統模式下的特殊功能要求。
CS與BS的對比
- 硬件環境的比較
 CS建立在局域網的基礎上,局域網之間再通過專門服務器提供連接和數據交換服務。在CS結構中,客戶機和服務器都需要處理數據任務,這就對客戶機的硬件提出了較高的要求。BS結構建立在廣域網之上,不必配備專門的網絡硬件環境。雖然對客戶端的硬件要求不是很高,只需要運行操作系統和瀏覽器,但服務器端需要處理大量實時的數據,這就對服務器端的硬件提出了較高的要求。總體來講,BS結構相對CS結構能夠大大降低成本。
- 系統維護 、 升級的比較
 CS結構中的每一個客戶機都必須安裝和配置相關軟件,如操作系統、客戶端軟件等。當客戶端軟件需要維護、升級,即使只是增加或刪除某一功能,也需要逐一將CS結構中所有的客戶端軟件卸載并重新安裝。如果不進行升級,可能會碰到客戶端軟件版本不一致而無法工作的情況。BS結構中每一個客戶端只需通過瀏覽器便可進行各種信息的處理,而不需要安裝客戶端軟件,維護、升級等幾乎所有的工作都在服務器端進行,如果系統需要升級,只需要將升級程序安裝在服務器端即可。
- 系統安全的比較
 CS結構采取點對點的結構模式,數據的處理是基于安全性較高的網絡協議之上。另外,CS一般面向相對固定的用戶群,它可以對權限進行多層次的校驗,對信息安全的控制能力很強,安全性可以得到很好的保障。BS結構采取一點對多點、多點對多點的開放式結構模式,其安全性只能靠數據服務器上的管理密碼的數據庫來保證,況且網絡安全技術尚未成熟,需不斷發現、修補各種安全漏洞。
- 用戶接口的比較
 CS結構多是建立在Windows平臺上,表現方法有限,對程序員普遍要求較高。BS結構是建立在瀏覽器上,有更加豐富和生動的表現方式與用戶交流。
- 處理上的比較
 CS結構建立在局域網上,處理面向在相同區域的比較固定的用戶群,滿足對安全要求高的需求,與操作系統相關。BS結構建立在廣域網上,處理面向分散的地域的不同的用戶群,與操作系統關系較少。另外,BS的處理模式與CS處理模式相比,簡化了客戶端,只需要安裝操作系統、瀏覽器即可。
- 軟件重用的比較
 CS結構軟件可從不可避免的整體性考慮,構件的重用性不如在BS要求下構建的重用性好。BS對應的是多重結構,要求構建相對獨立的功能,能夠相對較好的重用。
- 系統速度的比較
 CS結構在邏輯結構上比BS結構少一層,對于相同的任務,CS結構完成的速度總比BS結構快,使得CS更利于處理大量數據。另外,由于客戶端實現與服務器的直接相連,沒有中間環節,因此響應速度快。
- 交互性與信息流的比較
 CS結構的交互性很強,在CS結構中,客戶機有完整的客戶端軟件,能處理大量的、實時的數據流,響應速度快。BS結構雖然可以提供一定的交互能力,但交互能力很有限。CS的信息流單一,而BS結構可處理如B-B、B-C、B-G等信息并具有流向的變化。
總結
- CS響應速度快,安全性強,一般應用于局域網中,但是開發維護成本高;BS可以實現跨平臺,客戶端維護成本低,但是響應速度較慢,效率不如CS。
總結
以上是生活随笔為你收集整理的详细总结BS架构和CS架构的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 如何在Eclipse里方便地进行mark
- 下一篇: 使用SAP CRM中间件XIF(Exte
