C/S結構與B/S結構的特點分析

shbwf發表於2013-09-13
C/S結構與B/S結構的特點分析
  為了區別於傳統的C/S模式,才特意將其稱為B/S模式。認識到這些結構的特徵,對於系統的選型而言是很關鍵的。
  1、系統的效能
  在系統的效能方面,B/S佔有優勢的是其異地瀏覽和資訊採集的靈活性。任何時間、任何地點、任何系統,只要可以使用瀏覽器上網,就可以使用B/S系統的終端。
  不過,採用B/S結構,客戶端只能完成瀏覽、查詢、資料輸入等簡單功能,絕大部分工作由伺服器承擔,這使得伺服器的負擔很重。採用C/S結構時,客戶端和伺服器端都能夠處理任務,這雖然對客戶機的要求較高,但因此可以減輕伺服器的壓力。而且,由於客戶端使用瀏覽器,使得網上釋出的資訊必須是以HTML格式為主,其它格式檔案多半是以附件的形式存放。而HTML格式檔案(也就是Web頁面)不便於編輯修改,給檔案管理帶來了許多不便。
[@more@]
  C/S結構與B/S結構的特點分析
  為了區別於傳統的C/S模式,才特意將其稱為B/S模式。認識到這些結構的特徵,對於系統的選型而言是很關鍵的。
  1、系統的效能
  在系統的效能方面,B/S佔有優勢的是其異地瀏覽和資訊採集的靈活性。任何時間、任何地點、任何系統,只要可以使用瀏覽器上網,就可以使用B/S系統的終端。
  不過,採用B/S結構,客戶端只能完成瀏覽、查詢、資料輸入等簡單功能,絕大部分工作由伺服器承擔,這使得伺服器的負擔很重。採用C/S結構時,客戶端和伺服器端都能夠處理任務,這雖然對客戶機的要求較高,但因此可以減輕伺服器的壓力。而且,由於客戶端使用瀏覽器,使得網上釋出的資訊必須是以HTML格式為主,其它格式檔案多半是以附件的形式存放。而HTML格式檔案(也就是Web頁面)不便於編輯修改,給檔案管理帶來了許多不便。
  2、系統的開發
  C/S結構是建立在中介軟體產品基礎之上的,要求應用開發者自己去處理事務管理、訊息佇列、資料的複製和同步、通訊安全等系統級的問題。這對應用開發者提出了較高的要求,而且迫使應用開發者投入很多精力來解決應用程式以外的問題。這使得應用程式的維護、移植和互操作變得複雜。如果客戶端是在不同的作業系統上,C/S結構的軟體需要開發不同版本的客戶端軟體。但是,與B/S結構相比,C/S技術發展歷史更為“悠久”。從技術成熟度及軟體設計、開發人員的掌握水平來看,C/S技術應是更成熟、更可靠的。
  3、系統的升級維護
  C/S系統的各部分模組中有一部分改變,就要關聯到其它模組的變動,使系統升級成本比較大。B/S與C/S處理模式相比,則大大簡化了客戶端,只要客戶端機器能上網就可以。對於B/S而言,開發、維護等幾乎所有工作也都集中在伺服器端,當企業對網路應用進行升級時,只需更新伺服器端的軟體就可以,這減輕了異地使用者系統維護與升級的成本。如果客戶端的軟體系統升級比較頻繁,那麼B/S架構的產品優勢明顯——所有的升級操作只需要針對伺服器進行,這對那些點多面廣的應用是很有價值的,例如一些招聘網站就需要採用B/S模式,客戶端分散,且應用簡單,只需要進行簡單的瀏覽和少量資訊的錄入。
  4、C/S模式的優點和缺點
  ★C/S模式的優點
  ●由於客戶端實現與伺服器的直接相連,沒有中間環節,因此響應速度快。
  ●操作介面漂亮、形式多樣,可以充分滿足客戶自身的個性化要求。
  ●C/S結構的管理資訊系統具有較強的事務處理能力,能實現複雜的業務流程。
  ★C/S模式的缺點
  ●需要專門的客戶端安裝程式,分佈功能弱,針對點多面廣且不具備網路條件的使用者群體,不能夠實現快速部署安裝和配置。
  ●相容性差,對於不同的開發工具,具有較大的侷限性。若採用不同工具,需要重新改寫程式。
  ●開發成本較高,需要具有一定專業水準的技術人員才能完成。
  5、B/S模式的優點和缺點
  ★B/S模式的優點
  ●具有分佈性特點,可以隨時隨地進行查詢、瀏覽等業務處理。
  ●業務擴充套件簡單方便,通過增加網頁即可增加伺服器功能。
  ●維護簡單方便,只需要改變網頁,即可實現所有使用者的同步更新。
  ●開發簡單,共享性強。
  ★B/S模式的缺點
  ●個性化特點明顯降低,無法實現具有個性化的功能要求。
  ●操作是以滑鼠為最基本的操作方式,無法滿足快速操作的要求。
  ●頁面動態重新整理,響應速度明顯降低。
  ●無法實現分頁顯示,給資料庫訪問造成較大的壓力。
  ●功能弱化,難以實現傳統模式下的特殊功能要求。
  近年來,隨著軟硬體技術發展和人們意識的提高,Web應用得到廣泛的普及,一方面在網際網路浪潮的推動下,基於網際網路的資訊共享和電子商務不斷髮展,像新浪、搜狐、8848等大型網站不斷湧現出來,另一方面隨著Java、CGI等網路技術的成熟,基於B/S結構的大型軟體逐漸顯示出巨大的優勢。同時,也就產生了一個焦點問題,什麼樣的伺服器能夠滿足不同使用者的需求,怎麼能夠保證Web伺服器能夠長期穩定地執行,為了滿足這樣的需求Web測試也就同樣變得十分重要。
  當前Web測試主要通過Web測試工具加上良好的測試案例完成的,我們認為主要有以下兩種測試型別:基準測試、非基準測試
  基準測試:主要指測試工具已經提供了標準的測試案例庫,包括靜態測試案例(HTM、JPG)、動態測試案例(CGI)和SSL測試案例等。這類測試工具分為測試案例庫、控制檯程式、客戶端程式三個部分。它的原理是,Web伺服器開啟特定的Web服務程式,並且執行上述測試案例,由控制檯程式控制各個客戶端按照一定的指令碼訪問順序遍歷Web伺服器的各個測試案例,每個請求完成後,各個客戶端向控制檯報告訪問的結構,當一個測試集完成後由控制檯將所有的資訊綜合統計,測試過程中控制檯還需要採用SNMP協議對伺服器進行實時監控,綜合兩個方面的因素可以反映出Web伺服器在不同壓力情況下的綜合效能。
  在測試過程中,主要影響測試結果的因素有網路環境、客戶端效能。目前無論IA架構伺服器還是SUN、HP、IBM的UNIX伺服器效能都越來越優越,有可能出現在100MB網路下不能夠提供足夠的網路壓力,有可能網路首先出現瓶頸,這樣就需要擴充套件到1000MB網路環境或使用多個網段對伺服器提供足夠的壓力,而穩定的客戶端對於測試來說也是十分重要的,因為客戶端如果出現效能下降,就會造成系統崩潰或者不能提供穩定的測試壓力從而導致測試結果出現偏差;一臺客戶端到底能夠穩定執行多少數量的連線是根據不同的硬體配置和作業系統決定的,因此對客戶端的硬體資源進行監控是保證客戶端可以穩定執行的必要手段。
  由於這類測試工具使用的是工具開發商提供的測試案例集,雖然也具有一定的權威性,但是目前再完美的測試案例集也不能涵蓋所有的Web應用情況,所以也不能夠完全體現出Web伺服器完整的效能,因此該類測試工具更加適合IT媒體對Web類伺服器軟硬體的橫向對比測試,在測試物件和環境大體統一的情況下,可以比較出各個測試物件的效能差異。而對於有實際應用背景的Web伺服器進行測試,使用這樣的測試工具就不適合了,我們在以後的測試漫談中會繼續介紹。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/11323760/viewspace-1060908/,如需轉載,請註明出處,否則將追究法律責任。

相關文章