版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
三、分布式系統(tǒng)的軟件體系構(gòu)造軟件的體系構(gòu)造有一個(gè)范圍、視角問(wèn)題即: 在什么樣的范圍內(nèi) 以什么樣的視角 對(duì)待軟件的體系構(gòu)造傳統(tǒng)的方法主要 在單機(jī)環(huán)境中 從系統(tǒng)功能角度 對(duì)待軟件的體系構(gòu)造隨著軟件系統(tǒng)規(guī)模的增長(zhǎng)及底層機(jī)制的完善 需求新的軟件體系構(gòu)造描畫(huà)方法1分布式系統(tǒng)對(duì)軟件的需求
自治性Autonomy 可靠性Reliability 可接受性Availability 可擴(kuò)展性Scalability 互操作性Interoperability
2自治性運(yùn)用程序的自治性是指 運(yùn)用程序有才干控制其本身的關(guān)鍵資源關(guān)鍵資源是運(yùn)用程序作為獨(dú)立的實(shí)體完成其功能時(shí) 所需求的珍貴資源例如:RDBMS銜接 大型機(jī)銜接 事務(wù)等3可靠性可靠性是指運(yùn)用程序提供準(zhǔn)確結(jié)果的才干在一個(gè)多用戶的環(huán)境中確保準(zhǔn)確的結(jié)果是困難的例子: 從一個(gè)帳戶〔A1〕 向另一個(gè)帳戶〔A2〕轉(zhuǎn)一筆帳〔M〕 需求將A1減去M 并同時(shí)將A2添加M4可接受性可接受性指運(yùn)用程序的呼應(yīng)時(shí)間可以被用戶接受這依賴于許多要素: 硬件可接受性 軟件可接受性 網(wǎng)絡(luò)可接受性等資源冗余可以提高呼應(yīng)時(shí)間5可擴(kuò)展性可擴(kuò)展性是對(duì)處置才干可以與資源的添加 呈線性增長(zhǎng)的一種期望這使得運(yùn)用程序在從支持10個(gè)用戶 開(kāi)展為支持10000個(gè)用戶時(shí) 只需 添加必要的資源 擴(kuò)展運(yùn)用程序的規(guī)模即可6互操作性互操作性是指運(yùn)用程序訪問(wèn)其它平臺(tái)上的 運(yùn)用程序、數(shù)據(jù)等資源的才干許多企業(yè)環(huán)境支持多種不同的硬件與軟件 它們必需協(xié)同任務(wù) 以共同為企業(yè)的運(yùn)作效力7
目前存在三種描畫(huà)分布式環(huán)境中軟件體系構(gòu)造的模型:DNA:DistributedinterNetApplicationArchitectureOMA:ObjectManagementArchitectureEJB;EnterpriseJavaBean8DNA、OMA、EJB皆是 在分布式環(huán)境中 從系統(tǒng)底層角度 對(duì)待軟件的體系構(gòu)造它們 處理的問(wèn)題是類(lèi)似的 分布式系統(tǒng)的軟件體系構(gòu)造
處理問(wèn)題的方式也是類(lèi)似的 基于互操作模型〔構(gòu)件間交互〕 分別出公共功能〔構(gòu)件〕由于EJB與OMA很類(lèi)似,不予詳述9中心業(yè)務(wù)功能橫向人機(jī)交互數(shù)據(jù)效力DNA倡導(dǎo):3-TierApplication10縱向OSORBServicesFacilitiesDomainObjectsObjectsObjectsObjectsObjectsOMA倡導(dǎo):LayeredApplication11DNA與OMA相互浸透:DNA在3層構(gòu)造中不斷地添加公共效力 例如: MTS MSMQ 負(fù)載平衡 等OMA在公共效力之上也定義了程度效力 例如: UserInterface InformationManagement SystemManagement TaskManagement 等 12內(nèi)容1、DNA2、MTS3、MSMQ四、DNADNA13DNA是Windows平臺(tái)上的運(yùn)用程序開(kāi)發(fā)模型用以指點(diǎn)如何: 利用Windows平臺(tái)開(kāi)發(fā) 強(qiáng)健、可擴(kuò)展、分布式的運(yùn)用程序; 擴(kuò)展現(xiàn)有的數(shù)據(jù)與外部運(yùn)用程序 以支持Internet; 支持不同類(lèi)型的客戶設(shè)備 以添加運(yùn)用程序的范圍由于DNA依賴于由Windows平臺(tái)提供的綜合、集成的效力開(kāi)發(fā)者可以 省缺分布式運(yùn)用程序所需求的 根底設(shè)備的開(kāi)發(fā) 而將精神集中在業(yè)務(wù)問(wèn)題上1、DNADNA14DNA設(shè)計(jì)原那么:Internetready.開(kāi)發(fā)方案能完全利用 平臺(tái)的靈敏性 Internet的優(yōu)勢(shì) 通訊才干Fastertimetomarket.快速開(kāi)發(fā)、部署運(yùn)用程序,不需求對(duì)開(kāi)發(fā)者進(jìn)展重新培訓(xùn)降低開(kāi)發(fā)者必需寫(xiě)的代碼Trueinteroperability.各模塊皆具有互操作才干,以方便地向現(xiàn)有系統(tǒng)添加功能符合開(kāi)放的協(xié)議與規(guī)范,以集成其它廠商的產(chǎn)品DNA15Reducedcomplexity.將關(guān)鍵效力直接集成到操作系統(tǒng)中 并經(jīng)過(guò)構(gòu)件以普通的方式提供效力降低對(duì)IT專(zhuān)家的依賴 以集中精神處理業(yè)務(wù)問(wèn)題Language,toolandhardwareindependence.提供言語(yǔ)中立的構(gòu)件模型 使開(kāi)發(fā)者可以運(yùn)用義務(wù)公用的工具以個(gè)人計(jì)算為根本模型 客戶可以在大量可用的硬件上部署程序Lowertotalcostofownership.開(kāi)發(fā)的程序易于部署且易于維護(hù)DNA16DNA17DNA18DNA19DNA提供多種表示效力開(kāi)發(fā)者可以根據(jù)詳細(xì)情況選擇最正確方案 基于Windows的構(gòu)件 各種Internet技術(shù) 等HTMLScriptingDHTMLComponentsWin32API以支持豐富的界面與客戶環(huán)境 從手持無(wú)線設(shè)備到高端任務(wù)站DNA20DNA21WebServicesInternetInformationServer(IIS)可用于 開(kāi)發(fā)基于Web的商務(wù)運(yùn)用系統(tǒng) 這樣的系統(tǒng)便于擴(kuò)展、便于部署作為IIS技術(shù)之一的ActiveServerPages(ASP)具有 言語(yǔ)中立 編譯省缺的特點(diǎn)是效力器端腳本環(huán)境 用于創(chuàng)建、運(yùn)轉(zhuǎn)動(dòng)態(tài)且交互的Web效力器運(yùn)用程序利用ASP腳本及其它協(xié)調(diào)構(gòu)件構(gòu)造的運(yùn)用程序 可以與現(xiàn)有的系統(tǒng)、運(yùn)用程序及數(shù)據(jù)協(xié)同任務(wù)DNA22ComponentServices基于互操作模型 ComponentObjectModel(COM)加強(qiáng)分布處置功能 MicrosoftTransactionServer(MTS)目前已開(kāi)展為COM+ 經(jīng)過(guò)降低為利用底層系統(tǒng)效力而編寫(xiě)的代碼量 使開(kāi)發(fā)分布式運(yùn)用系統(tǒng)更為 快速 容易 廉價(jià)DNA23COM+效力包括新的或加強(qiáng)的效力包括:Bringyourowntransaction.COM構(gòu)件可以參與由非COM+事務(wù)處置環(huán)境管理的事務(wù) 只需它支持TransactionInternetProtocol(TIP)Loadbalancing.基于構(gòu)件的運(yùn)用程序可以以客戶透明的方式 在運(yùn)用程序群中分布任務(wù)負(fù)載In-memorydatabase.內(nèi)存數(shù)據(jù)庫(kù)是一個(gè)事務(wù)性數(shù)據(jù)庫(kù)系統(tǒng) 用以支持對(duì)數(shù)據(jù)的快速訪問(wèn)DNA24Queuedcomponents.異步執(zhí)行在網(wǎng)絡(luò)環(huán)境下是不可防止的 隊(duì)列可以對(duì)異步執(zhí)行提供良好支持Eventnotification.COM+事件是同時(shí)支持單播/多播、發(fā)布/訂閱的事件機(jī)制 允許多個(gè)客戶“訂閱〞由各種效力器“發(fā)布〞的事件Expandedsecurity.支持基于角色的平安與處置訪問(wèn)答應(yīng)平安COM+添加了方法級(jí)平安Centralizedadministration.ComponentServicesExplorer提供了一致的管理模型減少了部署、管理及監(jiān)控n層的運(yùn)用程序DNA25MessagingServicesMicrosoftMessageQueueServer提供 松耦合、可靠的通訊效力經(jīng)過(guò)實(shí)現(xiàn)push風(fēng)格的商務(wù)事件方便了運(yùn)用系統(tǒng)的集成 在不可靠、代價(jià)低的網(wǎng)絡(luò)上建立起可靠的運(yùn)用系統(tǒng)MicrosoftMessageQueueServer還提供了 與其它音訊隊(duì)列產(chǎn)品的無(wú)縫銜接 例如:IBM’sMQSeries等DNA26向大型機(jī)事務(wù)處置擴(kuò)展經(jīng)過(guò)運(yùn)用COM構(gòu)件及COMTransactionIntegrator(TI)開(kāi)發(fā)者可以擴(kuò)展大型機(jī)上的事務(wù)程序例如: CustomerInformationControlSystem(CICS) InformationManagementSystem(IMS) 等COMTI包括一系列的開(kāi)發(fā)工具與效力 可以自動(dòng)“封裝〞IBM的事務(wù)功能一切的COMTI處置皆在WindowsNTServer上進(jìn)展DNA27關(guān)鍵的ApplicationServerTechnologies包括:MicrosoftTransactionServerActiveServerPagesMicrosoftInternetInformationServerMicrosoftMessageQueueServerMicrosoftComponentObjectModelDNA28DNA29企業(yè)需求從分布的數(shù)據(jù)與信息中獲取最大的商業(yè)利益UniversalDataAccess 提供對(duì)各種信息資源的高性能訪問(wèn) 包括關(guān)系、非關(guān)系數(shù)據(jù) 提供獨(dú)立于工具與言語(yǔ)的編程接口 UniversalDataAccess基于開(kāi)放的工業(yè)規(guī)范 得到了工業(yè)界及數(shù)據(jù)庫(kù)廠商的廣泛支持DNA30DNA中基于UniversalDataAccess的框架包含兩層:在系統(tǒng)層: OLEDB定義了一個(gè)基于構(gòu)件的體系構(gòu)造 封裝了各種數(shù)據(jù)庫(kù)管理系統(tǒng)效力 OLEDB不對(duì)數(shù)據(jù)源進(jìn)展約束在運(yùn)用層: ActiveXDataObjects(ADO)提供了高層接口 使開(kāi)發(fā)者可以從任何編程言語(yǔ)訪問(wèn)數(shù)據(jù)在每一層: ExtensibleMarkupLanguage(XML)使開(kāi)發(fā)者 可以在運(yùn)用程序客戶之間進(jìn)展 描畫(huà)、交付、交換構(gòu)造化數(shù)據(jù) XML也可以在效力器之間進(jìn)展構(gòu)造化數(shù)據(jù)的傳送DNA31DNA優(yōu)點(diǎn)總結(jié):為分布式運(yùn)用程序的開(kāi)發(fā)提供集成、綜合的平臺(tái) 將開(kāi)發(fā)者從底層任務(wù)中解放出來(lái)方便地與現(xiàn)有系統(tǒng)、數(shù)據(jù)等協(xié)作 維護(hù)對(duì)現(xiàn)有系統(tǒng)的投資提供構(gòu)件模型、共性效力以及支持工具 減少開(kāi)發(fā)分布式系統(tǒng)的時(shí)間DNA323、MTS什么是事務(wù) 事務(wù)是一個(gè)不可分割的任務(wù)單元在一個(gè)不可靠的環(huán)境中 事務(wù)是保證系統(tǒng)獲得準(zhǔn)確結(jié)果的有效措施一個(gè)事務(wù) 可以正常完成 也可以被終止,并“卷回〞到初始形狀假設(shè)一個(gè)過(guò)程的執(zhí)行滿足上述“事務(wù)〞特性 那么我們稱該過(guò)程是“事務(wù)性〞的DNA33事務(wù)的四個(gè)特性(ACID):原子性(Atomicity): 包含在事務(wù)中的活動(dòng)或者全部有效,或者全部無(wú)效一致性(Consistency): 事務(wù)涉及的各種數(shù)據(jù)必需堅(jiān)持一致性分別性(Isolation): 不同事務(wù)之間互不干擾永久性(Durability): 只需事務(wù)勝利完成,那么其結(jié)果一定有效其中: 一致性是開(kāi)發(fā)者需關(guān)注的 原子性、分別性、繼續(xù)性 由底層的事務(wù)處置系統(tǒng)提供DNA34MTS(MicrosoftTransactionServer)MTS 是 一個(gè)基于構(gòu)件的運(yùn)轉(zhuǎn)時(shí)根底設(shè)備 是 開(kāi)發(fā)、部署、管理分布式效力運(yùn)用程序的 事務(wù)處置系統(tǒng)MTS是 臺(tái)式機(jī)的靈敏性、代價(jià)低 與高端大型機(jī)系統(tǒng)的業(yè)務(wù)關(guān)鍵處置的結(jié)合MTS還是 構(gòu)件管理器 擔(dān)任將運(yùn)用系統(tǒng)的客戶程序 與運(yùn)用構(gòu)件對(duì)象 以及各種資源 有機(jī)地結(jié)合起來(lái)DNA35MTS對(duì)象與MTS客戶MTS對(duì)象是指運(yùn)轉(zhuǎn)在MTS環(huán)境下的COM構(gòu)件實(shí)例 MTS為每個(gè)對(duì)象維護(hù)了一個(gè)環(huán)境對(duì)象 MTS對(duì)象與其環(huán)境對(duì)象具有同樣的生存周期 環(huán)境對(duì)象實(shí)現(xiàn)了IObjectContext接口 環(huán)境對(duì)象經(jīng)過(guò)該接口提供事務(wù)、平安控制等才干MTS客戶是指MTS對(duì)象的客戶程序 可以是一個(gè)運(yùn)轉(zhuǎn)于MTS環(huán)境之外的運(yùn)用程序 也可以是另一個(gè)MTS對(duì)象DNA36IObjectContext:publicIUnknown{public:virtualHRESULTCreateInstance( REFCLSIDrclsid, REFIIDriid,LPVOID__RPC_FAR*ppv)=0;virtualHRESULTSetComplete(void)=0;virtualHRESULTSetAbort(void)=0;virtualHRESULTEnableCommit(void)=0;virtualHRESULTDisableCommit(void)=0;virtualBOOLIsInTransaction(void)=0;virtualBOOLIsSecurityEnabled(void)=0;virtualHRESULTIsCallerInRole( BSTR__MIDL_0000, BOOL__RPC_FAR*__MIDL_0001)=0;};DNA37其中:CreateInstance函數(shù)用來(lái)創(chuàng)建另一個(gè)MTS對(duì)象SetComplete函數(shù)終了一次操作并指示一次事務(wù)被提交SetAbort函數(shù)終了一次操作并指示一次事務(wù)被取消EnableCommit函數(shù)允許事務(wù)提交操作DisableCommit函數(shù)制止事務(wù)提交操作IsInTransaction函數(shù)判別當(dāng)前對(duì)象能否在事務(wù)形狀下運(yùn)轉(zhuǎn)IsSecurityEnabled函數(shù)判別對(duì)象的平安答應(yīng)IsCallerInRole函數(shù)指定對(duì)象的調(diào)用者 能否在當(dāng)前效力進(jìn)程的平安角色中DNA38MTS特性事務(wù)管理器 簡(jiǎn)化數(shù)據(jù)庫(kù)運(yùn)用對(duì)數(shù)據(jù)的操作 對(duì)分布式數(shù)據(jù)庫(kù)的支持尤為明顯對(duì)象管理器 為基于COM的構(gòu)件運(yùn)用運(yùn)用系統(tǒng)提供 配置和管理的根底 及時(shí)激活〔Just-In-TimeActivation〕 為提高效力器資源的利用率 在客戶一致持有對(duì)象援用的前提下 激活、去活對(duì)象平安管理器 MTS提供基于NT平安的分布式平安效力 防止對(duì)業(yè)務(wù)運(yùn)用的未授權(quán)訪問(wèn)DNA394、MSMQ(MicrosoftMessageQueue)MSMQ提供了一種異步通訊效力 處理在 不可靠或者慢速網(wǎng)絡(luò)銜接 遠(yuǎn)地用戶 異構(gòu)運(yùn)用程序 等環(huán)境中的問(wèn)題DNA40兩個(gè)運(yùn)用程序之間進(jìn)展通訊時(shí)存在三種能夠的情形:當(dāng)一個(gè)運(yùn)用程序向另一個(gè)運(yùn)用程序發(fā)出音訊后它能夠:? 等待一個(gè)直接的應(yīng)對(duì)? 在一定的時(shí)間內(nèi)等待應(yīng)對(duì) 但在這段時(shí)間內(nèi)執(zhí)行其它任務(wù)? 不等待應(yīng)對(duì)
第一種情況即為同步通訊而第二種、第三種情況為異步通訊DNA41
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 3 拍手歌 說(shuō)課稿-2024-2025學(xué)年語(yǔ)文二年級(jí)上冊(cè)統(tǒng)編版
- 生產(chǎn)安全管理與績(jī)效評(píng)估體系的構(gòu)建
- 環(huán)境藝術(shù)與商業(yè)空間的室內(nèi)設(shè)計(jì)探索
- 法規(guī)驅(qū)動(dòng)下的企業(yè)網(wǎng)絡(luò)安全策略制定
- 環(huán)境科學(xué)與國(guó)際合作項(xiàng)目分析
- 環(huán)保農(nóng)業(yè)產(chǎn)品的鐵路貨運(yùn)策略
- 2024秋五年級(jí)語(yǔ)文上冊(cè) 第八單元 27 我的長(zhǎng)生果說(shuō)課稿 新人教版
- 流程優(yōu)化與班組執(zhí)行力的關(guān)系研究
- 中山廣東中山市醫(yī)療保障局招聘雇員筆試歷年參考題庫(kù)附帶答案詳解
- 2025年度消防設(shè)施檢測(cè)與消防安全設(shè)施安裝合同
- 2024年安全員之江蘇省C2證(土建安全員)題庫(kù)與答案
- 第一節(jié)-貨幣資金資料講解
- 2024年華僑、港澳、臺(tái)聯(lián)考高考數(shù)學(xué)試卷含答案
- 工程造價(jià)咨詢服務(wù)投標(biāo)方案(技術(shù)方案)
- 駕駛員安全行車(chē)考核獎(jiǎng)懲制度(3篇)
- 籃球俱樂(lè)部合伙協(xié)議
- 電力基建復(fù)工安全教育培訓(xùn)
- 2018注冊(cè)環(huán)保工程師考試公共基礎(chǔ)真題及答案
- 勞務(wù)經(jīng)紀(jì)人培訓(xùn)
- 如何提高售后服務(wù)的快速響應(yīng)能力
- 2024年金屬非金屬礦山(露天礦山)安全管理人員試題庫(kù)附答案
評(píng)論
0/150
提交評(píng)論