實施例,都屬于本申請保護的范圍。
[0035]參見圖2,圖2為本申請實施例公開的一種前置采集服務(wù)系統(tǒng)與終端配合的示意圖。
[0036]如圖2所示,本申請的前置采集服務(wù)系統(tǒng)包括:
[0037]前置監(jiān)控服務(wù)器20、多個前置通訊服務(wù)器21和負載均衡器22 ;
[0038]其中,所述負載均衡器22用于接收終端發(fā)送的包括終端ID的登錄報文,并將所述登錄報文分配給多個前置通訊服務(wù)器21中負載滿足預設(shè)條件的一個目標前置通訊服務(wù)器21 ;
[0039]具體地,負載均衡器22可以選用市面上比較通用的負載均衡器即可。在其收到終端的登錄報文之后,可以選擇多個前置通訊服務(wù)器中負載滿足預設(shè)條件的一個作為目標前置通訊服務(wù)器,然后向其轉(zhuǎn)發(fā)該登錄報文。一般性的,我們設(shè)置預設(shè)條件為負載最小的一個前置通訊服務(wù)器為目標前置通訊服務(wù)器。
[0040]需要解釋的是,為了便于表述我們定義了目標前置通訊服務(wù)器,其實質(zhì)為接收登錄報文的一個前置通訊服務(wù)器。
[0041]進一步,這里發(fā)送登錄報文的終端可以是各類采集集中器、負荷控制終端、能效監(jiān)測終端等設(shè)備。預先為所有的經(jīng)過注冊的終端都定義了終端ID,一個終端ID對應一個終端。
[0042]所述目標前置通訊服務(wù)器21用于在接收到所述登錄報文后,向所述前置監(jiān)控服務(wù)器20發(fā)送檔案請求,所述檔案請求包括所述終端ID,并在接收到所述前置監(jiān)控服務(wù)器20反饋的檔案信息后進行存儲,更新該終端的狀態(tài)信息為在線,同時向該終端發(fā)送確認報文;
[0043]具體地,目標前置通訊服務(wù)器21在接收到登錄報文后,會根據(jù)登錄報文中的終端ID向前置監(jiān)控服務(wù)器20請求該終端的檔案信息,并在接收到其反饋的檔案信息后,將當前終端ID與對應的檔案信息在本機內(nèi)存中進行存儲。與此同時,目標前置通訊服務(wù)器21還需要更新自身記錄的該終端的狀態(tài)信息,將該終端的狀態(tài)信息更改為在線狀態(tài),然后向該終端發(fā)送確認報文。終端的檔案信息包括終端的地址、行政區(qū)域碼、通信規(guī)約類型、通信模式、心跳周期等通信所必需的參數(shù)。
[0044]這里,終端可以通過負載均衡器動態(tài)的連接到目標前置通訊服務(wù)器上,進行數(shù)據(jù)的傳輸。終端收到確認報文之后,開始向目標前置監(jiān)控服務(wù)器發(fā)送“心跳”報文或數(shù)據(jù)。
[0045]所述前置監(jiān)控服務(wù)器20用于在接收到所述目標前置通訊服務(wù)器21發(fā)送的檔案請求后,在預置的終端ID與檔案信息對應關(guān)系中查找與所述檔案請求中包含的終端ID對應的檔案信息,并在查找到檔案信息后將其反饋給所述目標前置通訊服務(wù)器21,同時更新該終端的狀態(tài)信息為在線、記錄所述終端ID與所述目標前置通訊服務(wù)器ID的對應關(guān)系。
[0046]具體地,預置的終端ID與檔案信息對應關(guān)系可以是由前置監(jiān)控服務(wù)器20啟動之后從上層平臺或關(guān)系數(shù)據(jù)庫中獲取,并加載到前置監(jiān)控服務(wù)器20本地內(nèi)存中,或者是通過其它方式獲取的,對此本申請不進行限定。
[0047]前置監(jiān)控服務(wù)器20在收到檔案請求之后,會查找與終端ID對應的檔案信息,如果查找到,則向目標前置通訊服務(wù)器反饋,并更新自身存儲的該終端的狀態(tài)信息為在線狀態(tài),記錄該終端ID與目標前置通訊服務(wù)器ID的對應關(guān)系。
[0048]這里需要說明的是,對于每個前置通訊服務(wù)器21均預先定義了對應的ID編號。
[0049]本申請實施例提供的前置采集服務(wù)系統(tǒng)達到了以下效果:
[0050]第一,提高了前置通訊服務(wù)器群的負載均衡能力。
[0051]第二,提高了前置通訊服務(wù)器的可擴充性,不需要將前置通訊服務(wù)器與終端進行綁定,增強了終端接入的靈活性。
[0052]第三,增強了前置采集服務(wù)系統(tǒng)的可靠性,當一臺前置通訊服務(wù)器故障時,與之連接的終端可以被負載均衡器分配到其它前置通訊服務(wù)器上,不會影響正常的工作。
[0053]第四,可以按照最大同時在線終端數(shù)量類配置前置通訊服務(wù)器個數(shù),無需為每個前置通訊服務(wù)器設(shè)置備份服務(wù)器,有效減少了服務(wù)器硬件成本,降低了電能損耗。
[0054]接下來,我們進一步介紹本申請前置采集服務(wù)系統(tǒng)中各個模塊的功能。
[0055]可選的,上述前置通訊服務(wù)器21還可以用于監(jiān)測終端的接入和斷開事件。終端接入過程已經(jīng)在上面進行了介紹。這里簡單介紹一下斷開過程。若一個目標前置通訊服務(wù)器21監(jiān)測到與之連接的一個終端斷開了連接,也即“心跳”報文發(fā)送不正常時,可以更新目標前置通訊服務(wù)器21本地內(nèi)存存儲的該終端的狀態(tài)信息為離線狀態(tài)。同時,將該終端的離線狀態(tài)信息同步到前置監(jiān)控服務(wù)器20,以供前置監(jiān)控服務(wù)器20更新自身內(nèi)存中存儲的該終端的狀態(tài)信息為離線狀態(tài)。
[0056]具體實現(xiàn)數(shù)據(jù)同步的過程,可以采用TCP網(wǎng)絡(luò)通信,利用modbusTCP規(guī)約,實現(xiàn)秒級同步。
[0057]進一步地,前置通訊服務(wù)器21還可以接收前置監(jiān)控服務(wù)器20下發(fā)的指令,并按照指令中攜帶的終端ID編號,將該指令轉(zhuǎn)發(fā)給對應ID的終端。
[0058]前置通訊服務(wù)器21還可以將終端采集的數(shù)據(jù)存儲在后臺數(shù)據(jù)庫中。
[0059]可選的,上面我們介紹了前置監(jiān)控服務(wù)器20在接收到前置通訊服務(wù)器21上傳的檔案請求后,查找到對應檔案信息之后的工作過程。當然,還存在一種情況:前置監(jiān)控服務(wù)器20未查找到與終端ID對應的檔案信息,也即該終端是一個非法的終端。此時,前置監(jiān)控服務(wù)器20可以向目標前置通訊服務(wù)器21反饋“非法”報文,以供所述目標前置通訊服務(wù)器21拒絕接收該終端。
[0060]進一步,上述前置監(jiān)控服務(wù)器20還可以接收上層任務(wù)管理進程下發(fā)的包括終端ID的指令,然后查找該ID對應的終端的狀態(tài)信息是否為在線,若是,則進一步查找終端ID與前置通訊服務(wù)器ID的對應關(guān)系,確定與指令中包含的終端ID對應的前置通訊服務(wù)器ID,并向該ID編號的前置通訊服務(wù)器轉(zhuǎn)發(fā)該指令。相反,如果查找到指令中包含的ID編號的終端不在線,則可以直接向上層任務(wù)管理進程反饋該終端不在線的信息。
[0061]進一步,我們介紹前置監(jiān)控服務(wù)器20存儲的終端檔案信息的更新過程。
[0062]我們設(shè)定終端的檔案信息由上層管理系統(tǒng)維護,該檔案信息存儲在關(guān)系數(shù)據(jù)庫之中,在關(guān)系數(shù)據(jù)庫中設(shè)定一個終端檔案修改記錄表,記錄所有的終端管理的更改操作記錄(如新增終端、刪除終端等操作記錄)。
[0063]則在前置監(jiān)控服務(wù)器20初始化時,從上層平臺的關(guān)系數(shù)據(jù)庫中加載所有終端的檔案信息,存儲在本地內(nèi)存中。在運行過程中,由內(nèi)存實時數(shù)據(jù)管理系統(tǒng)通過周期掃描關(guān)系數(shù)據(jù)庫中的終端檔案修改記錄表,在發(fā)現(xiàn)有更改操作記錄時,根據(jù)關(guān)系數(shù)據(jù)庫終端檔案的修改同步更新前置監(jiān)控服務(wù)器20中的對應檔案信息。
[0064]可以理解的是,本申請中可以設(shè)置前置監(jiān)控服務(wù)器的個數(shù)為I個或2個。2個前置監(jiān)控服務(wù)器可以互為備份,提供可靠性。
[0065]下面對本申請實施例提供的數(shù)據(jù)處理方法進行描述,下文描述的數(shù)據(jù)處理方法與上文描述的前置采集服務(wù)系統(tǒng)可相互對應參照。
[0066]本申請實施例公開的數(shù)據(jù)處理方法應用于上述前置采集服務(wù)系統(tǒng)之中,該方法包括:
[0067]1、目標前置通訊服務(wù)器接收負載均衡器發(fā)送的包括終端ID的登錄報文,所述目標前置通訊服務(wù)器為負載均衡器從多個前置通訊服務(wù)器中選擇的負載滿足預設(shè)條件的一個前置通訊服務(wù)器;
[0068]2、目標前置通訊服務(wù)器向前置監(jiān)控服務(wù)器發(fā)送檔案請求,所述檔案請求包括所述終端ID ;
[0069]3、目標前置通訊服務(wù)器接收前置監(jiān)控服務(wù)器反饋的檔案信息,并將所述終端ID與所述