




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第二章 數(shù)據(jù)庫應(yīng)用系統(tǒng)的層次體系,當(dāng)前,Internet/intranet技術(shù)發(fā)展異常迅速,越來越多的數(shù)據(jù)庫應(yīng)用軟件運(yùn)行在Internet/Intranet環(huán)境下。在此之前,數(shù)據(jù)庫應(yīng)用系統(tǒng)的發(fā)展經(jīng)歷了單機(jī)結(jié)構(gòu)、集中式結(jié)構(gòu)、C/S結(jié)構(gòu),之后,隨著Internet網(wǎng)絡(luò)的普及,又出現(xiàn)了瀏覽器/服務(wù)器模式即B/S結(jié)構(gòu)與多層結(jié)構(gòu)。,1、單機(jī)結(jié)構(gòu) 所有功能都存在于單臺PC機(jī)上,因而適合未聯(lián)網(wǎng)用戶、個(gè)人用戶等。目前比較流行的DBMS有Microsoft Acess,Visual Foxpro等。 2、集中式數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)也叫主機(jī)/終端模式 是一種采用大型主機(jī)和多個(gè)終端相結(jié)合的系統(tǒng)。這種結(jié)構(gòu)將操作系統(tǒng)、應(yīng)用程
2、序、數(shù)據(jù)庫系統(tǒng)等數(shù)據(jù)和資源均放在大型主機(jī)上,而連接在主機(jī)上的許多終端,只是作為主機(jī)的一種輸入輸出設(shè)備。 這是數(shù)據(jù)庫系統(tǒng)初期最流行的結(jié)構(gòu),隨計(jì)算機(jī)網(wǎng)絡(luò)的興起和PC機(jī)性能的大幅提高且價(jià)格又大幅降低,這種傳統(tǒng)的集中式數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)已被C/S數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)所代替。,3、客戶機(jī)/服務(wù)器結(jié)構(gòu) 二層C/S結(jié)構(gòu) 是當(dāng)前非常流行的數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu),在這種結(jié)構(gòu)中,客戶機(jī)提出請求,服務(wù)器對客戶機(jī)的服務(wù)請求作出回答。它把界面和數(shù)據(jù)處理操作分開在前端(客戶端)和后端(服務(wù)器端),這個(gè)主要特點(diǎn)使得C/S系統(tǒng)的工作速度主要取決于進(jìn)行大量數(shù)據(jù)操作的服務(wù)器,而不是前端的硬件設(shè)備;同時(shí)也大大降低了對網(wǎng)絡(luò)傳輸速度的要求,因?yàn)樗恍杩?/p>
3、戶端把服務(wù)請求發(fā)送給數(shù)據(jù)庫服務(wù)器,數(shù)據(jù)庫服務(wù)器只把服務(wù)結(jié)果傳回前端。,C/S結(jié)構(gòu),在設(shè)計(jì)時(shí),對數(shù)據(jù)可能有如下不同處理形式。 (l) 在處理時(shí),客戶機(jī)先向服務(wù)器(文件)索取數(shù)據(jù),然后釋放數(shù)據(jù)庫,即客戶機(jī)發(fā)出的是文件請求,在客戶機(jī)端處理數(shù)據(jù),最后將結(jié)果送回服務(wù)器。這種處理方式的缺點(diǎn)很明顯:所有的應(yīng)用處理都在客戶端完成,這就要求客戶端的計(jì)算機(jī)必須有足夠的能力,以便執(zhí)行需要的任何程序。更為糟糕的是,由于所有的處理均在客戶端完成,每次運(yùn)行時(shí)都要將文件整體傳送到客戶端,然后才能執(zhí)行。如:Student表中有30,000條記錄,客戶端發(fā)出命令:,Select * From Student Where Sno
4、=200101 這條命令將要求服務(wù)器將Student表中的所有記錄傳送到客戶端,然后在客戶端執(zhí)行查詢,結(jié)果只用到一條記錄;如果查詢的記錄不存在,網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)實(shí)際上是無用的。 隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,尤其是以Internet為代表的廣域網(wǎng)上的應(yīng)用已成為必須。如此大的數(shù)據(jù)傳輸量是不可想像的。 因此,人們提出了在服務(wù)器中能夠執(zhí)行部分代碼的客戶機(jī)/服務(wù)器結(jié)構(gòu)。 即第二種數(shù)據(jù)處理形式:,(2)在處理時(shí),客戶機(jī)接受用戶要求,并發(fā)給服務(wù)器,在服務(wù)器端處理,最后將結(jié)果傳回客戶機(jī)顯示或打印。這種處理方式網(wǎng)絡(luò)通信量較小??蛻魴C(jī)向服務(wù)器發(fā)出的是處理請求,而不是文件請求,處理請求中的代碼在服務(wù)器端執(zhí)行后向客戶機(jī)傳送處理
5、后的結(jié)果。 這樣為了一特定的任務(wù),客戶機(jī)上的程序可以和服務(wù)器上的程序協(xié)同工作。一般客戶機(jī)端的代碼用于完成用戶的輸入、輸出及數(shù)據(jù)的檢查,而服務(wù)器端的代碼完成對數(shù)據(jù)庫的操作。,客戶機(jī)/服務(wù)器結(jié)構(gòu)的另一個(gè)主要特點(diǎn)在于前、后臺軟件、硬件平臺的無關(guān)性。數(shù)據(jù)庫服務(wù)器上的數(shù)據(jù)庫管理系統(tǒng)集中負(fù)責(zé)管理數(shù)據(jù),它向客戶端提供一個(gè)開放的使用環(huán)境,客戶端通過數(shù)據(jù)庫接口,如ODBC(開放數(shù)據(jù)庫連接)和SQL語言訪問數(shù)據(jù)庫,也就是說,不管客戶端采用什么樣的硬件和軟件,它只要能夠通過網(wǎng)絡(luò)和數(shù)據(jù)庫接口程序連接到服務(wù)器,就可對數(shù)據(jù)庫進(jìn)行訪問。 在客戶機(jī)/服務(wù)器結(jié)構(gòu)中,常把客戶機(jī)稱為前臺,而把服務(wù)器端稱為后臺。前臺應(yīng)用程序的功能包
6、括用戶界面、接收用戶數(shù)據(jù)、處理應(yīng)用邏輯、向后臺發(fā)出請求、同時(shí)接收后臺返回的結(jié)果,最后再將返回的結(jié)果,按一定的格式或方式顯示給用戶。而后臺服務(wù)器則負(fù)責(zé)共享外部設(shè)備、存取共享數(shù)據(jù)、響應(yīng)前臺客戶端的請求并回送結(jié)果等工作。前臺的應(yīng)用程序和數(shù)據(jù)一般是用戶專用的,而后臺的數(shù)據(jù)和代碼是所有用戶可以共享的。 由于數(shù)據(jù)庫服務(wù)器不僅要管理共享數(shù)據(jù),保證數(shù)據(jù)的完整性,還要執(zhí)行一部分代碼,完成客戶端的一些處理請求,故對用于服務(wù)器的計(jì)算機(jī)提出較高的要求。最好要采用一臺專用的服務(wù)器,有較快的處理速度,有大容量的硬盤和內(nèi)存,支持磁帶等大容量的存儲設(shè)備。,總之,兩層C/S結(jié)構(gòu)的基本工作方式是客戶程序向數(shù)據(jù)庫服務(wù)器發(fā)送SQL請
7、求,服務(wù)器返回?cái)?shù)據(jù)或結(jié)果。 具體有兩種實(shí)現(xiàn)方式: 一種是以客戶為中心,客戶完成表示部分和應(yīng)用邏輯部分,而服務(wù)器完成數(shù)據(jù)訪問部分。適用于應(yīng)用相對簡單、數(shù)據(jù)訪問量不是很大的情況; 另一種是以服務(wù)器為中心,把一些重要的應(yīng)用邏輯部分放到服務(wù)器上,充分利用服務(wù)器的計(jì)算能力,減少網(wǎng)絡(luò)上需要傳送的數(shù)據(jù)。通常以存儲過程和觸發(fā)器的形式出現(xiàn)。(觸發(fā)器(trigger):是數(shù)據(jù)庫系統(tǒng)中,一個(gè)在插入、刪除、修改操作之后運(yùn)行的記錄級事件代碼。不同的事件可以對應(yīng)不同的動作。)但存儲過程都依賴于特定數(shù)據(jù)庫,不同數(shù)據(jù)庫之間很難移植,而三層C/S結(jié)構(gòu)可以很好地解決這個(gè)問題。,客戶機(jī),應(yīng)用服務(wù)器,數(shù)據(jù)庫服務(wù)器,由于兩層結(jié)構(gòu)的客戶
8、機(jī)/服務(wù)器系統(tǒng)本身固有的缺陷,使得它不能應(yīng)用于一些大型、結(jié)構(gòu)較為復(fù)雜的系統(tǒng)中,故出現(xiàn)了三層結(jié)構(gòu)的客戶機(jī)/服務(wù)器系統(tǒng),將兩層結(jié)構(gòu)中服務(wù)器部分和客戶端部分的應(yīng)用單獨(dú)劃分出來。即采用“客戶機(jī)應(yīng)用服務(wù)器數(shù)據(jù)庫服務(wù)器”結(jié)構(gòu)(如圖所示)。典型的數(shù)據(jù)庫應(yīng)用可分為三部分:表示部分、應(yīng)用邏輯和數(shù)據(jù)訪問部分。,三層C/S結(jié)構(gòu),其中,應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器可位于同一主機(jī),也可位于不同主機(jī)。,三層C/S結(jié)構(gòu),客戶機(jī)是應(yīng)用的用戶接口部分,負(fù)責(zé)用戶與應(yīng)用程序的交互,接受用戶的輸入請求,將結(jié)果以適當(dāng)?shù)男问剑ㄈ鐖D形、報(bào)表)返回給用戶。運(yùn)行在客戶機(jī)端的軟件也稱為表示層軟件。 應(yīng)用服務(wù)器存放業(yè)務(wù)邏輯層(也稱為功能層)軟件,是應(yīng)
9、用邏輯處理的核心,是具體業(yè)務(wù)的實(shí)現(xiàn)。它能響應(yīng)客戶機(jī)請求,完成業(yè)務(wù)處理或復(fù)雜計(jì)算。若有數(shù)據(jù)庫訪問任務(wù)時(shí),應(yīng)用服務(wù)器層可根據(jù)客戶機(jī)的要求向數(shù)據(jù)庫服務(wù)器發(fā)送SQL指令。應(yīng)用邏輯變得復(fù)雜或增加新的應(yīng)用時(shí),可增加新的應(yīng)用服務(wù)器。 數(shù)據(jù)庫服務(wù)器便是用來執(zhí)行功能層送來的SQL指令,完成數(shù)據(jù)的存儲、訪問和完整性約束等。操作完成后再通過應(yīng)用服務(wù)器向客戶機(jī)返回操作結(jié)果。,隨著Internet技術(shù)和WEB技術(shù)的廣泛應(yīng)用,C/S結(jié)構(gòu)已無法滿足人們的需要。因?yàn)樵诘湫虲/S體系中,通常為客戶安裝前端應(yīng)用程序的做法已不再現(xiàn)實(shí),并且限制客戶端工作環(huán)境只能基于Windows、Macintosh或UNIX等亦不切實(shí)際。于是基于瀏
10、覽器/服務(wù)器結(jié)構(gòu)的系統(tǒng)應(yīng)運(yùn)而生。 采用B/S結(jié)構(gòu)后,在客戶端只需安裝一個(gè)通用的瀏覽器即可,不再受具體操作系統(tǒng)和硬件的制約,實(shí)現(xiàn)了跨平臺的應(yīng)用?;贐/S結(jié)構(gòu)的典型應(yīng)用通常采用三層結(jié)構(gòu):“瀏覽器WEB服務(wù)器數(shù)據(jù)庫服務(wù)器”,如下圖:,4、瀏覽器/服務(wù)器結(jié)構(gòu)(Browser/Server),超 鏈 接,運(yùn)行腳本程序 產(chǎn)生HTML文件,執(zhí)行SQL查詢 返回查詢結(jié)果,URL,SQL查詢,HTML 文件,查詢結(jié)果,客戶機(jī)瀏覽器,WEB服務(wù)器,數(shù)據(jù)庫服務(wù)器,B/S模式的工作原理:通過瀏覽器以超文本的形式向Web服務(wù)器提出訪問數(shù)據(jù)庫的請求,Web服務(wù)器接受客戶請求后,激活對應(yīng)的CGI程序?qū)⒊谋綡TML語言轉(zhuǎn)
11、化為SQL語法,將這個(gè)請求交給數(shù)據(jù)庫,數(shù)據(jù)庫服務(wù)器得到請求后,進(jìn)行數(shù)據(jù)處理,然后將處理結(jié)果集返回給CGI程序。CGI再將結(jié)果轉(zhuǎn)化為HTML,并由Web服務(wù)器轉(zhuǎn)發(fā)給請求方的瀏覽器。 在B/S模式中,客戶端的標(biāo)準(zhǔn)配置是瀏覽器,如IE;業(yè)務(wù)功能處理由獨(dú)立的應(yīng)用服務(wù)器處理,Web服務(wù)器成為應(yīng)用處理的標(biāo)準(zhǔn)配置;數(shù)據(jù)處理仍然由數(shù)據(jù)庫服務(wù)器處理。,從本質(zhì)上講,B/S結(jié)構(gòu)與傳統(tǒng)的C/S結(jié)構(gòu)都是以同一種請求和應(yīng)答方式來執(zhí)行應(yīng)用的,區(qū)別主要在于:C/S是一種二層或三層結(jié)構(gòu)模式,其客戶端集中了大量應(yīng)用軟件,而B/S是一種基于超鏈接(HyperLink)、HTML、Java的三級或多級C/S結(jié)構(gòu),客戶端僅需單一的瀏覽
12、器軟件,是一種全新的體系結(jié)構(gòu),解決了跨平臺問題。到目前,這兩種結(jié)構(gòu)在不同方面都有著廣泛的應(yīng)用。雖然C/S結(jié)構(gòu)在Internet環(huán)境下明顯不如B/S結(jié)構(gòu)具有優(yōu)勢,但它在局域網(wǎng)環(huán)境下仍具有優(yōu)勢。,B/S結(jié)構(gòu)與傳統(tǒng)的C/S結(jié)構(gòu)的區(qū)別,多層結(jié)構(gòu)應(yīng)用軟件與傳統(tǒng)的兩層結(jié)構(gòu)應(yīng)用軟件相比,有可伸縮性好、可管理性強(qiáng)、安全性高、軟件重用性好等諸多優(yōu)點(diǎn),如何在Internet/Intranet環(huán)境下構(gòu)建應(yīng)用軟件體系結(jié)構(gòu)就成為一個(gè)非常重要的問題,也是現(xiàn)今軟件體系研究的一個(gè)新熱點(diǎn)。 目前各種技術(shù)層出不窮,從最初的靜態(tài)HTML頁面、簡單的CGI網(wǎng)關(guān)程序、Java Applet程序到現(xiàn)在的ASP等Web數(shù)據(jù)庫技術(shù),還有動態(tài)的Java在線游戲及PHP技術(shù)等。,5、Internet/Intranet 信息系統(tǒng)多層體系結(jié)構(gòu),SUN公司提出的多層應(yīng)用體系包括四層:客戶層、頂端We
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030高空作業(yè)系統(tǒng)行業(yè)市場深度研究與戰(zhàn)略咨詢分析報(bào)告
- 企業(yè)內(nèi)外部資源整合戰(zhàn)略
- 2025至2030復(fù)合材料產(chǎn)業(yè)發(fā)展趨勢分析與未來投資戰(zhàn)略咨詢研究報(bào)告
- 工廠生產(chǎn)安全會議紀(jì)要范文
- 師徒結(jié)對徒弟實(shí)訓(xùn)安排計(jì)劃
- 人教版八年級數(shù)學(xué)下冊教學(xué)研究計(jì)劃
- 2024-2025學(xué)年北師大版八年級數(shù)學(xué)下冊課件編寫計(jì)劃
- 2025年中國澆鑄型過濾網(wǎng)行業(yè)市場發(fā)展前景及發(fā)展趨勢與投資戰(zhàn)略研究報(bào)告
- 中國家具五金配件行業(yè)調(diào)查報(bào)告
- 2025年中國高端裝備制造市場競爭格局及投資戰(zhàn)略規(guī)劃報(bào)告
- 軍標(biāo)類型整理文檔
- 山東中醫(yī)藥大學(xué)2020-2021學(xué)年內(nèi)科護(hù)理學(xué)試題及答案1
- 公司制成檢驗(yàn)記錄表
- DB32T 4174-2021 城市居住區(qū)和單位綠化標(biāo)準(zhǔn)
- 基本原理與性能特點(diǎn)多自由度電磁軸承課件
- Q∕SY 1836-2015 鍋爐 加熱爐燃油(氣)燃燒器及安全聯(lián)鎖保護(hù)裝置檢測規(guī)范
- 北京輸變電工程標(biāo)準(zhǔn)工藝應(yīng)用圖冊(圖文并茂)
- 儀器使用記錄表
- 石河子大學(xué)化學(xué)化工學(xué)院學(xué)院綜合測評方案-理學(xué)院
- 《汽車電工電子技術(shù)》全套教案(完整版)
- 國家職業(yè)技能標(biāo)準(zhǔn) (2021年版) 嬰幼兒發(fā)展引導(dǎo)員
評論
0/150
提交評論