油氣管道系統(tǒng)應(yīng)用業(yè)務(wù)的定時(shí)任務(wù)管理方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明是有關(guān)于油氣管道應(yīng)用領(lǐng)域,尤其是指一種油氣管道系統(tǒng)應(yīng)用業(yè)務(wù)的定時(shí)任務(wù)管理方法及裝置。
【背景技術(shù)】
[0002]在油氣管道SCADA應(yīng)用中,為了周期地執(zhí)行系統(tǒng)制定的任務(wù)和指令,一般采用操作系統(tǒng)提供的crontab實(shí)現(xiàn)。但是這種方案依賴操作系統(tǒng)的crontab,由于不同的操作系統(tǒng)提供的crontab的使用方法不同,造成油氣管道SCADA應(yīng)用中定時(shí)任務(wù)管理使用方法繁瑣、工程實(shí)施困難;同時(shí)這種方案提供的定時(shí)任務(wù)管理功能僅能滿足于周期執(zhí)行任務(wù)和定時(shí)執(zhí)行任務(wù),不能與油氣管道SCADA應(yīng)用業(yè)務(wù)結(jié)合,實(shí)現(xiàn)根據(jù)特定業(yè)務(wù)、特定條件下的任務(wù)執(zhí)行。
[0003]為了實(shí)現(xiàn)與油氣管道SCADA應(yīng)用結(jié)合起來(lái)的定時(shí)任務(wù)管理,一般采用的辦法是,油氣管道SCADA應(yīng)用人員開(kāi)發(fā)任務(wù)、實(shí)現(xiàn)任務(wù)自身功能時(shí),需要編寫大量的應(yīng)用程序或腳本來(lái)判斷油氣管道SCADA應(yīng)用中相關(guān)應(yīng)用業(yè)務(wù)的運(yùn)行狀態(tài),來(lái)實(shí)現(xiàn)特定業(yè)務(wù)、特定條件下的任務(wù)執(zhí)行,而這種任務(wù)通過(guò)crontab周期執(zhí)行或定時(shí)執(zhí)行是不能滿足的。這種方法給油氣管道SCADA應(yīng)用人員增加了大量的工作,耗費(fèi)了大量的精力去完成自身業(yè)務(wù)外的功能開(kāi)發(fā),而不能集中更多地力量去完成自身任務(wù)的定義、編寫和規(guī)劃。因此,當(dāng)前油氣管道SCADA應(yīng)用領(lǐng)域急需一種基于油氣管道領(lǐng)域,操作簡(jiǎn)單的且可進(jìn)行邏輯處理的定時(shí)管理系統(tǒng)。
【發(fā)明內(nèi)容】
[0004]針對(duì)上述問(wèn)題,本發(fā)明目的在于提出了一種統(tǒng)一的、基于油氣管道SCADA應(yīng)用業(yè)務(wù)狀態(tài)邏輯的、特定條件和時(shí)間條件判斷的觸發(fā)規(guī)則的定時(shí)任務(wù)管理方法及裝置。
[0005]為了達(dá)到上述實(shí)施目的,本發(fā)明提供一種油氣管道系統(tǒng)應(yīng)用業(yè)務(wù)的定時(shí)任務(wù)管理方法,該方法包括:依次讀取指定存儲(chǔ)地址的定時(shí)任務(wù)信息數(shù)據(jù)進(jìn)行分類數(shù)據(jù)校驗(yàn);獲取油氣管道系統(tǒng)中各種應(yīng)用狀態(tài)的主備狀態(tài)信息;依次將通過(guò)分類數(shù)據(jù)校驗(yàn)的定時(shí)任務(wù)信息與所述主備狀態(tài)信息匹配;根據(jù)特定格式獲取通過(guò)匹配的定時(shí)任務(wù)信息的時(shí)間信息數(shù)據(jù),將所述時(shí)間信息數(shù)據(jù)與當(dāng)前時(shí)間進(jìn)行比較,根據(jù)比較信息確定任務(wù)執(zhí)行的循環(huán)周期及定時(shí)開(kāi)始執(zhí)行的條件。
[0006]本發(fā)明還提供一種油氣管道系統(tǒng)應(yīng)用業(yè)務(wù)的定時(shí)任務(wù)管理裝置,包括:存儲(chǔ)單元,用于獲取定時(shí)任務(wù)信息并存儲(chǔ)于指定存儲(chǔ)地址;讀取單元,用于讀取存儲(chǔ)單元中指定存儲(chǔ)地址中的定時(shí)任務(wù)信息;校驗(yàn)單元,用于接收讀取單元中讀取的定時(shí)任務(wù)信息并進(jìn)行分類數(shù)據(jù)校驗(yàn);匹配單元,用于獲取油氣管道系統(tǒng)中各種應(yīng)用狀態(tài)的主備狀態(tài)信息并依次將通過(guò)分類數(shù)據(jù)校驗(yàn)的定時(shí)任務(wù)信息與所述主備狀態(tài)信息匹配;比較處理單元:用于獲取通過(guò)匹配的定時(shí)任務(wù)信息的時(shí)間信息并與當(dāng)前時(shí)間進(jìn)行比較,根據(jù)比較信息確定任務(wù)執(zhí)行的循環(huán)周期及定時(shí)開(kāi)始執(zhí)行的條件。
[0007]本發(fā)明的有益技術(shù)效果在于:通過(guò)本申請(qǐng)可以彌補(bǔ)單一靠操作系統(tǒng)提供crontab實(shí)現(xiàn)的定時(shí)任務(wù)無(wú)法對(duì)具體油氣管道SCADA應(yīng)用業(yè)務(wù)狀態(tài)、特定條件做出判斷以及各類UNIX操作系統(tǒng)配置使用crontab差異、繁瑣等缺陷,實(shí)現(xiàn)根據(jù)油氣管道SCADA特定應(yīng)用業(yè)務(wù)、特定條件下的任務(wù)執(zhí)行。從而,讓油氣管道SCADA應(yīng)用人員開(kāi)發(fā)任務(wù)時(shí),注意力從對(duì)各應(yīng)用業(yè)務(wù)狀態(tài)或設(shè)備節(jié)點(diǎn)的關(guān)注中,轉(zhuǎn)移到對(duì)自身任務(wù)的定義、處理和規(guī)劃。
【附圖說(shuō)明】
[0008]為了更清楚地說(shuō)明本發(fā)明實(shí)施例,下面將對(duì)實(shí)施例中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0009]圖1為本發(fā)明系統(tǒng)定時(shí)任務(wù)整體流程圖;
[0010]圖2為本發(fā)明系統(tǒng)應(yīng)用業(yè)務(wù)狀態(tài)判斷和時(shí)間處理的流程圖;
[0011]圖3為本發(fā)明數(shù)據(jù)流向及本發(fā)明整體結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0012]本發(fā)明的目的及其結(jié)構(gòu)功能上的優(yōu)點(diǎn),將依據(jù)以下附圖所示的結(jié)構(gòu),配合具體實(shí)施例予以說(shuō)明,俾使審查委員能對(duì)本發(fā)明有更深入且具體的了解。
[0013]首先,本發(fā)明提供一種油氣管道系統(tǒng)應(yīng)用業(yè)務(wù)的定時(shí)任務(wù)管理方法,其整體流程如圖1所示,由業(yè)務(wù)員于人機(jī)界面向定時(shí)任務(wù)管理系統(tǒng)輸入定時(shí)任務(wù)信息,定時(shí)任務(wù)管理系統(tǒng)將接收的定時(shí)任務(wù)信息基于文件或數(shù)據(jù)庫(kù)兩種方式存儲(chǔ)于指定的存儲(chǔ)地址,然后通過(guò)獲取指定存儲(chǔ)地址的定時(shí)任務(wù)信息,進(jìn)行各類數(shù)據(jù)校驗(yàn)后,將符合條件的定時(shí)任務(wù)管理信息加載到執(zhí)行設(shè)備,執(zhí)行相關(guān)的任務(wù)。
[0014]其中,通過(guò)從文件或數(shù)據(jù)庫(kù)獲取得到的定時(shí)任務(wù)信息中的應(yīng)用數(shù)據(jù)信息、設(shè)備節(jié)點(diǎn)名、用戶名、時(shí)間信息來(lái)與本方法中自主定義的各種應(yīng)用類型值、系統(tǒng)獲取的設(shè)備節(jié)點(diǎn)名以及系統(tǒng)獲取的用戶名進(jìn)行校驗(yàn),從而區(qū)分出各種配置在文件或數(shù)據(jù)庫(kù)中的定時(shí)任務(wù)是屬于哪種應(yīng)用,是否滿足設(shè)備節(jié)點(diǎn)、用戶名條件,如果上述校驗(yàn)不滿足當(dāng)前系統(tǒng)的條件,將重新從文件或數(shù)據(jù)庫(kù)中取下一條任務(wù)重新校驗(yàn),直到取到滿足當(dāng)前系統(tǒng)校驗(yàn)條件的任務(wù)。
[0015]當(dāng)上述校驗(yàn)通過(guò)后,然后由定時(shí)任務(wù)管理方法分類檢測(cè)油氣管道SCADA系統(tǒng)中各種應(yīng)用狀態(tài)的主機(jī)狀態(tài)與備機(jī)狀態(tài)信息,再次根據(jù)任務(wù)中配置的應(yīng)用數(shù)據(jù)信息與獲取到的油氣管道SCADA系統(tǒng)中應(yīng)用狀態(tài)的主機(jī)狀態(tài)與備機(jī)狀態(tài)信息相比較,來(lái)判斷本設(shè)備是否是某類應(yīng)用下的主機(jī)設(shè)備或備機(jī)設(shè)備,如果不符合當(dāng)前系統(tǒng)的主機(jī)狀態(tài)與備機(jī)狀態(tài)信息,將重新從文件或數(shù)據(jù)庫(kù)中取下一條校驗(yàn)通過(guò)且符合系統(tǒng)該類應(yīng)用主備信息的任務(wù);當(dāng)所有與應(yīng)用、設(shè)備節(jié)點(diǎn)名、用戶名相關(guān)的信息都校驗(yàn)通過(guò)后,最后開(kāi)始校驗(yàn)時(shí)間信息,與當(dāng)前時(shí)間比較,來(lái)確定任務(wù)執(zhí)行的循環(huán)周期及定時(shí)開(kāi)始執(zhí)行的條件,從而實(shí)現(xiàn)周期、定時(shí)、特定應(yīng)用條件下執(zhí)行任務(wù)的方法。
[0016]油氣管道SCADA系統(tǒng)應(yīng)用業(yè)務(wù)的定時(shí)任務(wù)通過(guò)文件操作或者數(shù)據(jù)庫(kù)操作方式配置SCADA系統(tǒng)應(yīng)用業(yè)務(wù)的定時(shí)任務(wù)數(shù)據(jù)于文件或數(shù)據(jù)庫(kù)中,本發(fā)明方法通過(guò)循環(huán)讀取出配置在文件或數(shù)據(jù)庫(kù)中每條任務(wù)記錄信息,然后對(duì)任務(wù)的應(yīng)用業(yè)務(wù)狀態(tài)進(jìn)行邏輯判斷,同時(shí)進(jìn)行數(shù)據(jù)格式校驗(yàn)過(guò)程,當(dāng)所讀取到的任務(wù)校驗(yàn)后滿足整個(gè)系統(tǒng)任務(wù)啟動(dòng)的必須條件時(shí),任務(wù)將開(kāi)始進(jìn)入執(zhí)行的階段。
[0017]通過(guò)從文件或數(shù)據(jù)庫(kù)中獲取到的SCADA系統(tǒng)應(yīng)用業(yè)務(wù)的定時(shí)任務(wù)信息,本發(fā)明方法可以判定出此時(shí)設(shè)備運(yùn)行的各種SCADA應(yīng)用的業(yè)務(wù)狀態(tài)與讀取到的任務(wù)應(yīng)用信息是否匹配,同時(shí)實(shí)現(xiàn)對(duì)時(shí)間數(shù)據(jù)”各種通配符以及純數(shù)字的格式處理實(shí)現(xiàn)類crontab的周期、定時(shí)的功能。其具體流程圖如圖2所示,在實(shí)施過(guò)程中,油氣管道SCADA系統(tǒng)應(yīng)用業(yè)務(wù)的定時(shí)任務(wù)通過(guò)外部方式配置到文件或數(shù)據(jù)庫(kù)中,而本發(fā)明方法通過(guò)文件接口操作或訪問(wèn)數(shù)據(jù)庫(kù)的過(guò)程獲取相關(guān)數(shù)據(jù),然后依次校驗(yàn)油氣管道SCADA系統(tǒng)中設(shè)備名、用戶名、SCADA系統(tǒng)應(yīng)用狀態(tài)的類型、應(yīng)用的主備、任務(wù)的執(zhí)行時(shí)間是否和當(dāng)前配置在文件或數(shù)據(jù)庫(kù)的定時(shí)任務(wù)是否一致,當(dāng)所有條件都匹配一致,最后啟動(dòng)相關(guān)特定應(yīng)用業(yè)務(wù)的定時(shí)任務(wù),否則,循環(huán)去讀取下一條數(shù)據(jù)。只有滿足這些條件的任務(wù),才能執(zhí)行周期或定時(shí)的啟動(dòng)。
[0018]比如,當(dāng)定時(shí)任務(wù)管理系統(tǒng)接收到指定位置的定時(shí)任務(wù)信息,首先提取定時(shí)任務(wù)信息中的設(shè)備名,然后進(jìn)行判斷,根據(jù)其是否符合指定設(shè)備名來(lái)確定是否進(jìn)行用戶名判斷,用戶名判斷方式如設(shè)備名判斷,在此不在重復(fù),當(dāng)進(jìn)行完用戶名判定后,即開(kāi)始進(jìn)行SCADA系統(tǒng)應(yīng)用狀態(tài)判斷,此時(shí),將檢測(cè)當(dāng)前設(shè)備SCADA系統(tǒng)的應(yīng)用狀態(tài),主備狀態(tài),然后獲取了所述設(shè)備SCADA系統(tǒng)的應(yīng)用狀態(tài)與主備狀態(tài)后在與上述通過(guò)用戶名、設(shè)備名判斷后的定時(shí)任務(wù)信息中的要求特定條件作判斷。
[0019]如符合上述條件則進(jìn)行時(shí)間數(shù)據(jù)判斷,此處,從定時(shí)任務(wù)信息中提取時(shí)間包括,先對(duì)純數(shù)字和“,”的數(shù)據(jù)進(jìn)行校驗(yàn),然后輸出這一部分?jǐn)?shù)據(jù),然后在對(duì)含有與“,”的數(shù)據(jù)進(jìn)行校驗(yàn),然后再輸出這一部分?jǐn)?shù)據(jù),其次對(duì)含有的數(shù)據(jù)校驗(yàn),在輸出這一部分?jǐn)?shù)據(jù),最后對(duì)含有“#”和“,”的數(shù)據(jù)校驗(yàn),然后輸出這部分?jǐn)?shù)據(jù),因此最后與當(dāng)前時(shí)間進(jìn)行匹配的數(shù)據(jù)為上述數(shù)據(jù)綜合。當(dāng)然,上述提取時(shí)間數(shù)據(jù)的步驟不分前后,符號(hào)可根據(jù)需要替換,并不用以限制本發(fā)明。
[0020]當(dāng)經(jīng)過(guò)上述時(shí)間數(shù)據(jù)判斷后,如通過(guò),則開(kāi)始執(zhí)行定時(shí)任務(wù)信息,以本申請(qǐng)?zhí)峁┑姆椒?,不但?shí)現(xiàn)了類crontab功能,而且還含有對(duì)特定條件的判定,因此讓油氣管道SCADA應(yīng)用人員開(kāi)發(fā)任務(wù)時(shí)不但不用考慮不同系統(tǒng)間crontab的差異、繁瑣等缺陷,而且實(shí)現(xiàn)根據(jù)油氣管道SCADA特定應(yīng)用業(yè)務(wù)、特定條件下的任務(wù)執(zhí)行。從而,讓油氣管道SCADA應(yīng)用人員開(kāi)發(fā)任務(wù)時(shí),注意力從對(duì)各應(yīng)用業(yè)務(wù)狀態(tài)或設(shè)備節(jié)點(diǎn)的關(guān)注中,轉(zhuǎn)移到對(duì)自身任務(wù)的定義、處理和規(guī)劃。
[0021]根據(jù)上述的描述,首先由外部提供讀寫定時(shí)任務(wù)的地方,比如用文件方式存儲(chǔ)定時(shí)任務(wù)或存儲(chǔ)定時(shí)任務(wù)在數(shù)據(jù)庫(kù)中。而本發(fā)明方法關(guān)注于如何讀取、操作、校驗(yàn)獲取來(lái)的定時(shí)任務(wù)的應(yīng)用數(shù)據(jù)信息,最后決定是否啟動(dòng)相關(guān)定時(shí)任務(wù)。本發(fā)明方數(shù)據(jù)流向及整