999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于軟件體系結(jié)構(gòu)的構(gòu)件可遷移系統(tǒng)容錯研究

2011-04-13 00:59:12盧桂馥王忠群
長春大學(xué)學(xué)報 2011年8期
關(guān)鍵詞:系統(tǒng)

王 勇,盧桂馥,王忠群

(安徽工程大學(xué) 計算機與信息學(xué)院,蕪湖 241000)

0 引言

一個基于構(gòu)件的分布式軟件系統(tǒng)由許多同構(gòu)或異構(gòu)的構(gòu)件件組成。近年來已經(jīng)出現(xiàn)了許多新的構(gòu)件技術(shù)和基于構(gòu)件的應(yīng)用平臺,來簡化和加速分布式軟件的構(gòu)建和開發(fā),但目前這些技術(shù)存在一個共同問題,即缺乏工具來描述整個軟件架構(gòu),并根據(jù)特定的需求和運行環(huán)境對系統(tǒng)的軟件構(gòu)件進行動態(tài)配置。另外,現(xiàn)有的許多中間件開發(fā)模型和產(chǎn)品大多只關(guān)心網(wǎng)絡(luò)通信和互操作,缺乏對容錯應(yīng)用的支持,從而導(dǎo)致基于中間件開發(fā)容錯應(yīng)用面臨困境,因為基于中間件開發(fā)應(yīng)用必須遵照中間件的開發(fā)模式來實現(xiàn),如果中間件不提供容錯支持,則開發(fā)者必須自己實現(xiàn)容錯邏輯,這樣導(dǎo)致應(yīng)用邏輯和容錯邏輯混合在一起,增加了開發(fā)者的工作難度。

我們針對為了適應(yīng)因特網(wǎng)環(huán)境可用資源變化而可動態(tài)重定位應(yīng)用構(gòu)件的大規(guī)模分布應(yīng)用,感知應(yīng)用構(gòu)件間、構(gòu)件和環(huán)境的關(guān)系并且記載于通訊錄中,把通訊錄機制和表示軟件邏輯結(jié)構(gòu)的圖機制結(jié)合起來使得利用圖可表達動態(tài)變化的體系結(jié)構(gòu),利用分布檢查點技術(shù)和Home站點,實現(xiàn)能夠適應(yīng)因特網(wǎng)環(huán)境的資源動態(tài)變化的構(gòu)件遷移、動態(tài)配置以及出錯恢復(fù)的容錯框架。

1 mcgop軟件體系結(jié)構(gòu)模型

軟件體系結(jié)構(gòu)是軟件系統(tǒng)的一種抽象描述。近年來人們對軟件體系結(jié)構(gòu)進行了大量的研究,集中體現(xiàn)在各種體系結(jié)構(gòu)描述語言(ADL)及其支持系統(tǒng),然而現(xiàn)有的軟件體系結(jié)構(gòu)描述語言及其支撐系統(tǒng)大多針對相對靜態(tài)的體系結(jié)構(gòu),對internet環(huán)境下的應(yīng)用,不能保證系統(tǒng)初始結(jié)構(gòu)符合要求,還要管理和控制系統(tǒng)結(jié)構(gòu)的動態(tài)演化,即在可追溯性和動態(tài)性上尚存在不足。南京大學(xué)馬嘵星等提出了一種面向圖的WEB架構(gòu)技術(shù)[4],北京大學(xué)黃罡等提出一種面向體系結(jié)構(gòu)的反射中間件系統(tǒng),他們將軟件體系結(jié)構(gòu)顯式表示,使得軟件體系結(jié)構(gòu)具有可追溯性和自省性。但他們沒有考慮構(gòu)件的可移動性。針對現(xiàn)狀,我們進一步研究了滿足可追溯性和動態(tài)性的面向圖的具有自省的并支持構(gòu)件可遷移的動態(tài)軟件體系結(jié)構(gòu)。

