鄧志淵,崔海斌,單崇喆,尹航,唐雷
(1.中國人民解放軍91515部隊(duì),三亞572000;2.中國運(yùn)載火箭技術(shù)研究院,北京100076;3.北京宇航系統(tǒng)工程研究所,北京100076)
隨著信息技術(shù)的發(fā)展,軟件復(fù)雜度日益增加,軟件在系統(tǒng)中的規(guī)模與作用越來越大,特別是在軍事系統(tǒng)中,以軟件為核心的產(chǎn)品得到廣泛應(yīng)用,軟件質(zhì)量決定了系統(tǒng)成敗。良好的軟件可靠性設(shè)計(jì)是系統(tǒng)質(zhì)量的重要保證,是保障系統(tǒng)可靠的最有效、最重要手段。在軟件可靠性設(shè)計(jì)方面,軟件容錯(cuò)技術(shù)是目前認(rèn)可度較高,具有較好應(yīng)用前景的設(shè)計(jì)技術(shù)之一,曾被用在飛機(jī)飛行控制系統(tǒng)、交通管制系統(tǒng)、核反應(yīng)堆安全控制系統(tǒng)等失效后會(huì)出現(xiàn)嚴(yán)重后果的關(guān)鍵軟件系統(tǒng)中[1]。隨著網(wǎng)絡(luò)與集群技術(shù)的發(fā)展,在具有高可靠性要求的復(fù)雜信息系統(tǒng)中,對(duì)軟件容錯(cuò)設(shè)計(jì)提出了系統(tǒng)級(jí)應(yīng)用需求。本文將在介紹軟件容錯(cuò)設(shè)計(jì)方法基礎(chǔ)上,以復(fù)雜設(shè)備在線測試數(shù)據(jù)分析與管理系統(tǒng)為例,論述高可靠性復(fù)雜信息系統(tǒng)中軟件容錯(cuò)技術(shù)在系統(tǒng)級(jí)層面的應(yīng)用,為系統(tǒng)級(jí)容錯(cuò)設(shè)計(jì)提供借鑒。
軟件容錯(cuò)設(shè)計(jì)是系統(tǒng)可靠性設(shè)計(jì)的關(guān)鍵技術(shù)之一。軟件容錯(cuò)技術(shù)是研究在系統(tǒng)存在故障的情況下,如何發(fā)現(xiàn)故障并糾正故障,使系統(tǒng)不受到影響繼續(xù)正確運(yùn)行,或?qū)⒐收嫌绊懡档娇山邮芊懂牭募夹g(shù),使系統(tǒng)能夠繼續(xù)滿足使用要求[2]。
常用的軟件容錯(cuò)技術(shù)主要包括:冗余設(shè)計(jì)、N版本程序設(shè)計(jì)、恢復(fù)塊設(shè)計(jì)、防衛(wèi)式程序設(shè)計(jì)、服務(wù)器集群設(shè)計(jì)等[3]。冗余設(shè)計(jì)是采用增加多余資源獲得高可靠性。即在一套完整的軟件系統(tǒng)之外,設(shè)計(jì)一種不同路徑、不同算法或不同實(shí)現(xiàn)方法的模塊或系統(tǒng)作為備份,在出現(xiàn)故障時(shí)可以使用冗余部分進(jìn)行替換,從而維持軟件系統(tǒng)的正常運(yùn)行。按照對(duì)冗余資源不同可分為信息冗余、時(shí)間冗余、結(jié)構(gòu)冗余[4]。N版本程序設(shè)計(jì)是通過設(shè)計(jì)出多個(gè)模塊或不同版本,對(duì)于相同初始條件和相同輸入的操作結(jié)果,實(shí)行多數(shù)表決,防止其中某一模塊的故障提供錯(cuò)誤服務(wù),以實(shí)現(xiàn)軟件容錯(cuò)[5]。恢復(fù)塊設(shè)計(jì)是選擇一組操作作為容錯(cuò)設(shè)計(jì)單元,從而把普通程序塊變成恢復(fù)塊。一個(gè)恢復(fù)塊包含若干個(gè)功能相同、設(shè)計(jì)差異的程序塊文本,每一時(shí)刻有一個(gè)文本處于運(yùn)行狀態(tài),一旦該文本出現(xiàn)故障,則用備份文本加以替換,從而構(gòu)成動(dòng)態(tài)冗余[6]。N版本程序設(shè)計(jì)與恢復(fù)塊設(shè)計(jì)主要用于對(duì)系統(tǒng)中關(guān)鍵節(jié)點(diǎn)的容錯(cuò)設(shè)計(jì),以消除關(guān)鍵節(jié)點(diǎn)的單點(diǎn)故障。防衛(wèi)式程序設(shè)計(jì)是通過程序中包含錯(cuò)誤檢查代碼和錯(cuò)誤恢復(fù)代碼,使得一旦錯(cuò)誤發(fā)生,程序能撤銷錯(cuò)誤狀態(tài),恢復(fù)到一個(gè)已知的正確狀態(tài)中去[7]。服務(wù)器集群設(shè)計(jì)是指將一種相互獨(dú)立的服務(wù)器在網(wǎng)絡(luò)中組合成為單一系統(tǒng)工作,并以單一系統(tǒng)模式加以管理,當(dāng)一臺(tái)節(jié)點(diǎn)服務(wù)器發(fā)生故障時(shí),其上運(yùn)行的應(yīng)用程序?qū)⒈涣硪粋€(gè)節(jié)點(diǎn)服務(wù)器自動(dòng)接管,以提高系統(tǒng)可靠性[8]。
復(fù)雜設(shè)備在線測試數(shù)據(jù)分析與管理系統(tǒng)(以下簡稱“CETDAS系統(tǒng)”)為局域網(wǎng)應(yīng)用系統(tǒng),軟件主要采用B/S架構(gòu)和微服務(wù)技術(shù)構(gòu)建,硬件主要由11臺(tái)云服務(wù)器搭建集群及相關(guān)網(wǎng)絡(luò)設(shè)備、備份數(shù)據(jù)中心存儲(chǔ)設(shè)備、安全保密設(shè)備、UPS設(shè)備組成。系統(tǒng)底層對(duì)硬件資源虛擬化,形成云平臺(tái),對(duì)資源進(jìn)行統(tǒng)一分配管理,為Ha?doop大數(shù)據(jù)平臺(tái)及其上層業(yè)務(wù)應(yīng)用系統(tǒng)提供計(jì)算、網(wǎng)絡(luò)及存儲(chǔ)資源。CETDAS系統(tǒng)由數(shù)據(jù)采集平臺(tái)、數(shù)據(jù)中心、集成應(yīng)用平臺(tái)、安全保密防護(hù)系統(tǒng)4部分組成,其中集成應(yīng)用平臺(tái)按業(yè)務(wù)功能又分為復(fù)雜設(shè)備構(gòu)型與產(chǎn)品信息管理、測試任務(wù)管理、測試流程監(jiān)控、測試數(shù)據(jù)自動(dòng)判讀、測試技術(shù)資料管理、測試數(shù)據(jù)分析與挖掘、三員與權(quán)限管理、測試數(shù)據(jù)擺渡管理等8個(gè)子系統(tǒng),系統(tǒng)組成如圖1所示。
CETDAS系統(tǒng)在可靠性方面提出質(zhì)量要求,這些技術(shù)指標(biāo)將作為系統(tǒng)軟件容錯(cuò)設(shè)計(jì)的輸入。具體包括:
(1)系統(tǒng)具備7×24小時(shí)運(yùn)維能力;
(2)平均故障修復(fù)時(shí)間(MTTR)不大于30分鐘;
(3)平均故障間隔時(shí)間(MTBF)不小于1000小時(shí);
(4)具有對(duì)突發(fā)事件、故障的及時(shí)響應(yīng)和快速恢復(fù)能力。
在CETDAS系統(tǒng)中,數(shù)據(jù)中心為系統(tǒng)提供統(tǒng)一資源分配,為上層應(yīng)用提供計(jì)算與存儲(chǔ)服務(wù),同時(shí)應(yīng)用系統(tǒng)服務(wù)端部署在數(shù)據(jù)中心之上,因此,數(shù)據(jù)中心級(jí)容錯(cuò)設(shè)計(jì)是衡量系統(tǒng)能否達(dá)到可靠性質(zhì)量要求的主要因素。數(shù)據(jù)中心的容錯(cuò)設(shè)計(jì)包括:備份數(shù)據(jù)中心構(gòu)建與主數(shù)據(jù)中心容錯(cuò)設(shè)計(jì)。

