史飛
摘 要:進(jìn)入二十一世紀(jì)以來(lái),我國(guó)各行各業(yè)對(duì)于計(jì)算機(jī)技術(shù)的應(yīng)用已經(jīng)非常廣泛,計(jì)算機(jī)服務(wù)器系統(tǒng)是計(jì)算機(jī)技術(shù)中非常重要的技術(shù)之一,服務(wù)器技術(shù)能為國(guó)防、醫(yī)療、金融、教育等各行各業(yè)提供計(jì)算機(jī)系統(tǒng)的不間斷服務(wù),但是服務(wù)器系統(tǒng)一旦出現(xiàn)問題,就可能會(huì)給使用單位帶來(lái)巨大的損失,因此發(fā)展計(jì)算機(jī)服務(wù)器系統(tǒng)的容錯(cuò)技術(shù)對(duì)我國(guó)各個(gè)領(lǐng)域都顯得尤為重要?;诖?,本文著重對(duì)計(jì)算機(jī)服務(wù)器系統(tǒng)的容錯(cuò)技術(shù)進(jìn)行討論。
關(guān)鍵詞:計(jì)算機(jī);服務(wù)器系統(tǒng);容錯(cuò)技術(shù)
中圖分類號(hào): TP302.8 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1673-1069(2016)18-171-2
1 容錯(cuò)技術(shù)概述
二十一世紀(jì)以來(lái),計(jì)算機(jī)技術(shù)得到了很大發(fā)展,從第一代計(jì)算機(jī)已經(jīng)發(fā)展到了目前的第五代,現(xiàn)在各行各業(yè)都是使用計(jì)算機(jī)系統(tǒng)來(lái)為自己提供信息服務(wù),在使用過(guò)程中計(jì)算機(jī)系統(tǒng)或多或少都會(huì)發(fā)生故障,這些故障有大有小,小故障我們自己可以解決,但是一旦出現(xiàn)大故障就會(huì)給我們帶來(lái)數(shù)據(jù)丟失,服務(wù)器癱瘓甚至網(wǎng)絡(luò)癱瘓等巨大損失。
為確保計(jì)算機(jī)系統(tǒng)高效、安全的運(yùn)行,當(dāng)計(jì)算機(jī)系統(tǒng)出現(xiàn)故障時(shí),就必須有適當(dāng)?shù)拇胧﹣?lái)解決計(jì)算機(jī)系統(tǒng)的故障。為此人們提出了兩種解決計(jì)算機(jī)系統(tǒng)故障的辦法:一種是避錯(cuò)。另外一種是容錯(cuò),即計(jì)算機(jī)系統(tǒng)在運(yùn)行時(shí)如果出現(xiàn)了錯(cuò)誤,那么系統(tǒng)會(huì)按照事先規(guī)定好的一組程序來(lái)執(zhí)行程序中的指令,在執(zhí)行了這組程序后,執(zhí)行的結(jié)果不會(huì)因?yàn)橄到y(tǒng)的故障而出現(xiàn)差錯(cuò)。提高計(jì)算機(jī)系統(tǒng)可靠性的重要手段就是計(jì)算機(jī)系統(tǒng)的容錯(cuò)技術(shù)。
計(jì)算機(jī)故障是指由環(huán)境影響、操作錯(cuò)誤等原因引起的計(jì)算機(jī)系統(tǒng)軟硬件錯(cuò)誤。容錯(cuò)技術(shù)可以在計(jì)算機(jī)系統(tǒng)發(fā)生故障時(shí)排除故障并且保證系統(tǒng)的正常運(yùn)行后得到正確的結(jié)果。
2 容錯(cuò)技術(shù)的概念及分析
容錯(cuò)是在計(jì)算機(jī)系統(tǒng)出現(xiàn)或者即將出現(xiàn)故障時(shí),計(jì)算機(jī)系統(tǒng)為能保證正常運(yùn)轉(zhuǎn)采取的一種不影響輸出結(jié)果的措施。冗余方法是容錯(cuò)技術(shù)中消除故障的重要方法,因此冗余技術(shù)可以成為計(jì)算機(jī)容錯(cuò)技術(shù)的基礎(chǔ),冗余技術(shù)按照方式分類可分為如下四種:
①硬件冗余:是指在計(jì)算機(jī)系統(tǒng)中增加一定的硬件設(shè)備來(lái)達(dá)到屏蔽錯(cuò)誤的目的。硬件冗余技術(shù)包含完全冗余和部分冗余兩種方式。完全冗余又可分為熱備、冷備、溫備以及雙施工四種主要工作方式。
熱備方式 :即一共有兩臺(tái)服務(wù)器,這兩臺(tái)服務(wù)器互為冗余,且都處于帶電工作狀態(tài)。其中一臺(tái)服務(wù)器是主服務(wù)器,另外一臺(tái)則是熱備服務(wù)器即備用服務(wù)器,正常狀態(tài)下熱備服務(wù)器不輸出結(jié)果,只是處于準(zhǔn)備狀態(tài)。但是當(dāng)主服務(wù)器發(fā)生故障后,則熱備服務(wù)器啟動(dòng)接手主服務(wù)器的工作。若主服務(wù)器處理完畢,則主服務(wù)器繼續(xù)工作,備用服務(wù)器停止重新進(jìn)入備用等待狀態(tài),若主服務(wù)器無(wú)法繼續(xù)工作,則備用服務(wù)器就一直接替主服務(wù)器工作。
冷備方式:冷備方式與熱備方式在系統(tǒng)運(yùn)行時(shí)就一點(diǎn)不同,即冷備方式中備用系統(tǒng)不處于加電工作狀態(tài),一旦主系統(tǒng)出現(xiàn)故障,則冷備系統(tǒng)開始加電工作,待主系統(tǒng)故障處理完成后,冷備系統(tǒng)停止工作。
溫備方式:與熱備方式相同,都有兩個(gè)服務(wù)器系統(tǒng),且兩個(gè)都處于帶電狀態(tài),其中一個(gè)是主服務(wù)器,另一個(gè)則是備用服務(wù)器。主服務(wù)器正常工作,備用服務(wù)器則一直處于等待備用狀態(tài),若主要機(jī)器發(fā)生故障, 處于等待狀態(tài)的機(jī)器就接手主機(jī)器繼續(xù)工作,待主機(jī)器恢復(fù)后自動(dòng)變成備用等待的機(jī)器。
雙施工方式:即有兩臺(tái)服務(wù)器,這兩臺(tái)服務(wù)器按照程序同時(shí)進(jìn)行工作,分別對(duì)輸出的結(jié)果進(jìn)行比較,兩臺(tái)機(jī)器無(wú)論那臺(tái)出現(xiàn)故障,對(duì)于最終的結(jié)果只需要對(duì)結(jié)果進(jìn)行比較即可。
②軟件冗余:與硬件系統(tǒng)的故障研究相比較,軟件系統(tǒng)的故障則顯得較難。目前對(duì)于軟件系統(tǒng)的可靠性、設(shè)計(jì)錯(cuò)誤的檢測(cè)還沒有形成一套完整的、可靠的、行之有效的辦法。
前向恢復(fù)策略和后向恢復(fù)策略是當(dāng)前應(yīng)用最廣的兩種解決軟件故障的策略。前向恢復(fù)即讓計(jì)算機(jī)當(dāng)前錯(cuò)誤的計(jì)算狀態(tài)繼續(xù),而將以后的狀態(tài)恢復(fù)到正確的連貫狀態(tài)上。后向恢復(fù)即將系統(tǒng)狀態(tài)恢復(fù)到前一個(gè)正確狀態(tài)中。
前向恢復(fù):前向恢復(fù)的目的是減少各個(gè)軟件在表決點(diǎn)上出現(xiàn)錯(cuò)誤的概率,其主要方法為N-version Programming方法工作方式。
后向恢復(fù):后向恢復(fù)方法主要有恢復(fù)塊方法和防衛(wèi)式程序設(shè)計(jì)方法?;謴?fù)塊方法就是將系統(tǒng)分成很多塊,其中只有一個(gè)主塊,其余都是備用塊,當(dāng)主塊出現(xiàn)故障后,主塊可以指定一個(gè)備用塊繼續(xù)運(yùn)行,直至所有的備用塊都運(yùn)行完,主塊和后備塊保證互相獨(dú)立,運(yùn)行時(shí)互不干擾。
③信息冗余:為了使系統(tǒng)能夠?qū)收线M(jìn)行檢測(cè)且恢復(fù),我們利用在原始的數(shù)據(jù)中加入冗余信息的方法來(lái)帶到目的,這種方法就是信息冗余。加入的冗余信息包括檢錯(cuò)和糾錯(cuò)編碼二種。我們利用檢錯(cuò)編碼來(lái)自動(dòng)檢驗(yàn)錯(cuò)誤,而利用糾錯(cuò)編碼可以糾正錯(cuò)誤。
④時(shí)間冗余:目前流行的時(shí)間冗余方式有兩種,一種是 RSHW,即對(duì)一組數(shù)據(jù)執(zhí)行同一指令時(shí),通過(guò)在不同的時(shí)間片,但是在相同的硬件上來(lái)執(zhí)行。第二種是使用數(shù)據(jù)延遲設(shè)備及表決電路結(jié)合,將一次數(shù)據(jù)處理的輸出結(jié)果通過(guò)設(shè)置不同的延遲大小而復(fù)制成多個(gè)版本并在表決器處進(jìn)行比較。
3 服務(wù)器容錯(cuò)技術(shù)對(duì)比
目前最為流行的服務(wù)器容錯(cuò)技術(shù)主要有以下三類:服務(wù)器群集技術(shù)、雙機(jī)熱備份技術(shù)和單機(jī)容錯(cuò)技術(shù)。它們的級(jí)別由低到高,集群技術(shù)級(jí)別最低,雙機(jī)熱備份技術(shù)級(jí)別居中,單機(jī)容錯(cuò)技術(shù)級(jí)別最高。
3.1 雙機(jī)熱備份
雙機(jī)熱備份技術(shù)是一種軟硬件結(jié)合的應(yīng)用方案。該方案的組成為:兩臺(tái)服務(wù)器,一個(gè)共享磁盤陣列柜,及相應(yīng)的程序。在這種雙機(jī)熱備份技術(shù)中,專業(yè)人員對(duì)數(shù)據(jù)進(jìn)行管理,且數(shù)據(jù)是存放在磁盤陣列柜中的,這就確保了數(shù)據(jù)的安全。工作中,數(shù)據(jù)是由中央存儲(chǔ)器進(jìn)行讀取和存儲(chǔ)的,在工作時(shí),其中的主服務(wù)器出現(xiàn)問題,則另外一臺(tái)服務(wù)器就會(huì)立即啟動(dòng)接替主服務(wù)器進(jìn)行工作,確保了系統(tǒng)的安全運(yùn)行。
為確保雙機(jī)熱備份系統(tǒng)的正常工作,該系統(tǒng)運(yùn)用了兩臺(tái)服務(wù)器互發(fā)通訊信號(hào)的方法保持兩臺(tái)服務(wù)器的相互聯(lián)系,兩臺(tái)服務(wù)器按照事先約定好的時(shí)間間隔互相發(fā)送信號(hào),以表明自己目前的狀態(tài)是否正常,若一臺(tái)服務(wù)器沒有在約定時(shí)間內(nèi)收到另外一臺(tái)發(fā)過(guò)來(lái)的信號(hào),這就可以認(rèn)為這臺(tái)沒有發(fā)送信號(hào)的服務(wù)器出現(xiàn)問題,則系統(tǒng)管理軟件會(huì)迅速啟動(dòng)備用系統(tǒng),確保不間斷、正常的工作。
在雙機(jī)熱備份方案中,共有雙機(jī)熱備模式、雙機(jī)互備模式和雙機(jī)雙工模式三種工作模式。
①雙機(jī)熱備模式:在該模式中一共有主服務(wù)器和備用服務(wù)器兩臺(tái)。兩臺(tái)服務(wù)器同時(shí)寫入數(shù)據(jù),確保了數(shù)據(jù)的同步。一旦主服務(wù)器在運(yùn)行時(shí)發(fā)生故障,可立即將備用服務(wù)器激活, 確保了服務(wù)器的不間斷運(yùn)行。
②雙機(jī)互備模式:即共有兩臺(tái)服務(wù)器,且這兩臺(tái)服務(wù)器同時(shí)運(yùn)行兩個(gè)獨(dú)立的應(yīng)用,運(yùn)行時(shí)無(wú)論那臺(tái)服務(wù)器出現(xiàn)故障,另外一臺(tái)都可以將出現(xiàn)故障的服務(wù)器運(yùn)行內(nèi)容進(jìn)行接管,確保了服務(wù)的連續(xù)運(yùn)行,具有很高的安全性,且該種對(duì)服務(wù)器的配置要求也較高。
③雙機(jī)雙工模式:即共有兩臺(tái)服務(wù)器,這兩臺(tái)服務(wù)器同時(shí)工作,且運(yùn)行的程序一致,實(shí)現(xiàn)了負(fù)載的均衡。應(yīng)用這種方式較多的是WEB服務(wù)器或FTP服務(wù)器。
3.2 單機(jī)容錯(cuò)
簡(jiǎn)單的講單機(jī)容錯(cuò)技術(shù)就是只使用一臺(tái)服務(wù)器進(jìn)行高性能的容錯(cuò)。相對(duì)于其他的容錯(cuò)技術(shù)其最大優(yōu)勢(shì)就是可以將發(fā)生故障模塊自動(dòng)分離出去,并且將故障模塊和備用模塊進(jìn)行調(diào)換,一旦故障被排除,容錯(cuò)技術(shù)就會(huì)讓系統(tǒng)重新開始運(yùn)行。為實(shí)現(xiàn)真正意義上的容錯(cuò),單機(jī)容錯(cuò)服務(wù)器通過(guò)系統(tǒng)內(nèi)所有冗余部件進(jìn)行同步運(yùn)行?,F(xiàn)在市場(chǎng)上基于IA架構(gòu)的服務(wù)器是市場(chǎng)的主流,它能夠?qū)崿F(xiàn)與視窗(windows)系統(tǒng)的兼容?,F(xiàn)在在RISC系統(tǒng)實(shí)現(xiàn)的容錯(cuò)也能在視窗(windows)系統(tǒng)實(shí)現(xiàn)。目前市場(chǎng)上的單機(jī)容錯(cuò)產(chǎn)品除了兼容性等優(yōu)點(diǎn)外,還具有支持包括主板在內(nèi)等關(guān)鍵硬件的熱插拔功能。制造業(yè)等對(duì)于連續(xù)性要求不嚴(yán)格的企業(yè)適用雙機(jī)熱備份模式。金融、證券等對(duì)業(yè)務(wù)連續(xù)性要求很高的企業(yè)適合使用容錯(cuò)服務(wù)器。在實(shí)際應(yīng)用中,單機(jī)容錯(cuò)服務(wù)器實(shí)際使用有一臺(tái)服務(wù)器,而雙機(jī)熱備份模式在實(shí)際應(yīng)用中至少需要2臺(tái)服務(wù)器,因此雙機(jī)熱備份模式的投入比單機(jī)容錯(cuò)方式多1倍。
4 總結(jié)
隨著計(jì)算機(jī)技術(shù)的發(fā)展,人們?cè)絹?lái)越重視計(jì)算機(jī)系統(tǒng)的可靠性,容錯(cuò)技術(shù)的發(fā)展使計(jì)算機(jī)系統(tǒng)的可靠性進(jìn)一步增強(qiáng),我們有理由相信未來(lái)容錯(cuò)技術(shù)必將得到更快的發(fā)展。
參 考 文 獻(xiàn)
[1] 吳玥.淺析計(jì)算機(jī)服務(wù)器系統(tǒng)的容錯(cuò)技術(shù)[J].無(wú)線互聯(lián)科技,2012(10).
[2] 吳輝明.關(guān)于計(jì)算機(jī)系統(tǒng)的容錯(cuò)技術(shù)[J].網(wǎng)絡(luò)與信息工程,2015(12).