支持可遷移構(gòu)件分布式應(yīng)用與傳統(tǒng)的分布式式應(yīng)用系統(tǒng)存在明顯的特點:

(1)構(gòu)件的可遷移性。支持可遷移構(gòu)件的分布式系統(tǒng),系統(tǒng)配置后,構(gòu)件非靜態(tài)的,它可以根據(jù)系統(tǒng)負(fù)載和可用資源的變化等,遷移至其他目標(biāo)主機繼續(xù)運行。

(2)系統(tǒng)體系的動態(tài)性。構(gòu)件的物理位置為動態(tài)性,其體系結(jié)構(gòu)自然反映為動態(tài)性。

這些特點使得面向圖的軟件體系結(jié)構(gòu)不能完全適應(yīng)可遷移構(gòu)件的需求。需要解決的主要問題有:

(1)如何使得可遷移構(gòu)件的位置變化不影響整個軟件體系的邏輯結(jié)構(gòu)。

(2)如何保證可遷移構(gòu)件間的可靠通信。

(3)如何保證可遷移構(gòu)件遷移到目標(biāo)主機后,能在目標(biāo)主機繼續(xù)從斷點處運行。即要保證構(gòu)件的遷移為強遷移。

針對以上特點,如圖1所示,可以采用面向圖的結(jié)構(gòu)刻畫軟件的邏輯結(jié)構(gòu),將構(gòu)件轉(zhuǎn)換為圖節(jié)點,連接子轉(zhuǎn)化為圖結(jié)構(gòu)的邊。采用HOME站點與通訊錄向結(jié)合的方式記錄可遷移構(gòu)件的物理節(jié)點并保證系統(tǒng)的可靠通信[3]。這樣實現(xiàn)了系統(tǒng)的邏輯結(jié)構(gòu)與物理結(jié)構(gòu)向分離。構(gòu)件的移動不影響軟件的邏輯體系結(jié)構(gòu)。

圖1 體系結(jié)構(gòu)轉(zhuǎn)化為圖結(jié)構(gòu)

2 容錯框架

2.1 系統(tǒng)假設(shè)

本文所提出的構(gòu)件可遷移的分布式應(yīng)用式系統(tǒng)存在如下假設(shè):系統(tǒng)由分布于網(wǎng)絡(luò)中的一組構(gòu)件組成。構(gòu)件可以由網(wǎng)絡(luò)中一臺主機自主遷移到另一臺主機。系統(tǒng)服從”fail-stop”形式,一旦構(gòu)件失效,該構(gòu)件將立即停止,并不會產(chǎn)生任何惡意的行為。

定義1構(gòu)件是由一個動態(tài)變化的對象集合組成。這些對象既可以在對象內(nèi)部也可能是其接口的一部分。構(gòu)件之間可以直接交互。

定義2可遷移構(gòu)件集合為C={Ci},其中i=0…N-1,N為系統(tǒng)中可遷移構(gòu)件數(shù)目。

構(gòu)件可在網(wǎng)絡(luò)中自主的遷移,用(Ci0…Cij…Cim)表示構(gòu)件Ci的遷移集合。Ci0表示構(gòu)件Ci的初始狀態(tài)。Ci0駐留的主機稱為Home站點,記為Mi0。

在該分布式系統(tǒng)中,每個構(gòu)件可以執(zhí)行內(nèi)部操作,發(fā)送消息send(m),接收消息receive(m)。每個構(gòu)件具有初始狀態(tài),局部狀態(tài)是由事件序列作用在初始狀態(tài)產(chǎn)生的。事件使得構(gòu)件從一個局部狀態(tài)轉(zhuǎn)到另一個局部狀態(tài)。

2.2 MCFGOP模型

在MCGOP的基礎(chǔ)上加以擴展使得它具有容錯功能,我們將該模型稱為MCFGOP(Migratory Component Fault-tolerance GOP)。一個應(yīng)用系統(tǒng)有一組在一個“圖”中相互協(xié)作的構(gòu)件和可遷移構(gòu)件組成。這些構(gòu)件分布于INTERNET上,通過圖對象提供的操作原語相互通信和操作。系統(tǒng)模型示意如圖2所示。

