1.什么是進(jìn)程守護(hù)系統(tǒng)?

進(jìn)程守護(hù)系統(tǒng),用于監(jiān)控指定的進(jìn)程,當(dāng)發(fā)現(xiàn)目標(biāo)進(jìn)程不再正常工作時(shí),就關(guān)閉該進(jìn)程,并重啟它。

在什么情況下使用進(jìn)程守護(hù)系統(tǒng)了?比如說(shuō),我們的某個(gè)服務(wù)器軟件,在上線后出現(xiàn)一個(gè)嚴(yán)重的bug,該bug雖然很難出現(xiàn),但是只要一出現(xiàn),整個(gè)服務(wù)都會(huì)停掉(進(jìn)程沒(méi)有崩潰,只是不再提供服務(wù))。此時(shí),重啟服務(wù)軟件,又會(huì)開(kāi)始正常工作。

對(duì)于這樣嚴(yán)重的bug,必須要查清楚并解決掉的。但是,基于以下兩個(gè)原因:

(1)系統(tǒng)已經(jīng)對(duì)用戶開(kāi)放,服務(wù)不能停。不可能說(shuō)系統(tǒng)先下線,直到bug被解決掉后再重新上線。

(2)bug很難重現(xiàn),可能需要加日志,不斷地跟蹤排查,這很可能是一場(chǎng)持久戰(zhàn)。

  為了讓系統(tǒng)繼續(xù)線上運(yùn)行,在bug解決之前,必須要保證系統(tǒng)停止服務(wù)之后,能迅速重新啟動(dòng)恢復(fù)服務(wù)。此時(shí),使用進(jìn)程守護(hù)系統(tǒng)是最恰當(dāng)不過(guò)的了。

OrayGuard就是為達(dá)到這一目的,實(shí)現(xiàn)了一個(gè)進(jìn)程守護(hù)系統(tǒng)。一個(gè)守護(hù)者程序,可以守護(hù)同一臺(tái)機(jī)器上的多個(gè)進(jìn)程。

 

2.進(jìn)程守護(hù)系統(tǒng)的實(shí)現(xiàn)及使用

OrayGuard守護(hù)者對(duì)被守護(hù)進(jìn)程的管理使用的是心跳機(jī)制,其原理描述如下:

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式