圖1 復(fù)雜設(shè)備在線測試數(shù)據(jù)分析與管理系統(tǒng)架構(gòu)圖
2.2.1 備份數(shù)據(jù)中心構(gòu)建
備份數(shù)據(jù)中心作為主數(shù)據(jù)中心的冗余設(shè)計(jì),為系統(tǒng)提供了數(shù)據(jù)備份與容災(zāi)恢復(fù)功能。按照國家標(biāo)準(zhǔn),備份數(shù)據(jù)中心建設(shè)分為6個(gè)等級(jí)[9],如圖2所示。

圖2 備份數(shù)據(jù)中心建設(shè)分級(jí)圖
一級(jí)備份數(shù)據(jù)中心具有基本備份支持功能,具備介質(zhì)存儲(chǔ)備份及容災(zāi)恢復(fù)計(jì)劃;二級(jí)備份數(shù)據(jù)中心具有備用場地支持,從物理空間上實(shí)現(xiàn)對(duì)主數(shù)據(jù)中心的容災(zāi)緊急供貨;三級(jí)備份數(shù)據(jù)中心具備電子傳輸和部分設(shè)備支持,實(shí)現(xiàn)電子傳輸?shù)臄?shù)據(jù)備份并配置專職運(yùn)行管理人員;四級(jí)備份數(shù)據(jù)中心具備電子傳輸及完整設(shè)備支持,實(shí)現(xiàn)就緒狀態(tài)7×24小時(shí)運(yùn)行;五級(jí)備份數(shù)據(jù)中心具備實(shí)時(shí)數(shù)據(jù)傳輸及完整設(shè)備支持,實(shí)現(xiàn)遠(yuǎn)程在線數(shù)據(jù)恢復(fù)和網(wǎng)絡(luò)集中切換能力;六級(jí)備份數(shù)據(jù)中心具備數(shù)據(jù)零丟失和遠(yuǎn)程集群支持,實(shí)現(xiàn)數(shù)據(jù)實(shí)時(shí)備份及應(yīng)用系統(tǒng)實(shí)時(shí)無縫切換。
根據(jù)系統(tǒng)在可靠性方面的質(zhì)量要求,同時(shí)考慮項(xiàng)目進(jìn)度、成本等其他因素,經(jīng)論證,CETDAS系統(tǒng)選擇4級(jí)標(biāo)準(zhǔn)進(jìn)行備份數(shù)據(jù)中心方案設(shè)計(jì)。方案設(shè)計(jì)目標(biāo)是實(shí)現(xiàn)備份數(shù)據(jù)中心近實(shí)時(shí)數(shù)據(jù)備份功能,在主數(shù)據(jù)中心故障條件下,不會(huì)造成數(shù)據(jù)丟失,備份數(shù)據(jù)中心支持重建所需安裝程序,當(dāng)主數(shù)據(jù)中心重建后,可利用備份數(shù)據(jù)中心恢復(fù)系統(tǒng)數(shù)據(jù)。
備份數(shù)據(jù)中心與主數(shù)據(jù)中心系統(tǒng)運(yùn)行架構(gòu)如圖3所示。備份數(shù)據(jù)中心設(shè)計(jì)方案如下:與主數(shù)據(jù)中心部署在同一物理網(wǎng)絡(luò),兩個(gè)中心可通過網(wǎng)絡(luò)相連并設(shè)置為不同網(wǎng)段,其間具備防火墻等必要的安全防護(hù)設(shè)備。備份數(shù)據(jù)中心硬件能夠支持全部數(shù)據(jù)的備份存儲(chǔ)。備份數(shù)據(jù)中心能夠?qū)υ破脚_(tái),大數(shù)據(jù)平臺(tái)安裝程序及初始配置文件進(jìn)行備份;對(duì)各應(yīng)用服務(wù)軟件初始鏡像進(jìn)行備份。同時(shí),主數(shù)據(jù)中心設(shè)置定時(shí)任務(wù),指定周期在后臺(tái)對(duì)分布式數(shù)據(jù)庫、關(guān)系數(shù)據(jù)庫、分布式文件系統(tǒng)的數(shù)據(jù)進(jìn)行增量備份。主數(shù)據(jù)中心能夠監(jiān)視備份數(shù)據(jù)中心的狀態(tài),在備份數(shù)據(jù)中心異常時(shí)給出告警提示。