一個MCFGOP系統(tǒng)由下列部件組成:

(1)一個圖對象。圖由一組節(jié)點及其間的有向邊組成。圖的拓?fù)浣Y(jié)構(gòu)體現(xiàn)軟件的體系結(jié)構(gòu)。

(2)一組構(gòu)件。這些構(gòu)件包括可遷移構(gòu)件及不可遷移構(gòu)件組成。這些構(gòu)件通過圖對象所提供的原語進行操作和通信。

(3)一個通訊錄。通訊錄主要記錄可遷移構(gòu)件的HOME站點、遷移鏈路、當(dāng)前站點及各個鏈路的檢查點文件等相關(guān)信息。提供可遷移構(gòu)件的尋址、通信及系統(tǒng)出錯后的回卷回復(fù)等。

(4)圖節(jié)點與構(gòu)件HOME節(jié)點的映射。并將這個映射關(guān)系記錄于HOME站點中。這個映射決定了整個應(yīng)用系統(tǒng)的初始分布情況。當(dāng)系統(tǒng)構(gòu)件出現(xiàn)遷移時,系統(tǒng)利用通訊錄機制實現(xiàn)構(gòu)件的物理定位與通信。

(5)容錯部件。容錯部件包括失效檢測與出錯后的恢復(fù)。

圖2 MCFGOP模型示意圖

2.3 系統(tǒng)容錯動態(tài)配置

動態(tài)配置包括預(yù)期和非預(yù)期式兩種形式,而出錯可以認(rèn)為是一種非預(yù)期的非正常情況的動態(tài)配置。一般來說,配置是指可以增加、刪除、替換構(gòu)件。面向圖的分布軟件動態(tài)配置和容錯機制是基于由用戶指定的或者缺省的映射關(guān)系將表達分布應(yīng)用結(jié)構(gòu)的邏輯圖部署到底層的物理網(wǎng)絡(luò)實現(xiàn)的。一方面,面向圖的容錯沒有考慮應(yīng)用構(gòu)件為了適應(yīng)環(huán)境、可用資源或者為了提高系統(tǒng)性能等遷移構(gòu)件問題,另一方面,通過用戶指定和缺省進行映射分布應(yīng)用的邏輯圖到網(wǎng)絡(luò)站點難以解決允許應(yīng)用構(gòu)件遷移(應(yīng)用構(gòu)件間的邏輯依賴關(guān)系保持不變而只是其駐留物理站點發(fā)生變化)的容錯問題。

2.4 體系結(jié)構(gòu)層次的系統(tǒng)可容錯動態(tài)配置

面向圖結(jié)構(gòu)的動態(tài)配置框架,人為干預(yù)的工作較多。通過把感知并記載于通訊錄中的應(yīng)用構(gòu)件間依賴關(guān)系轉(zhuǎn)換為圖形式表達軟件體系結(jié)構(gòu),提供通訊錄和表達體系結(jié)構(gòu)的圖的映射。并且借助Home站點使得分布應(yīng)用任意擴展增加系統(tǒng)功能。依據(jù)體系結(jié)構(gòu)所具有的高層抽象機制以及其使能全局推理,結(jié)合通訊錄機制使得通信對象知道直接通信對方,提供分布應(yīng)用程序運行支撐平臺;同時提供系統(tǒng)動態(tài)配置框架的可編程API,一方面實現(xiàn)容錯的透明支持,另一方面幫助程序員實現(xiàn)可容錯的應(yīng)用邏輯的編碼,以減少編程人員的編碼工作量。

3 實驗

