客戶機(jī)服務(wù)器模式與分布式數(shù)據(jù)庫(kù).ppt_第1頁(yè)
客戶機(jī)服務(wù)器模式與分布式數(shù)據(jù)庫(kù).ppt_第2頁(yè)
客戶機(jī)服務(wù)器模式與分布式數(shù)據(jù)庫(kù).ppt_第3頁(yè)
客戶機(jī)服務(wù)器模式與分布式數(shù)據(jù)庫(kù).ppt_第4頁(yè)
客戶機(jī)服務(wù)器模式與分布式數(shù)據(jù)庫(kù).ppt_第5頁(yè)
已閱讀5頁(yè),還剩51頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第十三章 客戶機(jī)/服務(wù)器模式與分布式數(shù)據(jù)庫(kù),C/S計(jì)算模式,概念 客戶機(jī)/服務(wù)器概念最早用于軟件體系結(jié)構(gòu) 提出請(qǐng)求的應(yīng)用程序 服務(wù)應(yīng)用的服務(wù)程序 協(xié)作式處理方式 客戶機(jī)和服務(wù)器都參與一個(gè)應(yīng)用程序的處理 軟件成分相互協(xié)作完成特定應(yīng)用功能 請(qǐng)求/服務(wù)模式 硬件資源提供軟件成分相互協(xié)作的設(shè)施 客戶機(jī)/服務(wù)器模式,客戶機(jī),客戶機(jī),客戶機(jī),網(wǎng)絡(luò),應(yīng)用 服務(wù)器,通信 服務(wù)器,打印 服務(wù)器,文件 服務(wù)器,數(shù)據(jù)庫(kù) 服務(wù)器,請(qǐng)求,響應(yīng),響應(yīng),請(qǐng)求,客戶機(jī)/服務(wù)器模式,C/S環(huán)境下應(yīng)用成分的分布,4部分 界面表示邏輯 業(yè)務(wù)處理邏輯 數(shù)據(jù)處理邏輯 數(shù)據(jù)庫(kù)管理,DB,組成應(yīng)用程序的四個(gè)成分,C/S模式的體系結(jié)構(gòu)(1),服務(wù)器 提供高速大容量的存儲(chǔ)能力, 強(qiáng)大的數(shù)據(jù)處理和管理能力, 運(yùn)行多個(gè)進(jìn)程能力 文件服務(wù)器 數(shù)據(jù)庫(kù)服務(wù)器 事務(wù)服務(wù)器 文檔服務(wù)器,文件,打印機(jī),DB,客戶機(jī),中間件,服務(wù)器,客戶機(jī)/服務(wù)器模式體系結(jié)構(gòu)示意圖,文件,文件服務(wù)器,數(shù)據(jù),SQL命令,DB,數(shù)據(jù)庫(kù)服務(wù)器,GUI,應(yīng)用程序,應(yīng)用程序事務(wù),客戶機(jī),服務(wù)器,數(shù)據(jù),應(yīng)用程序 專用事務(wù),DB,事務(wù)處理服務(wù)器,數(shù)據(jù)庫(kù)服務(wù)器,C/S模式的體系結(jié)構(gòu)(2),客戶機(jī) 完成界面表示和一些業(yè)務(wù)邏輯功能, 非圖形化/圖形化(GUI)用戶接口 面向?qū)ο蠼涌?OOI) 公共應(yīng)用程序 字處理, 報(bào)表編制, 圖形軟件等 數(shù)據(jù)庫(kù)前端軟件 應(yīng)用生成和開發(fā)軟件 PowerBuilder, VisualC+等 中間件 泛指客戶機(jī)與服務(wù)器之間的軟件 數(shù)據(jù)庫(kù), 事務(wù)處理, 組件, 對(duì)象中間件等,C/S模式定位,C/S模式系統(tǒng)是介于集中式與分布式之間 集中式C/S處理環(huán)境 數(shù)據(jù)集中, 處理分布 客戶請(qǐng)求, 服務(wù)器響應(yīng)的協(xié)作方式 多服務(wù)器C/S處理環(huán)境 數(shù)據(jù)與處理都分布 一個(gè)應(yīng)用可涉及多個(gè)服務(wù)器數(shù)據(jù) 一個(gè)服務(wù)器數(shù)據(jù)可以被多個(gè)客戶機(jī)訪問 對(duì)等C/S處理環(huán)境 數(shù)據(jù)與處理都分布 站點(diǎn)可以訪問其他站點(diǎn)數(shù)據(jù)(全局應(yīng)用), 也可以訪問本地?cái)?shù)據(jù)(本地應(yīng)用),網(wǎng)絡(luò),DB,數(shù)據(jù)庫(kù)服務(wù)器,DB,數(shù)據(jù)庫(kù)服務(wù)器,DB,數(shù)據(jù)庫(kù)服務(wù)器,用戶,每個(gè)站點(diǎn)是一個(gè)單數(shù)據(jù)庫(kù)服務(wù)器Client/Server結(jié)構(gòu)的DDBS,C/S模式的特點(diǎn)(1),按功能劃分 服務(wù)器是服務(wù)的提供者, 客戶機(jī)是消費(fèi)者 共享資源 不對(duì)稱協(xié)議 客戶機(jī)主動(dòng)請(qǐng)求服務(wù), 服務(wù)器被動(dòng)等待請(qǐng)求 定位透明性 C/S軟件在客戶機(jī)方屏蔽服務(wù)器地址 混合與匹配 C/S軟件獨(dú)立于硬件或OS,C/S模式的特點(diǎn)(2),基于消息的交換 消息式服務(wù)請(qǐng)求與響應(yīng)的媒介 服務(wù)封裝 服務(wù)器決定如何完成服務(wù)請(qǐng)求消息, 消息接口不變, 升級(jí)對(duì)客戶沒有影響 可擴(kuò)展性 水平擴(kuò)展 添加或移去工作站 垂直擴(kuò)展 移植到更大更快的服務(wù)器或多服務(wù)器 完整性,C/S模式的優(yōu)缺點(diǎn)(1),優(yōu)點(diǎn) 提高了投資效率 使處理和被處理的數(shù)據(jù)更接近, 減少了網(wǎng)絡(luò)帶寬和成本的需求 具有圖形用戶界面的PC 支持和倡導(dǎo)標(biāo)準(zhǔn)化和開放系統(tǒng) 多個(gè)用戶共享硬件資源,C/S模式的優(yōu)缺點(diǎn)(2),不足之處 在集中式C/S環(huán)境, 服務(wù)器將成為瓶頸 多服務(wù)器應(yīng)用系統(tǒng)的開發(fā)和設(shè)計(jì)復(fù)雜,分布式數(shù)據(jù)(1),從集中到分布數(shù)據(jù)的轉(zhuǎn)移 將關(guān)鍵數(shù)據(jù)的多個(gè)副本置于不同站點(diǎn),提高數(shù)據(jù)的可用性, 避免“單站點(diǎn)失敗”現(xiàn)象 高效的數(shù)據(jù)訪問, 改進(jìn)數(shù)據(jù)管理性能 容易增加應(yīng)用程序, 用戶數(shù)目和擴(kuò)大規(guī)模 數(shù)據(jù)放在其產(chǎn)生和頻繁使用位置, 減少傳輸, 提高效率,分布式數(shù)據(jù)(2),數(shù)據(jù)分布基本形式 復(fù)制數(shù)據(jù)(Replicated Data) 子集數(shù)據(jù)(Subset Data) 重新組織的數(shù)據(jù)(Reorganized Data) 分區(qū)數(shù)據(jù)(Partitioned Data) 獨(dú)立模式數(shù)據(jù)(Separate_Schema Data) 不相容數(shù)據(jù)(Incompatible Data),網(wǎng)絡(luò),DB x,主機(jī),DB x1,DB x2,x1和x2為 x的副本,復(fù)制的數(shù)據(jù),S1,S2,網(wǎng)絡(luò),DB ABC,主機(jī),DB A,DB C,子集數(shù)據(jù),S1,S3,DB B,S2,網(wǎng)絡(luò),DB R,主機(jī),DB A,重新組織的數(shù)據(jù),S1,DB B,S2,數(shù)據(jù)R是由數(shù)據(jù)A和B 經(jīng)過重新組織而獲得的,網(wǎng)絡(luò),地區(qū)A 的記錄,地區(qū)B 的記錄,分區(qū)數(shù)據(jù),地區(qū)C 的記錄,各地區(qū)的記錄 具有相同模式,網(wǎng)絡(luò),生產(chǎn) 數(shù)據(jù),財(cái)務(wù) 數(shù)據(jù),獨(dú)立模式數(shù)據(jù),生產(chǎn) 主機(jī),財(cái)務(wù) 主機(jī),營(yíng)銷 數(shù)據(jù),營(yíng)銷主機(jī),網(wǎng)絡(luò),公司A 的記錄,公司B 的記錄,不相容數(shù)據(jù),公司C 的記錄,各地區(qū)的記錄 具有相同模式,分布式數(shù)據(jù)(3),數(shù)據(jù)分布技術(shù) 人工抽取 快照 復(fù)制 分片 數(shù)據(jù)分布分析,SAVING,CUSTOMER,EXCHANGERATE,SAVING,CUSTOMER,EXCHANGERATE,網(wǎng)絡(luò),總行,分行1,分行2,分布式數(shù)據(jù)的銀行應(yīng)用系統(tǒng),分行到總行抽取數(shù)據(jù),分布式數(shù)據(jù) (4),數(shù)據(jù)分布分析 統(tǒng)計(jì)方法 根據(jù)應(yīng)用需求決定那些資源需要分布及存放位置 例子 銀行應(yīng)用系統(tǒng) 客戶表存在中央銀行(CB)站點(diǎn), 分行(PB)存有部分?jǐn)?shù)據(jù)復(fù)制 假設(shè)CB站點(diǎn)有10000條記錄, 每天讀2000次, 更新500次 PB站點(diǎn)有1000條記錄,每天讀1000次, 更新100次,分布式數(shù)據(jù)庫(kù)位置矩陣,分布式數(shù)據(jù) (5),該例子分析方法結(jié)論 分布式數(shù)據(jù)的位置取決于邏輯數(shù)據(jù)和處理(讀和更新)模式, 數(shù)量等特征 數(shù)據(jù)分布是降低整個(gè)分布式系統(tǒng)開銷的有效措施,分布式數(shù)據(jù)的訪問 (1),遠(yuǎn)程請(qǐng)求 遠(yuǎn)程事務(wù) 分布式事務(wù) 分布式請(qǐng)求,分布式數(shù)據(jù)的訪問 (2),遠(yuǎn)程請(qǐng)求 只涉及單個(gè)遠(yuǎn)程服務(wù)器的單個(gè)請(qǐng)求 Select * From Server1.BankDB.Customer Where Server1.BankDB.Customer.City = Beijing,SQL語(yǔ)句,CLIENT PB,SERVER1,遠(yuǎn)程數(shù)據(jù)請(qǐng)求,分布式數(shù)據(jù)的訪問 (3),遠(yuǎn)程事務(wù) 允許一個(gè)事務(wù)中包含多個(gè)應(yīng)用同一個(gè)遠(yuǎn)程服務(wù)器站點(diǎn)的數(shù)據(jù)訪問請(qǐng)求 Begin Work Select * From Server1.BankDB.Customer Where Server1.BankDB.Customer.City = Beijing Update Server1.BankDB.Branch Set Posted_ind = Yes Commit Work,SQL語(yǔ)句1,CLIENT B1,SERVER1,遠(yuǎn)程事務(wù)處理,SQL語(yǔ)句2,分布式數(shù)據(jù)的訪問 (4),分布式事務(wù) 一個(gè)事務(wù)包含多個(gè)數(shù)據(jù)請(qǐng)求, 每個(gè)請(qǐng)求只能訪問單個(gè)服務(wù)器 Begin Work Select * From ServerB1.BankDB.Employee Where ServerB1.BankDB.Employee.Edlevel=MBA Select * From ServerM.BankDB.Empl_MED Where ServerM.BankDB.Empl_MED.Branch=PB Commit Work,SQL語(yǔ)句1,SERVER M,分布式事務(wù)處理,SERVER B1,SQL語(yǔ)句2,中央CLIENT,BEGIN WORK COMMIT WORK,分布式數(shù)據(jù)的訪問 (5),分布式請(qǐng)求 一個(gè)事務(wù)包含多個(gè)數(shù)據(jù)請(qǐng)求,每個(gè)請(qǐng)求都可以引用駐留于多個(gè)服務(wù)器站點(diǎn)數(shù)據(jù) Begin Work Select * From ServerB1.BankDB.Employee B1, ServerM.BankDB.Empl_MED M Where B1.Empl_ID = M. Empl_ID AND B1. Edlevel = MBA Update Server1.BankDB.Branch Set Posted_ind = Yes Where Server1.BankDB.Branch = B1 Commit Work,SQL語(yǔ)句1,SERVER M,分布式數(shù)據(jù)請(qǐng)求,SERVER B1,SQL語(yǔ)句2,CLIENT,BEGIN WORK COMMIT WORK,SERVER 1,ORACLE分布DB(1),1985年起提供用于C/S和S/S的SQL*net 分布式體系結(jié)構(gòu)組成 SQL*Net SQL*Connect ORACLE Server ORACLE Net 聯(lián)網(wǎng)協(xié)議 Oracle8 之前稱 SQL Net協(xié)議,Oracle8/8i 稱Net8協(xié)議,Oracle9i稱Net協(xié)議,UPI,SQL*Net,Transparent Network Substrate,Oracle Protocol Adapter,Network Software,OPI,SQL*Net,Transparent Network Substrate,Oracle Protocol Adapter,Network Software,Network Link,Server,Client Application,Oracle Server,ORACLE分布DB(2),UPI代碼包括 分析SQL語(yǔ)句, 語(yǔ)法檢驗(yàn) 為SQL打開一個(gè)游標(biāo) 將Client應(yīng)用程序變量連接到共享Server內(nèi)存 根據(jù)Server數(shù)據(jù)字典信息描述返回域的內(nèi)容 在游標(biāo)空間中執(zhí)行SQL語(yǔ)句 給Client應(yīng)用程序取一條或多條記錄 關(guān)閉游標(biāo) OPI有完整功能與UPI對(duì)應(yīng),ORACLE分布DB(3),SQL*Net的任務(wù)是建立和保持Client程序與Server DB間的連接, 并完成兩者之間的信息轉(zhuǎn)換 TNS從網(wǎng)絡(luò)應(yīng)用程序中接受請(qǐng)求, 并將控制傳遞給DB服務(wù)器,Client,OCI,TTC,NET,OPA,網(wǎng)絡(luò)協(xié)議,OPI,TTC,NET,OPA,網(wǎng)絡(luò)協(xié)議,Server,NPI,網(wǎng)絡(luò)協(xié)議,OCI Oracle 調(diào)用接口層 客戶機(jī)通過調(diào)用OCI完成所有SQL處理 TTC 實(shí)現(xiàn)與OSI網(wǎng)絡(luò)協(xié)議模型中的表示層一樣的功能,完成客戶機(jī)與服務(wù)器之間不同字符集和數(shù)據(jù)類型格式的轉(zhuǎn)換 NET net層很多子層的集合,相當(dāng)于OSI中的會(huì)話層,建立、維護(hù)客戶機(jī)應(yīng)用程序和服務(wù)器之間的聯(lián)結(jié)和通信 NI 網(wǎng)絡(luò)接口層 為客戶機(jī)、服務(wù)器和其他外部程序提供對(duì)Net的接口訪問,處理中斷請(qǐng)求 NR 網(wǎng)絡(luò)路由子層 NN 網(wǎng)絡(luò)命名子層 NA 網(wǎng)絡(luò)認(rèn)證子層 NS 網(wǎng)絡(luò)會(huì)話子層 OPA 網(wǎng)絡(luò)協(xié)議適配層,負(fù)責(zé)與具體網(wǎng)絡(luò)協(xié)議通信 網(wǎng)絡(luò)協(xié)議 具體的網(wǎng)絡(luò)傳輸協(xié)議,如TCP/IP OPI 與客戶機(jī)上的OCI層對(duì)應(yīng)的Oracle編程接口層 NPI 網(wǎng)絡(luò)程序接口層,負(fù)責(zé)服務(wù)器之間的連接 作為ORACLE聯(lián)網(wǎng)的基本組件,安裝時(shí)已自動(dòng)安裝,Oracle Server,SQL*Net,Transparent Network Substrate,Oracle Protocol Adapter,Network Software,Oracle Server,SQL*Net,Transparent Network Substrate,Oracle Protocol Adapter,Network Software,Network Link,Server,Server,OPI,OPI,C/S網(wǎng)絡(luò)應(yīng)用解決方案(1),結(jié)構(gòu)組成 數(shù)據(jù)庫(kù)服務(wù)器 專門硬件服務(wù)器,安裝ORACLE9i Database 管理工作站 安裝管理客戶端工具,管理員在此執(zhí)行對(duì)數(shù)據(jù)庫(kù)的日常管理維護(hù) 客戶機(jī) 安裝連接工具及客戶應(yīng)用程序,執(zhí)行業(yè)務(wù)處理 主要用于基于局域網(wǎng)的應(yīng)用,如銀行儲(chǔ)蓄業(yè)務(wù)、電信收費(fèi)業(yè)務(wù)等,C/S網(wǎng)絡(luò)應(yīng)用解決方案(1)-續(xù),連接方法 客戶機(jī)配置文件 tnsnames.ora,存放服務(wù)器連接信息,TCP/IP地址、主機(jī)名、采用的協(xié)議和使用的端口等 MYORACLE= (DESCRITION=(ADDRESS_LIST= (ADDRESS=(PROTOCOL=TCP)(HOST=mynetserver)(PORT=1521) (CONNECT_DATA=(SERVICE_NAME=myoracle.mynet) 服務(wù)器后臺(tái)進(jìn)程(監(jiān)聽器),配置參數(shù)在listener.ora文件中 (SID_DESC = (GLOBAL_DBNAME = myoracle.mynet) (ORACLE_HOME = C:oracleora90) (SID_NAME = myoracle) 方案評(píng)價(jià) 配置簡(jiǎn)單,但是服務(wù)器的地址信息變化需重新對(duì)每臺(tái)客戶機(jī)配置,C/S網(wǎng)絡(luò)應(yīng)用解決方案(2),基于名字服務(wù)器的方案 方案結(jié)構(gòu)組成 數(shù)據(jù)庫(kù)服務(wù)器 專門的硬件,裝ORACLE9i Database,需在名字服務(wù)器上完成注冊(cè) 名字服務(wù)器 集中管理網(wǎng)絡(luò)環(huán)境中所有的數(shù)據(jù)庫(kù)服務(wù)器的注冊(cè)信息,為客戶機(jī)提供網(wǎng)絡(luò)名解析服務(wù) 客戶機(jī) 管理工作站,C/S網(wǎng)絡(luò)應(yīng)用解決方案(2)-續(xù),連接方法 客戶機(jī)上指定名字服務(wù)器解析網(wǎng)絡(luò)服務(wù)名的方式,向名字服務(wù)器獲取數(shù)據(jù)庫(kù)服務(wù)器的連接信息后,直接通過網(wǎng)絡(luò)向數(shù)據(jù)庫(kù)服務(wù)器發(fā)出連接請(qǐng)求 數(shù)據(jù)庫(kù)服務(wù)器每次修改配置,需要在名字服務(wù)器上注冊(cè) 名字服務(wù)器上保存全局?jǐn)?shù)據(jù)庫(kù)名稱及其地址、其他名字服務(wù)器的名稱及地址 方案評(píng)價(jià) 在大型Oracle Net網(wǎng)絡(luò)的規(guī)劃設(shè)計(jì)中,優(yōu)先考慮。用戶數(shù)大時(shí),名字服務(wù)器是瓶頸,C/S網(wǎng)絡(luò)應(yīng)用解決方案(3),基于目錄服務(wù)器的方案 結(jié)構(gòu)組成 數(shù)據(jù)庫(kù)服務(wù)器 安裝后要向目錄服務(wù)器注冊(cè) 目錄服務(wù)器 采用專門協(xié)議LDAP(輕型目錄訪問協(xié)議,定義、存儲(chǔ)和檢索目錄信息的標(biāo)準(zhǔn)) 客戶機(jī) 管理工作站,C/S網(wǎng)絡(luò)應(yīng)用解決方案(3)-續(xù),連接方案 客戶機(jī)上指定連接到特定目錄服務(wù)器 數(shù)據(jù)庫(kù)服務(wù)器修改配置,要在目錄服務(wù)器注冊(cè) 目錄服務(wù)器保存全局?jǐn)?shù)據(jù)庫(kù)名稱和地址 評(píng)價(jià) 客戶機(jī)配置簡(jiǎn)單,是與大型應(yīng)用,取代名字服務(wù)器,C/S網(wǎng)絡(luò)應(yīng)用解決方案(4),基于連接管理器方案 結(jié)構(gòu)組成 數(shù)據(jù)庫(kù)服務(wù)器 運(yùn)行在共享服務(wù)器模式下 連接管理器 提供3個(gè)擴(kuò)展功能的中間件。包括: 多路復(fù)用技術(shù),將多個(gè)客戶機(jī)連接組合在一起,以單個(gè)網(wǎng)絡(luò)連接發(fā)送給數(shù)據(jù)庫(kù)服務(wù)器,以減少網(wǎng)絡(luò)傳輸和數(shù)據(jù)庫(kù)服務(wù)器需要處理的連接數(shù)量。 網(wǎng)絡(luò)訪問控制技術(shù),可根

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論