圖3 備份數(shù)據(jù)中心與主數(shù)據(jù)中心系統(tǒng)運(yùn)行架構(gòu)圖
當(dāng)發(fā)生災(zāi)難導(dǎo)致主數(shù)據(jù)中心無法正常運(yùn)行時(shí),備份數(shù)據(jù)中心按照以下步驟恢復(fù)系統(tǒng):
(1)恢復(fù)主數(shù)據(jù)中心硬件架構(gòu);
(2)通過備份數(shù)據(jù)中心獲取云平臺(tái)安裝程序與初始配置文件,安裝云平臺(tái)系統(tǒng);
(3)恢復(fù)云平臺(tái)之上的全部虛擬機(jī);
(4)通過備份數(shù)據(jù)中心獲取大數(shù)據(jù)平臺(tái)安裝程序與初始配置文件,安裝大數(shù)據(jù)平臺(tái)系統(tǒng);
(5)通過備份數(shù)據(jù)中心獲取各應(yīng)用服務(wù)軟件初始鏡像,安裝應(yīng)用服務(wù);
(6)恢復(fù)分布式數(shù)據(jù)庫、關(guān)系數(shù)據(jù)庫、分布式文件系統(tǒng)數(shù)據(jù)及元信息;
(7)啟動(dòng)系統(tǒng)。
2.2.2 主數(shù)據(jù)中心容錯(cuò)設(shè)計(jì)
在CETDAS系統(tǒng)中,主數(shù)據(jù)中心容錯(cuò)設(shè)計(jì)主要體現(xiàn)在集群部署設(shè)計(jì)、云平臺(tái)冗余設(shè)計(jì)、大數(shù)據(jù)平臺(tái)冗余設(shè)計(jì)三個(gè)方面。
在集群部署方面,采用集群技術(shù),虛擬了40余臺(tái)服務(wù)器,將服務(wù)分別部署在不同機(jī)柜物理節(jié)點(diǎn)的服務(wù)器上,當(dāng)其中一個(gè)服務(wù)器出現(xiàn)故障時(shí),系統(tǒng)會(huì)自動(dòng)切換到另一個(gè)臺(tái)服務(wù)器運(yùn)行。由于備份節(jié)點(diǎn)部署于不同物理機(jī)柜中,當(dāng)某一機(jī)柜網(wǎng)絡(luò)出現(xiàn)問題時(shí),仍能保證該服務(wù)可正常運(yùn)行。
云平臺(tái)冗余設(shè)計(jì)主要體現(xiàn)在資源虛擬化設(shè)計(jì)方面,通過虛擬機(jī)HA、虛擬機(jī)快照、虛擬機(jī)遷移、存儲(chǔ)遷移等技術(shù)[10]實(shí)現(xiàn)了對(duì)虛擬機(jī)的故障預(yù)計(jì)及故障自動(dòng)處理。在故障處理時(shí),支持對(duì)故障服務(wù)器進(jìn)行隔離,避免業(yè)務(wù)消息發(fā)到故障服務(wù)器,確保故障不影響系統(tǒng)正常運(yùn)行和業(yè)務(wù)正常使用,降低了故障危害。同時(shí),云計(jì)算平臺(tái)管理系統(tǒng)采用冗余備份機(jī)制,主系統(tǒng)故障可自動(dòng)切換到從系統(tǒng)提供服務(wù)。當(dāng)系統(tǒng)冗余度降低時(shí),可利用云平臺(tái)的HA機(jī)制恢復(fù)其冗余度,從而保證在長時(shí)間免維護(hù)情況下系統(tǒng)的不間斷應(yīng)用。
大數(shù)據(jù)平臺(tái)冗余設(shè)計(jì)主要體現(xiàn)在分布式文件系統(tǒng)管理節(jié)點(diǎn)的冗余備份機(jī)制[11]。分布式文件管理系統(tǒng)HDFS管理節(jié)點(diǎn)NameNode的備份機(jī)制利用Zookeeper的寫一致性和臨時(shí)節(jié)點(diǎn)機(jī)制實(shí)現(xiàn)[12]。為每個(gè)NameNode設(shè)置監(jiān)視節(jié)點(diǎn),若監(jiān)視節(jié)點(diǎn)檢測到對(duì)應(yīng)的NameNode狀態(tài)正常,則表示這個(gè)NameNode有資格參加Zookeeper的主備選舉。若目前還沒有進(jìn)行過主備選舉,則系統(tǒng)就會(huì)發(fā)起一次新的主備選舉,在Zookeeper上創(chuàng)建路徑為/hadoop-ha/${dfs.nameservices}/ActiveStandbyElector?Lock的臨時(shí)節(jié)點(diǎn)(其中,${dfs.nameservices}為Hadoop的配置參數(shù)dfs.nameservices的值)。Zookeeper的寫一致性會(huì)保證最終只會(huì)有一個(gè)臨時(shí)節(jié)點(diǎn)創(chuàng)建成功,創(chuàng)建成功的NameNode就會(huì)成為主NameNode,創(chuàng)建失敗的NameNode成為備NameNode。主NameNode在Active狀態(tài),備NameNode會(huì)被切換為Standby狀態(tài),多個(gè)NameNode節(jié)點(diǎn)通過共享存儲(chǔ)實(shí)現(xiàn)元信息共享。通過大數(shù)據(jù)平臺(tái)的冗余設(shè)計(jì),實(shí)現(xiàn)了Active狀態(tài)的NameNode節(jié)點(diǎn)故障時(shí)自動(dòng)將Standby狀態(tài)的Name Node節(jié)點(diǎn)切換到Active狀態(tài),使系統(tǒng)持續(xù)提供服務(wù)。
CETDAS系統(tǒng)的數(shù)據(jù)庫級(jí)容錯(cuò)設(shè)計(jì)主要包括:分布式數(shù)據(jù)庫容錯(cuò)設(shè)計(jì)與關(guān)系型數(shù)據(jù)庫容錯(cuò)設(shè)計(jì)。
2.3.1 分布式數(shù)據(jù)庫容錯(cuò)設(shè)計(jì)
在CETDAS系統(tǒng)中,分布式數(shù)據(jù)庫用于存放標(biāo)準(zhǔn)格式的測試數(shù)據(jù)。分布式數(shù)據(jù)庫采用HBase,底層基于分布式文件系統(tǒng)HDFS構(gòu)建,如圖4所示。HBase分布式數(shù)據(jù)庫繼承了分布式文件系統(tǒng)HDFS的可靠性、高性能和可擴(kuò)展性,其冗余與擴(kuò)展機(jī)制為:利用分布式文件系統(tǒng)存儲(chǔ)多個(gè)復(fù)本的元信息和Zookeeper的選舉機(jī)制實(shí)現(xiàn)管理節(jié)點(diǎn)的多機(jī)備份;利用分布式文件系統(tǒng)存儲(chǔ)數(shù)據(jù)表的多個(gè)副本,實(shí)現(xiàn)數(shù)據(jù)的冗余存儲(chǔ);數(shù)據(jù)庫表到達(dá)一定規(guī)模后會(huì)根據(jù)Key值自動(dòng)分裂,分布到多個(gè)節(jié)點(diǎn),實(shí)現(xiàn)負(fù)載均衡。