實驗平臺采用的linux fedora 5.+JikesRVM 2.4.5,cpu為IA32的Intel p4 2.8G。每個可遷移構(gòu)件分為兩大模塊,分別為功能模塊與系統(tǒng)檢測模塊。功能模塊負(fù)責(zé)功能實現(xiàn)的執(zhí)行體;檢測模塊負(fù)責(zé)檢測cpu與內(nèi)存的占用情況,并設(shè)置閥值。一旦在設(shè)定的時間內(nèi)超過預(yù)先設(shè)定的閥值,則將執(zhí)行體遷移至下一臺可用主機中繼續(xù)執(zhí)行。

由于矩陣的計算量較大、屬于計算密集類型,可以作為我們的實驗對象。設(shè)計一個簡化的矩陣(N×N)相乘的實驗方案,矩陣分解算法為:C=[A1T,A2T…][B1,B2,…]。我們假設(shè)計算矩陣相乘:A*A、B*B、C*C,其中A、B、C大小分別為:640,計算任務(wù)是計算A*A、B*B、C*C然后把三個結(jié)果矩陣中最大元素相加。在數(shù)據(jù)源端(三個體積不同的矩陣分布在不同站點上)計算矩陣相乘,計算構(gòu)件可以感知系統(tǒng)負(fù)載的變化從一個站點遷移到另一個站點進行矩陣相乘。某一構(gòu)件遷移到其目標(biāo)主機后,可以人為使主機失效,容錯塊檢測構(gòu)件失效后,立即觸發(fā)恢復(fù)機制。為驗證MCF-GOP模型的正確性與有效性,為了系統(tǒng)簡化我們設(shè)計如下實驗,系統(tǒng)分布網(wǎng)絡(luò)示意圖如圖3所示。

圖3 分布應(yīng)用網(wǎng)絡(luò)結(jié)構(gòu)

我們將計算A*A的計算構(gòu)件配置于A域(A域中有三臺計算機組成,計算構(gòu)件的home站點位于jsj01,計算構(gòu)件根據(jù)所在計算機的內(nèi)存與cpu的占用情況,自主確定是否遷移);計算B*B的計算構(gòu)件配置于B域(B域有兩臺計算機組成,jsj04為home站點);計算C*C的計算構(gòu)件配置于C域。系統(tǒng)的心跳檢測模塊與容錯恢復(fù)模塊置于D域。計算構(gòu)件在每次遷移之前做一次強檢查點,并將檢查點存放在檢查點文件中。為了驗證系統(tǒng)的容錯性,我們將該實驗分為兩部分:

(1)在構(gòu)件未遷移情況下運行。監(jiān)視器如圖4所示。

圖4 構(gòu)件未遷移

(2)系統(tǒng)在運行中,當(dāng)計算構(gòu)件從jsj02遷移至jsj03時,人為將jsj02關(guān)閉,以驗證系統(tǒng)的容錯性。系統(tǒng)檢測結(jié)果如圖5,圖6所示。

圖5 遷移構(gòu)件失效前

圖6 遷移構(gòu)件失效后

4 結(jié)語

本文提出了一種面向體系結(jié)構(gòu)的支持構(gòu)件可遷移的容錯框架-MCFGOP。使用這種容錯框架,應(yīng)用系統(tǒng)可以將軟件體系結(jié)構(gòu)描述為一個用戶定義的圖和圖上的操作,從而為開發(fā)者提供一種顯式的體系結(jié)構(gòu)。通過一組預(yù)先定義的原語實現(xiàn)構(gòu)件的通信與操作。通訊錄和home站點機制提供了構(gòu)件間的透明定位與通信,結(jié)合showdow鏈與分布式檢查點算法可以實現(xiàn)構(gòu)件的出錯后的回卷。

[1]柳穎,陳道蓄,謝立,曹建農(nóng).基于故障敏感圖的回卷算法和故障恢復(fù)[J].軟件學(xué)報,2000,11(2):235-239.

[2]Krivokapic N,Islinger M,Kemper A,et al.Migrating Autonomous Objects in a WAN Environment[J].Journal of Intelligent Information Systems,2000,15(2):221-251.

