3.2 基于移動Agent的容錯技術
移動代理是指一個可以在網(wǎng)絡上移動并執(zhí)行確定功能的程序,也就是說移動代理可以在運行的一點掛起,移動到另一臺機器并從掛起點繼續(xù)運行。從這一方面上講,它和檢查點技術頗為相似。
移動代理系統(tǒng)的研究涉及多方面的問題,其中移動代理的容錯性能占據(jù)一個重要方面,移動代理在有線或無線網(wǎng)絡上自行移動,網(wǎng)絡節(jié)點內(nèi)部程序的錯誤、網(wǎng)絡節(jié)點的崩潰或離線、網(wǎng)絡傳輸?shù)难舆t等無一不對代理的順利執(zhí)行構成威脅,移動代理的自主性、可移動性、交互性等自身特性使它的容錯性能有別于傳統(tǒng)的容錯方案。
現(xiàn)有幾種的移動代理的容錯模型多數(shù)是基于復制的。下面加以介紹:
(1)檢查點方法(Check Pointing ApprOAch)如圖3所示,當代理在庫所執(zhí)行時,它的初始代碼存儲在穩(wěn)定存儲器中,執(zhí)行狀態(tài)周期性地被存儲到檢查點,如果庫所失效,代理將從穩(wěn)定存儲器中恢復。但在實際運行過程中,檢查點需要將運行狀態(tài)及時發(fā)送到庫所存儲位置,如果庫所失效,則檢查點方法無法恢復。這種方法只能處理到庫所失效級。
圖3 檢查點容錯原理圖
(2)Stefan Pleisch和Andr 6 Schiper提出的分類方法
將多數(shù)模型分為基于暫態(tài)復制(temporal—replica—don—based)和基于空間復制(spatial—replication—based)兩類。
暫態(tài)復制基于檢查點方法,但將備份保存在前一庫所。如圖4所示,P1監(jiān)視P2和P2”,當庫所P2發(fā)生故障時,P1將代理a2送至P2’繼續(xù)執(zhí)行。可見,暫態(tài)復制能夠克服庫所故障,如果庫所處在不同的主機上還能克服主機故障。
圖4 基于暫態(tài)復制的容錯模型
空間復制方法如圖5所示,代理將每個階段的執(zhí)行結果全部復制到下一階段的庫所上,即使有一個庫所失效,其它庫所也收到了代理,也可以繼續(xù)執(zhí)行。通常每個階段只有一個代理執(zhí)行,這是由每個階段的選舉法則(voting protoco1)決定的。顯然這種方法也能克服庫所故障和主機故障。甚至在某種程度上能夠克服拜占庭故障。
圖5 基于空間復制方法的容錯模型
4 相關的比較
目前關于容錯機制的研究工作正在廣泛地開展。在已有的工作中,最簡單的方法是基于檢查點的方法,只需保存進程的檢查點,檢查點間的協(xié)作通過引入通信的策略也只要較少的消息代價就能實現(xiàn)因而其無故障操作開銷較小,但是它的故障恢復開銷卻很大,因為它需要嚴格的恢復協(xié)同和回滾后需要大量的重計算。悲觀和隨機的日志策略由于頻繁的存儲訪問、消息高開銷,它們的無故障操作開銷比較大;但樂觀日志可以以vector clock實現(xiàn)較低的無故障操作開銷,樂觀日志的低無故障開銷使其在移動環(huán)境中得以實現(xiàn)。
從移動Agent方面來考慮的話,S.Pleisch and A.Schiper提出的基于復制的技術,無論是基于暫態(tài)的復制技術(Temporal Replication based,TRB),還是基于空間的復制技術(Spatial Replication based,SRB),都將面臨一種可能,即對移動Agent故障的判斷是不可靠的,這樣將導致有多個相同的移動Agent同時在網(wǎng)絡中執(zhí)行,破壞只執(zhí)行一次的性質。
從實現(xiàn)的角度上考慮,系統(tǒng)設計者常常需要在決定每個主機的副本數(shù)量、保持每個副本和決定備份、恢復的策略等等問題上做大量工作。由于在大多數(shù)應用中,每個主機都擁有自己獨立的控制權,因此要決定諸如主機同時運行的副本數(shù)量的問題是件非常困難的事情,同時在一個主機中,運行多個副本無形中也增加了安全性方面的負擔。
核心關注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務領域、行業(yè)應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業(yè)務領域的管理,全面涵蓋了企業(yè)關注ERP管理系統(tǒng)的核心領域,是眾多中小企業(yè)信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網(wǎng)http://www.oesoe.com/
本文標題:移動計算容錯行為研究(下)
本文網(wǎng)址:http://www.oesoe.com/html/support/1112155949.html