C/S結構定義:
C/S結構(Client/Server結構)是大家熟知的客戶機和伺服器結構,它是軟體系統體繫結構。
C/S又稱Client/Server或客戶/伺服器模式。伺服器通常採用高效能的PC、工作站或小型機,並採用大型資料庫系統,如ORACLE、SYBASE、InfORMix或 SQL Server。用戶端需要安裝專用的用戶端軟體。
C/S結構層次:
目前大多數應用軟體系統都是Client/Server形式的兩層結構,由於現在的軟體應用系統正在向分布式的Web應用發展,Web和Client/Server 應用都可以進行同樣的業務處理,應用不同的模組共用邏輯組件。
C/S結構優點:
C/S結構的優點是能充分發揮用戶端PC的處理能力,很多工作可以在用戶端處理後再提交給伺服器。對應的優點就是用戶端響應速度快。
C/S結構優勢:
1. 應用伺服器運行資料負荷較輕。
最簡單的C/S體繫結構的資料庫應用由兩部分組成,即客戶應用程式和資料庫伺服器程式。二者可分別稱為前景程式與背景程式。運行資料庫伺服器程式的機器,也稱為應用伺服器。一旦伺服器程式被啟動,就隨時等待響應客戶程式發來的請求;客戶應用程式運行在使用者自己的電腦上,對應於資料庫伺服器,可稱為客戶電腦,當需要對資料庫中的資料進行任何操作時,客戶程式就自動地尋找伺服器程式,並向其發出請求,伺服器程式根據預定的規則作出應答,送回結果,應用伺服器運行資料負荷較輕。
2. 資料的儲存管理功能較為透明。
在資料庫應用中,資料的儲存管理功能,是由伺服器程式和客戶應用程式分別獨立進行的,前台應用可以違反的規則,並且通常把那些不同的(不管是已知還是未知的)運行資料,在伺服器程式中不集中實現,例如訪問者的許可權,編號可以重複、必須有客戶才能建立定單這樣的規則。所有這些,對於工作在前景程式上的終端使用者,是“透明”的,他們無須過問(通常也無法幹涉)背後的過程,就可以完成自己的一切工作。在客戶服務器架構的應用中,前景程式不是非常“瘦小”,麻煩的事情都交給了伺服器和網路。在C/S體系的下,資料庫不能真正成為公用、專業化的倉庫,它受到獨立的專門管理。
C/S結構劣勢:
1. 高昂的維護成本且投資大。
用戶端需要安裝專用的用戶端軟體。首先涉及到安裝的工作量,其次任何一台電腦出問題,如病毒、硬體損壞,都需要進行安裝或維護。特別是有很多分部或專賣店的情況,不是工作量的問題,而是路程的問題。還有,系統軟體升級時,每一台客戶機需要重新安裝,其維護和升級成本非常高。
2. 傳統的C/S結構的軟體需要針對不同的作業系統系統開發不同版本的軟體。
由於產品的更新換代十分快,代價高和低效率已經不適應工作需要。在JAVA這樣的跨平台語言出現之後,B/S架構更是猛烈衝擊C/S,並對其形成威脅和挑戰。
3. 適用範圍窄。
只適用於區域網路。而隨著互連網的飛速發展,隨處工作和分布式辦公越來越普及,這需要我們的系統具有擴充性。這種方式遠端存取需要專門的技術,同時要對系統進行專門的設計來處理分布式的資料。