[3]王忠群,謝曉東.一種基于Java應(yīng)用構(gòu)件動態(tài)重定位模型[J].南京大學(xué)學(xué)報,2005,41(2):180-188.

[4]馬曉星,曹建農(nóng),呂建.一種面向圖的分布Web應(yīng)用架構(gòu)技術(shù)[J].計算機學(xué)報,2003,26(9):1104-1115.

[5]黃罡,梅宏,楊芙請.基于反射式軟件中間件的運行時軟件體系結(jié)構(gòu)[J].中國科學(xué)(E輯),2004,34(2):121-138.

[6]王勇,王忠群,劉濤,吳小蘭.一種支持構(gòu)件遷移的分布式系統(tǒng)容錯算法[J].計算機工程與設(shè)計,2007(15):3566-3568.

猜你喜歡
系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統(tǒng)
基于UG的發(fā)射箱自動化虛擬裝配系統(tǒng)開發(fā)
半沸制皂系統(tǒng)(下)
FAO系統(tǒng)特有功能分析及互聯(lián)互通探討
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
一德系統(tǒng) 德行天下
PLC在多段調(diào)速系統(tǒng)中的應(yīng)用
主站蜘蛛池模板: 国产精品lululu在线观看| 亚洲成在人线av品善网好看| 国产小视频免费观看| 国产免费羞羞视频| 成人福利视频网| 97人人做人人爽香蕉精品| 国产极品粉嫩小泬免费看| 98超碰在线观看| 欧美五月婷婷| 午夜国产在线观看| 欧美日韩国产在线观看一区二区三区 | 国产老女人精品免费视频| 成人福利在线看| 中文字幕不卡免费高清视频| 欧美国产中文| 婷婷亚洲天堂| 成人永久免费A∨一级在线播放| 九九热精品视频在线| 成人中文在线| 伊人久久福利中文字幕| 亚洲毛片网站| 欧美激情伊人| 一本久道热中字伊人| 免费在线观看av| 亚洲天堂视频在线观看免费| 国产精品亚洲一区二区在线观看| 欧美自慰一级看片免费| 日韩AV手机在线观看蜜芽| 国产大片喷水在线在线视频 | a毛片免费在线观看| 亚洲美女高潮久久久久久久| 一级黄色片网| 国产成人狂喷潮在线观看2345| 人妻丰满熟妇AV无码区| 亚洲精品国偷自产在线91正片| 国产日韩丝袜一二三区| 一边摸一边做爽的视频17国产| 国产精品永久免费嫩草研究院| 亚洲免费三区| 日本欧美中文字幕精品亚洲| 欧美激情网址| 99在线观看国产| 日韩在线成年视频人网站观看| 啪啪永久免费av| 亚洲精品无码AV电影在线播放| 四虎永久在线精品影院| 狠狠色香婷婷久久亚洲精品| 毛片基地美国正在播放亚洲| 欧美亚洲欧美| 无套av在线| 久久久受www免费人成| 国产香蕉国产精品偷在线观看| 久久精品人人做人人爽电影蜜月| 亚洲男女天堂| 免费人成黄页在线观看国产| 国产成人一二三| 亚洲区视频在线观看| 国产人成乱码视频免费观看| 国产一级妓女av网站| 狠狠色狠狠综合久久| 伊人久久综在合线亚洲91| 99ri精品视频在线观看播放| 日韩在线2020专区| 久久中文无码精品| 99re这里只有国产中文精品国产精品| 国产精品久久久久鬼色| 午夜限制老子影院888| 久久不卡国产精品无码| 九色综合视频网| 毛片久久久| 欧美成人看片一区二区三区| 中文字幕无码电影| 国产色爱av资源综合区| 人妻精品久久久无码区色视| 国产成人综合亚洲欧美在| 亚洲V日韩V无码一区二区| 在线视频精品一区| 在线高清亚洲精品二区| 国产成人高清精品免费| 色综合a怡红院怡红院首页| 色亚洲成人| 午夜精品福利影院|