圖4 HBase分布式數(shù)據(jù)庫結(jié)構(gòu)圖
HBase分布式數(shù)據(jù)庫在數(shù)據(jù)恢復(fù)方面實(shí)現(xiàn)了數(shù)據(jù)庫鏡像機(jī)制。創(chuàng)建鏡像時(shí),數(shù)據(jù)庫能夠保存源信息的副本,并對(duì)元信息指向的全部底層文件進(jìn)行保護(hù),防止文件在后續(xù)操作中被刪除或移動(dòng)。通過鏡像機(jī)制,能夠在數(shù)據(jù)庫損壞時(shí)恢復(fù)到某一時(shí)刻的狀態(tài)。
2.3.2 關(guān)系型數(shù)據(jù)庫容錯(cuò)設(shè)計(jì)
在CETDAS系統(tǒng)中,關(guān)系型數(shù)據(jù)庫存儲(chǔ)各業(yè)務(wù)系統(tǒng)產(chǎn)生的格式化數(shù)據(jù),選用MySQL關(guān)系型數(shù)據(jù)庫實(shí)現(xiàn)。MySQL數(shù)據(jù)庫采用雙機(jī)熱備的主從備份模式進(jìn)行容錯(cuò)設(shè)計(jì)。具體方案是:使用兩臺(tái)服務(wù)器,一臺(tái)作為主服務(wù)器,運(yùn)行MySQL數(shù)據(jù)庫管理系統(tǒng)提供服務(wù)。另一臺(tái)作為備份服務(wù)器,安裝完全一樣的MySQL數(shù)據(jù)庫管理系統(tǒng),但處于待機(jī)狀態(tài)。當(dāng)主服務(wù)器出現(xiàn)故障時(shí),通過軟件診測將備份機(jī)器激活,保證MySQL數(shù)據(jù)庫在短時(shí)間內(nèi)恢復(fù)正常運(yùn)行。

