一種用于大電網(wǎng)在線網(wǎng)絡分析分布式計算的進程調度方法
【技術領域】
[0001]本發(fā)明涉及一種協(xié)同進程調度方法,具體涉及一種用于大電網(wǎng)在線網(wǎng)絡分析分布式計算的進程調度方法。
【背景技術】
[0002]特高壓交直流電網(wǎng)的快速建設,交流與直流系統(tǒng)耦合關系進一步加強;同時“大送端、大受端”格局初步形成,能源跨區(qū)消納使得區(qū)域電網(wǎng)聯(lián)系更加緊密,送受端電網(wǎng)相互影響進一步加大,電網(wǎng)特性由分區(qū)模式轉向跨區(qū)模式,且特高壓電網(wǎng)影響范圍呈現(xiàn)全局性。目前電網(wǎng)調度中心的在線分析采用各自獨立的計算模式,不具備對全網(wǎng)進行在線分析計算的能力,且缺少彼此之間的協(xié)調,不能保證電力系統(tǒng)在線網(wǎng)絡分析應用軟件計算結果的正確性,無法滿足實時調度對大型互聯(lián)電網(wǎng)跨區(qū)域、跨電壓等級協(xié)作精確計算的需求。隨著計算機技術和通信技術的高速發(fā)展,分布式計算技術可以更為有效地使用分布資源,減少處理問題的規(guī)模,從而大大提高超大規(guī)模電網(wǎng)在線分析計算的速度和精度,提高調度自動化系統(tǒng)對電網(wǎng)運行狀態(tài)的反應速率。同時,目前國網(wǎng)公司各級系統(tǒng)的一體化建模工作已經完成,已具備多級調度系統(tǒng)廣域分布式協(xié)同進行在線網(wǎng)絡分析計算的基礎。
[0003]目前在分布式狀態(tài)估計、分布式無功優(yōu)化等方面有了部分理論研究成果,但尚不具備應用條件,其研究成果的應用需要必要的進程調度支撐。適用于大電網(wǎng)在線網(wǎng)絡分析分布式計算的協(xié)同進程調度方法是實現(xiàn)大電網(wǎng)廣域分布式網(wǎng)絡分析計算的基礎,但尚未有相關針對性的研究,為此根據(jù)我國電網(wǎng)調度控制分層分區(qū)的特點,各級調度中心均建有私有計算機集群,并安裝智能電網(wǎng)調度控制系統(tǒng)的現(xiàn)狀,研究支撐大電網(wǎng)在線網(wǎng)絡分析分布式計算的進程調度方法,可為大電網(wǎng)在線網(wǎng)絡分析分布式計算的實現(xiàn)提供必要的技術支撐。
【發(fā)明內容】
[0004]針對上述情況,本發(fā)明提供一種用于大電網(wǎng)在線網(wǎng)絡分析分布式計算的進程調度方法,本方法參與分布式計算的各調度自動化系統(tǒng)處于對等地位,全網(wǎng)協(xié)調計算的發(fā)起和組織可以由任意一個調度中心內的計算服務器完成,不僅滿足上級調度的一體化計算需求,同時支持下級調度的一體化計算。
[0005]為了實現(xiàn)上述發(fā)明目的,本發(fā)明采取如下技術方案:
[0006]—種用于大電網(wǎng)在線網(wǎng)絡分析分布式計算的進程調度方法,所述方法包括如下步驟:
[0007](I)用戶側進程調度客戶端將計算請求發(fā)送給協(xié)調管理側的集群進程調度服務和廣域進程調度服務;
[0008](2)所述協(xié)調管理側的集群進程調度服務分配集群內某節(jié)點為進程調度服務端,并執(zhí)行進程調度服務;
[0009](3)啟動協(xié)調管理側集群內各節(jié)點的計算服務單元,各節(jié)點計算服務單元向進程調度服務單元服務端發(fā)起注冊;
[0010](4)當協(xié)調管理側所有計算服務單元完成注冊后,啟動進程服務狀態(tài)監(jiān)視線程,該線程與計算服務單元進程調度客戶端線程互發(fā)心跳;
[0011](5)所述協(xié)調管理側的廣域進程調度服務將計算請求發(fā)送給協(xié)同側的廣域進程調度服務,所述協(xié)同側的廣域進程調度服務將計算請求信息發(fā)送給所述協(xié)同側的集群進程調度服務;所述協(xié)同側后序步驟與所述協(xié)調管理側步驟相同。
[0012]優(yōu)選的,所述步驟(I)中,所述用戶側進程調度客戶端用于接收用戶多級調度一體化協(xié)同在線網(wǎng)絡分析分布式計算請求,并向進程集群進程調度服務單元和廣域進程調度服務單元發(fā)送服務請求消息頭數(shù)據(jù)包,工作流程如下:
[0013]步驟1-1、根據(jù)用戶多級調度一體化協(xié)同在線網(wǎng)絡分析分布式計算的計算設置,設置服務請求消息頭,調用用戶側進程調度客戶端API接口 ;
[0014]步驟1-2、接收輸入服務請求消息頭;
[0015]步驟1-3、解析服務請求消息頭數(shù)據(jù)信息;
[0016]步驟1-4、判斷計算模式,若為廣域分布式計算,則將服務請求消息頭發(fā)送給廣域進程調度服務,若為集群并行計算模式,則將服務請求消息頭發(fā)送給集群進程調度服務。
[0017]優(yōu)選的,所述步驟(2)中,所述進程調度服務包括如下步驟:
[0018]步驟2-1、讀取進程調度配置信息;
[0019]步驟2-2、判斷所在節(jié)點服務類型是集群進程調度服務還是廣域進程調度服務;
[0020]步驟2-3、等待進程調度服務客戶端注冊請求,線程阻塞,直到接收到注冊請求;
[0021]步驟2-4、接收進程調度客戶端注冊請求,建立連接,并對連接的讀、寫、異常等事件建立監(jiān)聽;
[0022]步驟2-5、判斷是否有接受的請求數(shù)據(jù)包,若有可接受數(shù)據(jù)包則進入步驟2-6,否則回到步驟2-3 ;
[0023]步驟2-6、接收并解析服務請求消息頭;
[0024]步驟2-7、判斷是否為用戶側請求,若為用戶側多級調度一體化協(xié)同在線網(wǎng)絡分析分布式計算請求,則進入步驟2-8 ;若不是用戶側請求,則轉步驟2-9 ;
[0025]步驟2-8、發(fā)送調度命令激活進程調度服務單元;激活成功后轉步驟2-3 ;
[0026]步驟2-9、將新建立的連接加入進程調度服務客戶端集合,同時啟動進程調度服務單元服務端監(jiān)視線程;成功后,轉步驟2-3。
[0027]優(yōu)選的,所述步驟2-9中,所述進程調度服務單元服務端監(jiān)視線程步驟如下:
[0028]步驟2-9-1、向集群/廣域進程調度服務發(fā)送服務請求;
[0029]步驟2-9-2、建立連接成功后,發(fā)送服務請求消息頭;
[0030]步驟2-9-3、阻塞直到接收到通信服務單元心跳信號;
[0031]步驟2-9-4、接收到服務端心跳信號后,表示注冊服務成功;
[0032]步驟2-9-5、開始收發(fā)心跳信號;
[0033]步驟2-9-6、判斷服務端是否異常,若異常則判斷是否為第一順位主機,若為第一順位主機,則啟動集群/廣域進程調度服務,轉到步驟2-1,若不是,則啟動進程調度服務單元服務端及進程調度服務單元心跳監(jiān)視線程。
[0034]優(yōu)選的,所述步驟(3)中,注冊所述進程調度服務單元服務端包括步驟如下:
[0035]步驟3-1、等待集群進程調度服務的工作指令;
[0036]步驟3-2、接收到激活指令后,開始接收集群進程調度服務發(fā)送的服務請求消息頭數(shù)據(jù)包;
[0037]步驟3-3、解析服務請求消息頭數(shù)據(jù)包;
[0038]步驟3-4、在集群內指定節(jié)點啟動計算服務單元進程;
[0039]步驟3-5、等待計算服務單元客戶端的注冊;
[0040]步驟3-6、接收注冊及請求消息頭數(shù)據(jù)包;
[0041]步驟3-7、加入計算服務監(jiān)視單元監(jiān)視集合;
[0042]步驟3-8、判斷所有計算服務單元是否已經完成注冊,已完成則啟動計算服務監(jiān)視線程,沒有則進入步驟3-5。
[0043]優(yōu)選的,所述步驟(4)中,所述進程服務狀態(tài)監(jiān)視線程包括如下步驟:
[0044]步驟4-1-1、接收計算服務單元進程調度客戶端的進程狀態(tài)信息數(shù)據(jù)包;
[0045]步驟4-1-2、分析數(shù)據(jù)包,判斷計算服務單元是否已完成計算,已完成則則進入步驟4_1_3,未完成則進入步驟4_1_5 ;
[0046]步驟4-1-3、將其鍵入已結束計算服務單元集合;
[0047]步驟4-1-4、判斷計算服務是否結束,結束則結束線程,未結束則進入步驟4-1-1 ;
[0048]步驟4-1-5、判斷進程是否異常,若進程無異常則進入步驟4-1-1,異常則進入步驟 4-1-6 ;
[0049]步驟4-1-6、向各計算服務單元發(fā)送計算法服務異常信號;
[0050]步驟4-1-7、進入步驟4-1-1。
[0051]優(yōu)選的,所述步驟(4)中,所述計算服務單元進程調度客戶端與進程服務狀態(tài)監(jiān)視線程互發(fā)心跳的包括如下步驟:
[0052]步驟4-2-1、計算/通信服務單元啟動計算/通信服務單元進程調度客戶端;
[0053]步驟4-2-2、發(fā)送進程調度服務注冊請求;
[0054]步驟4-2-3、與進程調度服務單元服務端建立連接;
[0055]步驟4-2-4、發(fā)送服務請求消息頭數(shù)據(jù)包;
[0056]步驟4_2_5、獲取計算/通彳目服務單兀進程彳目息;
[0057]步驟4-2-6、將計算/通信服務單元進程信息打包發(fā)送;
[0058]步驟4-2-7、接收來自進程調度服務單元服務端計算服務狀態(tài)監(jiān)視線程的進程信息數(shù)據(jù)包;
[0059]步驟4-2-8、解析綜合判斷計算是否完成;
[0060]步驟4-2-9、未完成,則進入步驟4-2-5,完成則結束客戶端線程。
[0061]與現(xiàn)有技術相比,本發(fā)明的有益效果在于:
[0062]本發(fā)明該方法參與分布式計算的各調度自動化系統(tǒng)處于對等地位,全網(wǎng)協(xié)調計算的發(fā)起和組織可以由任意一個調度中心內的計算服務器完成,不僅滿足上級調度的一體化計算需求,同時支持下級