圖5 MySQL數(shù)據(jù)庫雙機(jī)熱備運(yùn)行模式示意圖
在主從服務(wù)器同步方面,采用讀寫二進(jìn)制日志文件的方式實(shí)現(xiàn)。作為主服務(wù)器Master,把自己每一次改動(dòng)都記錄到二進(jìn)制日志Binarylog中。作為從服務(wù)器Slave,會(huì)用Master上的賬號(hào)登錄到Master上,讀取Master的Binarylog,寫入到自己的中繼日志Relaylog中,然后從服務(wù)器的SQL線程會(huì)負(fù)責(zé)讀取這個(gè)中繼日志并執(zhí)行,實(shí)現(xiàn)主從數(shù)據(jù)庫同步,其運(yùn)行機(jī)制如圖5所示。
在CETDAS系統(tǒng)中,應(yīng)用系統(tǒng)級(jí)容錯(cuò)設(shè)計(jì)主要體現(xiàn)在開發(fā)設(shè)計(jì)準(zhǔn)則,通過約束系統(tǒng)設(shè)計(jì),提高代碼質(zhì)量,降低系統(tǒng)復(fù)雜度。例如,要求系統(tǒng)采用組件式開發(fā),統(tǒng)一使用Springcloud技術(shù)棧實(shí)現(xiàn)新服務(wù),并強(qiáng)制使用Hystrix熔斷組件實(shí)現(xiàn)容錯(cuò)機(jī)制[13]。同時(shí),提出防衛(wèi)式程序設(shè)計(jì)要求,在方案設(shè)計(jì)階段對(duì)各業(yè)務(wù)流程進(jìn)行事務(wù)性分析,辨別哪些業(yè)務(wù)具有事務(wù)原子性、一致性等特性,在實(shí)現(xiàn)中需按事務(wù)模式處理。提出采用Trycatch異常處理拋出自定義業(yè)務(wù)異常設(shè)計(jì)要求,特別是各服務(wù)系統(tǒng)邊界類之間的數(shù)據(jù)調(diào)用,需按統(tǒng)一化規(guī)定定義好業(yè)務(wù)中出現(xiàn)的異常,避免故障定位不清等問題。在處理異常時(shí),規(guī)范界面告警信息的提示規(guī)則,以便為故障恢復(fù)提供指導(dǎo)。
CETDAS系統(tǒng)自上線以來運(yùn)行良好,滿足使用需求,達(dá)到了7×24小時(shí)運(yùn)行等可靠性設(shè)計(jì)指標(biāo)要求。但在運(yùn)行中也暴露了一些可靠性設(shè)計(jì)中考慮不足的情況。例如,沒有考慮到頻繁斷電的系統(tǒng)用電環(huán)境,導(dǎo)致MySQL數(shù)據(jù)庫選用主從備份方案不合適,當(dāng)主服務(wù)器失效后,從服務(wù)器被激活為Active狀態(tài)時(shí)寫入的數(shù)據(jù),無法在主服務(wù)器恢復(fù)運(yùn)行后向主服務(wù)器同步,導(dǎo)致數(shù)據(jù)狀態(tài)回滾。針對(duì)這一問題,提出解決措施:將MySQL數(shù)據(jù)庫的“主從模式”改為“主主模式”,并采用雙Mas?ter+Keepalived方案防止響應(yīng)延遲產(chǎn)生“腦裂”[14]。經(jīng)改進(jìn),解決了數(shù)據(jù)回滾問題,提高了系統(tǒng)可靠性。
本文針對(duì)復(fù)雜信息系統(tǒng)的高可靠性需求,對(duì)系統(tǒng)級(jí)軟件容錯(cuò)設(shè)計(jì)方法進(jìn)行研究,以CETDAS系統(tǒng)為例,從數(shù)據(jù)中心級(jí)、數(shù)據(jù)庫級(jí)、應(yīng)用系統(tǒng)級(jí)三個(gè)層面論述了軟件容錯(cuò)設(shè)計(jì),為提高復(fù)雜系統(tǒng)的可靠性提供一種有效解決方案。