亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種充換電站監(jiān)控的應(yīng)用服務(wù)系統(tǒng)及進(jìn)程間通訊方法

文檔序號(hào):7892447閱讀:136來源:國(guó)知局
專利名稱:一種充換電站監(jiān)控的應(yīng)用服務(wù)系統(tǒng)及進(jìn)程間通訊方法
技術(shù)領(lǐng)域
本發(fā)明屬于分布式實(shí)時(shí)系統(tǒng)進(jìn)程間通訊技術(shù)領(lǐng)域,涉及一種充換電站監(jiān)控的應(yīng)用服務(wù)系統(tǒng)及進(jìn)程間通訊方法。
背景技術(shù)
本發(fā)明屬于分布式實(shí)時(shí)系統(tǒng)進(jìn)程間通訊技術(shù)領(lǐng)域,涉及一種充換電站監(jiān)控的應(yīng)用服務(wù)系統(tǒng)及進(jìn)程間通訊方法。
背景技術(shù)
為推動(dòng)電動(dòng)汽車產(chǎn)業(yè)的發(fā)展,需要通過現(xiàn)代化的技術(shù)手段和管理方法對(duì)充換電設(shè)施統(tǒng)一監(jiān)控,實(shí)現(xiàn)充換電設(shè)施管理和控制的自動(dòng)化,構(gòu)建完善、安全、高效的充換電監(jiān)控系統(tǒng)。電動(dòng)汽車充電設(shè)施監(jiān)控包括配電設(shè)備、充電機(jī)、電池箱、充電架、電池更換設(shè)備、電池、安全防護(hù)等多個(gè)方面,系統(tǒng)必須對(duì)各個(gè)子系統(tǒng)實(shí)現(xiàn)無縫集成,在統(tǒng)一的平臺(tái)上完成對(duì)各類設(shè)備的監(jiān)控管理功能,給用戶提供一個(gè)業(yè)務(wù)智能化、操作方式統(tǒng)一、人機(jī)界面友善的監(jiān)控管理系統(tǒng)。電動(dòng)汽車充換電監(jiān)控系統(tǒng)包括的子系統(tǒng)有配電監(jiān)控、充電監(jiān)控、安全防護(hù)監(jiān)控、計(jì)量計(jì)費(fèi)系統(tǒng)等,完成對(duì)充換電設(shè)備、配電設(shè)備及其他設(shè)備的集中監(jiān)視、控制管理和計(jì)量計(jì)費(fèi)管理。因此,在充換電站監(jiān)控系統(tǒng)的設(shè)計(jì)有三個(gè)較困難的問題
第一,隨著監(jiān)控系統(tǒng)應(yīng)用的不斷深入及用戶需求的增加,系統(tǒng)的架構(gòu)必須是可以靈活增加新功能,即要求系統(tǒng)必須具備方便的功能可擴(kuò)充性,最好能達(dá)到“即插即用”;
第二,監(jiān)控系統(tǒng)的功能模塊分散布署于不同的機(jī)器上,但分散于不同機(jī)器上的進(jìn)程之間或者異構(gòu)環(huán)境的進(jìn)程之間的通訊問題是個(gè)難題;
第三,充換電站監(jiān)控是復(fù)雜的實(shí)時(shí)監(jiān)控系統(tǒng),為了提高系統(tǒng)運(yùn)行的可靠性和通訊容量,常常采用雙機(jī)、雙網(wǎng)冗余的網(wǎng)絡(luò)布署方式。為解決進(jìn)程間通訊IPC (Interprocess communication),現(xiàn)在很多中間件技術(shù),但是適用的情景也不一樣
(1)Microsoft的分布式COM(DCOM)擴(kuò)展了組件對(duì)象模型技術(shù)(COM),使其能夠支持在局域網(wǎng)、廣域網(wǎng)甚至Internet上不同計(jì)算機(jī)的對(duì)象之間的通訊,但這種技術(shù)只能在windows環(huán)境下應(yīng)用,不適合于異構(gòu)系統(tǒng)進(jìn)程間通訊;
(2)CORBA體系結(jié)構(gòu)是對(duì)象管理組織(OMG)為解決分布式處理環(huán)境(DCE)中,軟件系統(tǒng)的互連而提出的一種解決方案,是用于面向?qū)ο缶幊讨袕?fù)雜的IPC的一個(gè)強(qiáng)大的解決方案,這種重量級(jí)的分布式系統(tǒng)進(jìn)程通訊中間件,使用與開發(fā)都較為復(fù)雜;
(3)WebService技術(shù)采用SOAP和XML-RPC,使用HTTP作為其傳輸協(xié)議,因此主要用于Web中的B/S系統(tǒng),不適用于桌面環(huán)境的應(yīng)用系統(tǒng)的進(jìn)程間通訊。(4)DC0P是一個(gè)較輕量級(jí)的IPC框架,功能較少,主要用于在Linux系統(tǒng)下KDE桌面環(huán)境中,DCOP是一個(gè)用于KDE的解決方案,但是它依賴于Qt,所以不能用于其他桌面環(huán)境之中;
(5)直接面向Socket編程,進(jìn)程間的通訊主要采用基于規(guī)則協(xié)議的通訊報(bào)文的解析,但是這種進(jìn)程間通訊方法可擴(kuò)展性和通用性較差。

發(fā)明內(nèi)容
本發(fā)明的目的是提供一種充換電站監(jiān)控的應(yīng)用服務(wù)系統(tǒng)進(jìn)程間通訊方法,以解決充換電站監(jiān)控系統(tǒng)進(jìn)程間通訊問題。本發(fā)明的另一目的是提供一種充換電站監(jiān)控的應(yīng)用服務(wù)系統(tǒng),以實(shí)現(xiàn)應(yīng)用服務(wù)對(duì)象在服務(wù)總線上即插即用。為實(shí)現(xiàn)上述目的,本發(fā)明的一種充換電站監(jiān)控的應(yīng)用服務(wù)系統(tǒng)包括 服務(wù)請(qǐng)求端,用于向應(yīng)用服務(wù)總線提出服務(wù)請(qǐng)求,包括應(yīng)用服務(wù)組件、服務(wù)提供者代理組件和應(yīng)用服務(wù)總線接口適配器;
服務(wù)提供端,用于提供與應(yīng)用服務(wù)總線發(fā)送的服務(wù)請(qǐng)求相對(duì)應(yīng)的服務(wù),包括應(yīng)用服務(wù)總線接口適配器;
應(yīng)用服務(wù)總線,用于管理應(yīng)用服務(wù)的服務(wù)、消息的交互和處理,監(jiān)視分布于系統(tǒng)所在的局域網(wǎng)絡(luò)上的各個(gè)主機(jī)中的應(yīng)用服務(wù)的運(yùn)行狀態(tài)并進(jìn)行相應(yīng)的控制,包括總線規(guī)范接口、應(yīng)用服務(wù)總線實(shí)例、消息中心;
所述服務(wù)請(qǐng)求端與服務(wù)提供端都是由應(yīng)用服務(wù)組件組成,所述服務(wù)請(qǐng)求端和服務(wù)提供端分別通過應(yīng)用服務(wù)總線適配器、總線規(guī)范接口與應(yīng)用服務(wù)總線通訊連接。進(jìn)一步的,所述服務(wù)請(qǐng)求端、服務(wù)提供端和應(yīng)用服務(wù)總線可任意配置在系統(tǒng)所在的局域網(wǎng)絡(luò)的各主機(jī)中。進(jìn)一步的,服務(wù)組件請(qǐng)求另一個(gè)服務(wù)組件的服務(wù)是通過服務(wù)提供者代理組件來訪問,總線上的服務(wù)提供者組件位于服務(wù)請(qǐng)求者組件的進(jìn)程以外,服務(wù)請(qǐng)求者組件可以調(diào)用的本地接口與服務(wù)提供者組件通信,此時(shí),本地接口充當(dāng)了代理的角色,應(yīng)用服務(wù)提供者代理組件負(fù)責(zé)將服務(wù)請(qǐng)求者組件的請(qǐng)求轉(zhuǎn)發(fā)給應(yīng)用服務(wù)總線,再由服務(wù)總線轉(zhuǎn)發(fā)給相應(yīng)的服務(wù)提供者組件。進(jìn)一步的,所述應(yīng)用服務(wù)系統(tǒng)的總線接口規(guī)范,其包括以下兩大部分
(1)應(yīng)用服務(wù)注冊(cè)/注銷接口用于提供給應(yīng)用服務(wù)組件進(jìn)行模塊注冊(cè)和服務(wù)登記,應(yīng)用服務(wù)退出后注銷模塊信息;
(2)應(yīng)用服務(wù)總線上的應(yīng)用服務(wù)組件接口應(yīng)用服務(wù)組件提供給應(yīng)用服務(wù)總線調(diào)用的接口,包括兩個(gè)接口 1)方法調(diào)用的實(shí)現(xiàn)用于實(shí)現(xiàn)在應(yīng)用服務(wù)總線上登記的服務(wù);2)消息接收用于接收訂閱的消息事件的接收。本發(fā)明的充換電站監(jiān)控的應(yīng)用服務(wù)系統(tǒng)進(jìn)程間通訊方法的一對(duì)一的請(qǐng)求一響應(yīng)步驟如下
(1)服務(wù)請(qǐng)求端和服務(wù)提供端分別通過應(yīng)用服務(wù)總線的總線規(guī)范接口,提交注冊(cè)信息給消息中心,由消息中心向應(yīng)用服務(wù)總線進(jìn)程轉(zhuǎn)發(fā),完成在總線上的注冊(cè);
(2)服務(wù)請(qǐng)求端通過服務(wù)提供者代理向消息中心提交服務(wù)請(qǐng)求,消息中心將服務(wù)請(qǐng)求轉(zhuǎn)發(fā)至應(yīng)用服務(wù)總線進(jìn)程;
(3)應(yīng)用服務(wù)總線進(jìn)程接收到服務(wù)請(qǐng)求端的消息,對(duì)消息進(jìn)行分析,并在信息中心查找相關(guān)的信息,找到后,激活對(duì)應(yīng)的服務(wù)提供端的數(shù)據(jù)適配器為消息服務(wù);
(4)服務(wù)提供端執(zhí)行相應(yīng)的服務(wù),返回?cái)?shù)據(jù)由消息中心和服務(wù)提供者代理返回給服務(wù)請(qǐng)求端。進(jìn)一步的,方法還包括一對(duì)多的廣播-訂閱方式,是應(yīng)用服務(wù)總線接收到一服務(wù)組件的事件信號(hào)時(shí),向應(yīng)用服務(wù)總線上其余的應(yīng)用服務(wù)組件進(jìn)行信號(hào)廣播,訂閱本信號(hào)的服務(wù)組件對(duì)事件信號(hào)進(jìn)行相應(yīng)處理。進(jìn)一步的,所述步驟(I)中注冊(cè)內(nèi)容包括應(yīng)用服務(wù)組件的名稱、屬性、組件提供的服務(wù)和組件訂閱的服務(wù)。
進(jìn)一步的,所述步驟(3)中應(yīng)用服務(wù)總線收到組件服務(wù)請(qǐng)求后,將所請(qǐng)求的組件服務(wù)與先前存入的各種服務(wù)信息進(jìn)行匹配,找到所需的服務(wù)及其服務(wù)所屬的服務(wù)組件并將該組件請(qǐng)求信息送至服務(wù)提供端中的服務(wù)組件。進(jìn)一步的,所述步驟(3)中消息中心查找相關(guān)的信息包括消息的路由信息、使用哪個(gè)數(shù)據(jù)適配器的哪個(gè)方法進(jìn)行數(shù)據(jù)轉(zhuǎn)換、轉(zhuǎn)換后數(shù)據(jù)發(fā)往哪個(gè)服務(wù)提供端。進(jìn)一步的,所述應(yīng)用服務(wù)退出運(yùn)行時(shí),在應(yīng)用服務(wù)總線上注銷本應(yīng)用服務(wù)所有消
肩、O與現(xiàn)有技術(shù)相比,本發(fā)明具有如下有益效果
第一、本發(fā)明好系統(tǒng)屬于分布式應(yīng)用服務(wù)總線,在單總線的基礎(chǔ)上進(jìn)行了擴(kuò)充,可以采用雙應(yīng)用服務(wù)總線的冗余布署,突破了單總線負(fù)載的性能瓶頸,克服了單點(diǎn)故障,提高了系統(tǒng)的可用性。第二、集成方便任何一個(gè)符合本應(yīng)用服務(wù)總線規(guī)范接口標(biāo)準(zhǔn)的應(yīng)用程序都可以通過適配器方式獲得應(yīng)用服務(wù)總線的支持,達(dá)到應(yīng)用服務(wù)在應(yīng)用服務(wù)總線上的即插即用。第三、交互方便能夠方便地實(shí)現(xiàn)各應(yīng)用子系統(tǒng)之間的交互,克服了現(xiàn)有總線功能各異、環(huán)境各不相同的缺點(diǎn),解決了總線與總線、總線與服務(wù)、服務(wù)與服務(wù)、客戶與服務(wù)之間的信息交互,不僅實(shí)現(xiàn)了服務(wù)器數(shù)據(jù)的可訪問性,而且實(shí)現(xiàn)了各種應(yīng)用子系統(tǒng)數(shù)據(jù)的可訪問性。第四、具有互操作性本發(fā)明解耦了服務(wù)請(qǐng)求端和服務(wù)提供端,采用了“總線”這樣一種模式來管理和簡(jiǎn)化各應(yīng)用子系統(tǒng)之間的進(jìn)程通訊。各應(yīng)用服務(wù)組件的耦合度的降低,在接口不變的情況下各組件可獨(dú)立開發(fā)或修改,有利于并行開發(fā)。第五、效率高由于不用考慮組件集成的問題,可使得開發(fā)人員專注于業(yè)務(wù)邏輯的實(shí)現(xiàn),提高開發(fā)效率。第六、可維護(hù)性好采用該體系結(jié)構(gòu)的系統(tǒng),結(jié)構(gòu)清晰,有利于系統(tǒng)維護(hù)和修改升級(jí)。第七、可擴(kuò)展性和可重用性強(qiáng)采用這種比單總線更加靈活的總線架構(gòu),不僅能確保當(dāng)前的業(yè)務(wù)的靈活性,而且還可以滿足未來更加多種多樣的業(yè)務(wù)需求,能適應(yīng)更加粗粒度的服務(wù)集成。第八、屏蔽性能好引入本應(yīng)用總線系統(tǒng)后,應(yīng)用系統(tǒng)之間形成更加松散耦合的關(guān)系,相對(duì)位置更加透明,服務(wù)協(xié)議更加獨(dú)立。第九、支持異構(gòu)系統(tǒng)的進(jìn)程間通訊使用應(yīng)用服務(wù)總線可屏蔽服務(wù)請(qǐng)求端和服務(wù)提供端的異構(gòu)環(huán)境,包括運(yùn)行環(huán)境、操作系統(tǒng)環(huán)境、運(yùn)行平臺(tái)等,同時(shí)應(yīng)用子系統(tǒng)的架構(gòu)、實(shí)現(xiàn)方式可以不同,通過應(yīng)用服務(wù)的整合,可使不同子系統(tǒng)可以通過應(yīng)用服務(wù)進(jìn)行互操作。


圖I是本發(fā)明的總體架構(gòu) 圖2是本發(fā)明應(yīng)用服務(wù)組件交互序列 圖3是應(yīng)用服務(wù)請(qǐng)求過程圖。
具體實(shí)施例方式如圖I所示,應(yīng)用服務(wù)總線總體架構(gòu)體系主要分服務(wù)請(qǐng)求端、應(yīng)用服務(wù)總線和服務(wù)提供端三個(gè)部分。系統(tǒng)中的各個(gè)應(yīng)用服務(wù)組件通過相應(yīng)的應(yīng)用服務(wù)總線接口適配器與應(yīng)用服務(wù)總線上的總線規(guī)范接口相連實(shí)現(xiàn)和應(yīng)用服務(wù)總線的通訊連接,并由應(yīng)用服務(wù)總線統(tǒng)一管理。各個(gè)應(yīng)用服務(wù)組件可以隨意配置在各個(gè)節(jié)點(diǎn)機(jī)中,即插即用在應(yīng)用服務(wù)總線上,以便于系統(tǒng)的擴(kuò)充和升級(jí),為了提高系統(tǒng)的穩(wěn)定性和可靠性,可以在多個(gè)節(jié)點(diǎn)機(jī)上為重要的功能模塊配備冗余模塊,例如對(duì)應(yīng)用服務(wù)總線配備冗余,即存在備應(yīng)用服務(wù)總線。應(yīng)用服務(wù)總線是系統(tǒng)中每一個(gè)應(yīng)用服務(wù)啟動(dòng)運(yùn)行時(shí)必須最先加載的模塊,每個(gè)應(yīng)用加載應(yīng)用服務(wù)總線并注冊(cè)后,可以通過應(yīng)用服務(wù)總線與其他應(yīng)用服務(wù)相互通信,從而在全系統(tǒng)范圍內(nèi)建立起一個(gè)分布式軟件應(yīng)用環(huán)境,此過程稱為應(yīng)用服務(wù)的注冊(cè)。應(yīng)用服務(wù)通過向服務(wù)總線注冊(cè)后,即可向應(yīng)用服務(wù)總線請(qǐng)求其他應(yīng)用服務(wù)組件所提供的服務(wù),注冊(cè)內(nèi)容包括組件名和組件的特定屬性以及組件提供的服務(wù)和組件訂閱的服務(wù)。在應(yīng)用服務(wù)組件運(yùn)行過程中,應(yīng)用服務(wù)總線監(jiān)視各應(yīng)用服務(wù)組件的運(yùn)行狀態(tài),每一個(gè)應(yīng)用服務(wù)退出運(yùn)行時(shí),在應(yīng)用服務(wù)總線上注銷本應(yīng)用服務(wù)組件的所有信息。通過節(jié)點(diǎn)的注冊(cè)與注銷,由應(yīng)用服務(wù)總線構(gòu)成的系統(tǒng)分布式應(yīng)用環(huán)境可以隨時(shí)了解系統(tǒng)的構(gòu)成及變化。應(yīng)用服務(wù)總線提供應(yīng)用服務(wù)組件注冊(cè)/注銷的接口 ;提供應(yīng)用服務(wù)的服務(wù)/消息交互接口及相對(duì)于組件透明的服務(wù)處理機(jī)制;監(jiān)視分布在各個(gè)主機(jī)上的應(yīng)用服務(wù)的運(yùn)行狀態(tài),根據(jù)一定的控制策略在必要時(shí)做出相應(yīng)的控制。應(yīng)用服務(wù)總線能夠規(guī)范系統(tǒng)應(yīng)用服務(wù)組件間的通信接口方式,使符合規(guī)范的應(yīng)用服務(wù)組件能隨時(shí)修改和增加,只要不依賴特定的硬件資源,系統(tǒng)應(yīng)用服務(wù)組件可以在系統(tǒng)中任意機(jī)器上做到/即插即用,以便靈活配置系統(tǒng);使系統(tǒng)各應(yīng)用服務(wù)組件之間的耦合盡可能松,提高系統(tǒng)的堅(jiān)固性,同時(shí)兼顧系統(tǒng)效率;提供進(jìn)程間(包括網(wǎng)絡(luò)各節(jié)點(diǎn)進(jìn)程間)的服務(wù)請(qǐng)求應(yīng)答機(jī)制以及數(shù)據(jù)傳輸和關(guān)于系統(tǒng)、節(jié)點(diǎn)、組件運(yùn)行狀態(tài)監(jiān)視維護(hù)的公共服務(wù),從而簡(jiǎn)化系統(tǒng)應(yīng)用服務(wù)組件的設(shè)計(jì)。服務(wù)請(qǐng)求端與服務(wù)提供端都是應(yīng)用服務(wù),具體表現(xiàn)為應(yīng)用服務(wù)組件,是系統(tǒng)業(yè)務(wù)功能的劃分,每一個(gè)應(yīng)用服務(wù)組件或者提供多個(gè)服務(wù),或者訂閱或者即時(shí)請(qǐng)求其他應(yīng)用服務(wù)組件提供的服務(wù),每個(gè)服務(wù)都以特定的交互方式提供特定的功能。系統(tǒng)應(yīng)用服務(wù)組件完成本模塊的業(yè)務(wù)功能;在組件啟動(dòng)時(shí)向應(yīng)用服務(wù)總線注冊(cè)本組件信息,包括本組件提供的服務(wù),訂閱的服務(wù)等信息;遵循應(yīng)用服務(wù)總線制定的接口規(guī)范提供在運(yùn)行時(shí)與應(yīng)用服務(wù)總線交互的接口,以向應(yīng)用服務(wù)總線發(fā)送和接收統(tǒng)一消息;在組件退出時(shí)向應(yīng)用服務(wù)總線注銷本組件信息,包括本組件提供的服務(wù)、訂閱的服務(wù)等信息。從圖I可以看到,各系統(tǒng)應(yīng)用服務(wù)組件通過符合總線接口規(guī)范的適配器與應(yīng)用服務(wù)總線交互。應(yīng)用服務(wù)組件間通過總線以消息傳送方式相互提供服務(wù),如人機(jī)界面組件提供表示服務(wù),前置通信組件提供與遠(yuǎn)方終端單元的通信服務(wù),它們?cè)趹?yīng)用服務(wù)總線上的地位是平等的,均可看作客戶或服務(wù)。通過適配器和應(yīng)用服務(wù)總線解決了互不相識(shí)的系統(tǒng)應(yīng)用服務(wù)組件之間的互操作問題和數(shù)據(jù)交換問題。在應(yīng)用服務(wù)總線上傳輸?shù)氖墙y(tǒng)一消息對(duì)象----數(shù)據(jù)和其結(jié)構(gòu)被封裝在一起,因而在得到此消息對(duì)象后,可動(dòng)態(tài)分析其內(nèi)容以決定對(duì)它進(jìn)行的操作。不難看出,系統(tǒng)中各應(yīng)用服務(wù)組件可位于不同的主機(jī)上,它們通過各自的適配器向應(yīng)用總線發(fā)出請(qǐng)求,應(yīng)用服務(wù)總線對(duì)其進(jìn)行解釋并確定接受方的位置,向網(wǎng)絡(luò)層發(fā)送消息,完成通信并實(shí)現(xiàn)互操作。只需對(duì)適配器進(jìn)行適當(dāng)?shù)男薷?,就能最大限度地使用已有的軟件?shí)現(xiàn)系統(tǒng)集成。本發(fā)明的交互流程如圖2所示,服務(wù)請(qǐng)求過程如圖3所示
(1)服務(wù)請(qǐng)求端和服務(wù)提供端分別通過應(yīng)用總線規(guī)范接口,提交注冊(cè)信息給消息中心,由消息中心向應(yīng)用總線服務(wù)進(jìn)程轉(zhuǎn)發(fā),從而完成在應(yīng)用服務(wù)總線上的注冊(cè);
(2)服務(wù)請(qǐng)求端通過服務(wù)代理向消息中心提交請(qǐng)求服務(wù),消息中心將服務(wù)請(qǐng)求轉(zhuǎn)發(fā)至 總線進(jìn)程,總線接收到服務(wù)請(qǐng)求端的消息,對(duì)消息進(jìn)行分析,并在信息中心查找相關(guān)的信息,如消息的路由信息、使用哪個(gè)數(shù)據(jù)適配器的哪個(gè)方法進(jìn)行數(shù)據(jù)轉(zhuǎn)換、轉(zhuǎn)換后數(shù)據(jù)發(fā)往哪個(gè)服務(wù)提供端;
(3)應(yīng)用服務(wù)總線根據(jù)消息的信息,激活對(duì)應(yīng)的數(shù)據(jù)適配器為消息服務(wù);
(4)應(yīng)用服務(wù)提供者組件執(zhí)行相應(yīng)的服務(wù),返回?cái)?shù)據(jù)由消息中心和代理返回給應(yīng)用服務(wù)請(qǐng)求者。以充換電站監(jiān)控系統(tǒng)實(shí)際應(yīng)用為例來說明應(yīng)用服務(wù)總線。應(yīng)用服務(wù)總線實(shí)現(xiàn)分以下四部分進(jìn)行實(shí)施
I.定義總線接口規(guī)范
總線接口規(guī)范分為兩大部分
(I)應(yīng)用服務(wù)注冊(cè)/注銷接口 提供給應(yīng)用服務(wù)組件進(jìn)行組件注冊(cè)和服務(wù)登記,應(yīng)用服務(wù)退出后注銷組件信息。(2)總線上的應(yīng)用服務(wù)組件接口 應(yīng)用服務(wù)組件提供的給應(yīng)用服務(wù)總線調(diào)用的接口,因此應(yīng)用服務(wù)組件主要實(shí)現(xiàn)兩個(gè)接口 1)方法調(diào)用的實(shí)現(xiàn)實(shí)現(xiàn)在應(yīng)用服務(wù)總線上登記的服務(wù);2)消息接收用于接收訂閱的消息事件的接收。2.應(yīng)用服務(wù)總線進(jìn)程的實(shí)現(xiàn)
應(yīng)用服務(wù)總線主要功能是建立和維護(hù)應(yīng)用服務(wù)組件庫,與各計(jì)算機(jī)的本地?cái)?shù)據(jù)服務(wù)系統(tǒng)連接,為應(yīng)用層系統(tǒng)提供應(yīng)用服務(wù)等。通過應(yīng)用服務(wù)總線,把各計(jì)算機(jī)的本地應(yīng)用服務(wù)系統(tǒng)集成起來,實(shí)現(xiàn)應(yīng)用服務(wù)的網(wǎng)絡(luò)位置無關(guān)性(對(duì)應(yīng)用層系統(tǒng)來講,不需要知道數(shù)據(jù)在哪臺(tái)計(jì)算機(jī)上)。另外,通過應(yīng)用服務(wù)總線,為應(yīng)用層系統(tǒng)提供統(tǒng)一的、透明的、開發(fā)的應(yīng)用服務(wù)接口。應(yīng)用服務(wù)總線實(shí)現(xiàn)采用多線程結(jié)構(gòu),應(yīng)用服務(wù)總線接口負(fù)責(zé)處理系統(tǒng)應(yīng)用服務(wù)組件與總線的交互,包括組件的注冊(cè)/注銷,以及統(tǒng)一消息在兩者間的傳送。由于各系統(tǒng)應(yīng)用服務(wù)以及應(yīng)用服務(wù)總線都是以獨(dú)立進(jìn)程方式運(yùn)行。主線程初始化時(shí)負(fù)責(zé)創(chuàng)建一個(gè)供各組件注冊(cè)時(shí)公用的組件注冊(cè)接口線程,節(jié)點(diǎn)上的某個(gè)系統(tǒng)應(yīng)用組件啟動(dòng)后,主動(dòng)連接組件注冊(cè)接口,將本組件信息進(jìn)行注冊(cè),組件注冊(cè)接口線程收到注冊(cè)信息后,即為該組件創(chuàng)建一個(gè)專用的組件通信接口線程負(fù)責(zé)該組件與應(yīng)用服務(wù)總線的交互。消息中心負(fù)責(zé)提供各種傳輸服務(wù)并按照一定的傳輸調(diào)度策略在網(wǎng)絡(luò)節(jié)點(diǎn)間傳輸信息。應(yīng)用服務(wù)總線功能線程組負(fù)責(zé)保障總線職能的正常進(jìn)行,如實(shí)時(shí)監(jiān)控本節(jié)點(diǎn)運(yùn)行信息,并通過消息中心向其他網(wǎng)絡(luò)節(jié)點(diǎn)多播該信息,同時(shí)接收其他節(jié)點(diǎn)傳送來的節(jié)點(diǎn)信息,并據(jù)此更新系統(tǒng)節(jié)點(diǎn)信息庫以及維護(hù)全網(wǎng)一致的實(shí)時(shí)數(shù)據(jù)庫。3.編寫符合總線接口規(guī)范的服務(wù)組件
服務(wù)請(qǐng)求端與服務(wù)提供端都是應(yīng)用服務(wù)組件,是系統(tǒng)業(yè)務(wù)功能的劃分,每一個(gè)應(yīng)用服務(wù)組件或者提供多個(gè)服務(wù),或者訂閱或即時(shí)請(qǐng)求其他應(yīng)用組件提供的服務(wù),每個(gè)服務(wù)都以特定的交互方式提供特定的功能。
系統(tǒng)應(yīng)用服務(wù)組件的任務(wù)
(1)完成本組件的業(yè)務(wù)功能;
(2)在組件啟動(dòng)時(shí)向應(yīng)用服務(wù)總線注冊(cè)本組件信息,包括本組件提供的服務(wù),訂閱的服務(wù)等信息;
(3)遵循應(yīng)用服務(wù)總線制定的接口規(guī)范提供在運(yùn)行時(shí)與應(yīng)用服務(wù)總線交互的接口,以向應(yīng)用服務(wù)總線發(fā)送和接收統(tǒng)一消息;
(4)在組件退出時(shí)向應(yīng)用服務(wù)總線注銷本組件信息,包括本組件提供的服務(wù)、訂閱的服
務(wù)等信息。以下以在充電站監(jiān)控系統(tǒng)舉例,幾個(gè)比較公用的應(yīng)用服務(wù)組件
(I)公用數(shù)據(jù)服務(wù)組件
在公用數(shù)據(jù)服務(wù)組件,通過兩級(jí)處理實(shí)現(xiàn)數(shù)據(jù)服務(wù)的數(shù)據(jù)源位置無關(guān)性,即數(shù)據(jù)是本地的還是網(wǎng)絡(luò)的,和數(shù)據(jù)源類型無關(guān)性,即數(shù)據(jù)是數(shù)據(jù)庫的還是間隔層設(shè)備的,由本地?cái)?shù)據(jù)服務(wù)系統(tǒng)實(shí)現(xiàn))。(2)本地?cái)?shù)據(jù)服務(wù)組件
本地?cái)?shù)據(jù)服務(wù)組件的主要任務(wù)是進(jìn)行實(shí)時(shí)數(shù)據(jù)處理和歸整/歷史數(shù)據(jù)處理,并通過本地?cái)?shù)據(jù)服務(wù)組件把實(shí)時(shí)數(shù)據(jù)庫的訪問與本地?cái)?shù)據(jù)庫的訪問統(tǒng)一起來,使所有應(yīng)用服務(wù)組件能夠采用統(tǒng)一的方法訪問實(shí)時(shí)數(shù)據(jù)庫和本地?cái)?shù)據(jù)庫。同時(shí),通過應(yīng)用服務(wù)總線接口組件連接到應(yīng)用服務(wù)總線上,提供透明的、開放的數(shù)據(jù)服務(wù)接口方法。即對(duì)應(yīng)用數(shù)據(jù)服務(wù)系統(tǒng)來講,不需要指明所訪問的數(shù)據(jù)是實(shí)時(shí)數(shù)據(jù)還是歸整/歷史數(shù)據(jù),即實(shí)現(xiàn)數(shù)據(jù)訪問的數(shù)據(jù)源類型無關(guān)性。(3)規(guī)約轉(zhuǎn)換組件
本組件有兩個(gè)功能當(dāng)從外部獲取數(shù)據(jù)時(shí),它實(shí)現(xiàn)規(guī)約解析功能,即獲取數(shù)據(jù)報(bào)文并分離出其中包含的數(shù)據(jù);當(dāng)向外部發(fā)送數(shù)據(jù)時(shí),它實(shí)現(xiàn)數(shù)據(jù)封裝功能,即把要發(fā)送的數(shù)據(jù)按相應(yīng)的通信規(guī)約打包成發(fā)送數(shù)據(jù)報(bào)文。4.布署應(yīng)用服務(wù)總線
應(yīng)用服務(wù)總線布署采用雙總線結(jié)構(gòu),即在分布式實(shí)時(shí)應(yīng)用系統(tǒng)中設(shè)有兩個(gè)應(yīng)用服務(wù)總線,分別為主應(yīng)用服務(wù)總線和備應(yīng)用服務(wù)總線。應(yīng)用服務(wù)總線在正常情況,所有的應(yīng)用服務(wù)通過主應(yīng)用服務(wù)總線請(qǐng)求或者提供服務(wù),主應(yīng)用服務(wù)總線接收服務(wù)請(qǐng)求組件消息,調(diào)用相應(yīng)的服務(wù)提供組件事件或方法后向相應(yīng)的服務(wù)請(qǐng)求組件返回消息,備應(yīng)用服務(wù)總線同步主應(yīng)用服務(wù)總線上的數(shù)據(jù),當(dāng)主服務(wù)總線發(fā)生異常時(shí),備應(yīng)用服務(wù)總線無縫切換為應(yīng)用服務(wù)總線。權(quán)利要求
1.一種充換電站監(jiān)控的應(yīng)用服務(wù)系統(tǒng),其特征在于,包括 服務(wù)請(qǐng)求端,用于向應(yīng)用服務(wù)總線提出服務(wù)請(qǐng)求,包括應(yīng)用服務(wù)組件、服務(wù)提供者代理組件和應(yīng)用服務(wù)總線接口適配器; 服務(wù)提供端,用于提供與應(yīng)用服務(wù)總線發(fā)送的服務(wù)請(qǐng)求相對(duì)應(yīng)的服務(wù),包括應(yīng)用服務(wù)總線接口適配器; 應(yīng)用服務(wù)總線,用于管理應(yīng)用服務(wù)的服務(wù)、消息的交互和處理,監(jiān)視分布于系統(tǒng)所在的局域網(wǎng)絡(luò)上的各個(gè)主機(jī)中的應(yīng)用服務(wù)的運(yùn)行狀態(tài)并進(jìn)行相應(yīng)的控制,包括總線規(guī)范接口、應(yīng)用服務(wù)總線實(shí)例、消息中心; 所述服務(wù)請(qǐng)求端與服務(wù)提供端都是由應(yīng)用服務(wù)組件組成,所述服務(wù)請(qǐng)求端和服務(wù)提供端分別通過應(yīng)用服務(wù)總線適配器、總線規(guī)范接口與應(yīng)用服務(wù)總線通訊連接。
2.根據(jù)權(quán)利要求I所述的系統(tǒng),其特征在于所述服務(wù)請(qǐng)求端、服務(wù)提供端和應(yīng)用服務(wù)總線可任意配置在系統(tǒng)所在的局域網(wǎng)絡(luò)的各主機(jī)中。
3.根據(jù)權(quán)利要求I所述的系統(tǒng),其特征在于服務(wù)組件請(qǐng)求另一個(gè)服務(wù)組件的服務(wù)是通過服務(wù)提供者代理組件來訪問,總線上的服務(wù)提供者組件位于服務(wù)請(qǐng)求者組件的進(jìn)程以夕卜,服務(wù)請(qǐng)求者組件可以調(diào)用的本地接口與服務(wù)提供者組件通信,此時(shí),本地接口充當(dāng)了代理的角色,應(yīng)用服務(wù)提供者代理組件負(fù)責(zé)將服務(wù)請(qǐng)求者組件的請(qǐng)求轉(zhuǎn)發(fā)給應(yīng)用服務(wù)總線,再由服務(wù)總線轉(zhuǎn)發(fā)給相應(yīng)的服務(wù)提供者組件。
4.根據(jù)權(quán)利要求1-3中任一項(xiàng)所述的系統(tǒng),其特征在于,所述應(yīng)用服務(wù)系統(tǒng)的總線接口規(guī)范,其包括以下兩大部分 (1)應(yīng)用服務(wù)注冊(cè)/注銷接口用于提供給應(yīng)用服務(wù)組件進(jìn)行模塊注冊(cè)和服務(wù)登記,應(yīng)用服務(wù)退出后注銷模塊信息; (2)應(yīng)用服務(wù)總線上的應(yīng)用服務(wù)組件接口應(yīng)用服務(wù)組件提供給應(yīng)用服務(wù)總線調(diào)用的接口,包括兩個(gè)接口 1)方法調(diào)用的實(shí)現(xiàn)用于實(shí)現(xiàn)在應(yīng)用服務(wù)總線上登記的服務(wù);2)消息接收用于接收訂閱的消息事件的接收。
5.一種充換電站監(jiān)控的應(yīng)用服務(wù)系統(tǒng)進(jìn)程間通訊方法,其特征在于,該方法的一對(duì)一的請(qǐng)求一響應(yīng)步驟如下 (1)服務(wù)請(qǐng)求端和服務(wù)提供端分別通過應(yīng)用服務(wù)總線的總線規(guī)范接口,提交注冊(cè)信息給消息中心,由消息中心向應(yīng)用服務(wù)總線進(jìn)程轉(zhuǎn)發(fā),完成在總線上的注冊(cè); (2)服務(wù)請(qǐng)求端通過服務(wù)提供者代理向消息中心提交服務(wù)請(qǐng)求,消息中心將服務(wù)請(qǐng)求轉(zhuǎn)發(fā)至應(yīng)用服務(wù)總線進(jìn)程; (3)應(yīng)用服務(wù)總線進(jìn)程接收到服務(wù)請(qǐng)求端的消息,對(duì)消息進(jìn)行分析,并在信息中心查找相關(guān)的信息,找到后,激活對(duì)應(yīng)的服務(wù)提供端的數(shù)據(jù)適配器為消息服務(wù); (4)服務(wù)提供端執(zhí)行相應(yīng)的服務(wù),返回?cái)?shù)據(jù)由消息中心和服務(wù)提供者代理返回給服務(wù)請(qǐng)求端。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,方法還包括一對(duì)多的廣播-訂閱方式,是應(yīng)用服務(wù)總線接收到一服務(wù)組件的事件信號(hào)時(shí),向應(yīng)用服務(wù)總線上其余的應(yīng)用服務(wù)組件進(jìn)行信號(hào)廣播,訂閱本信號(hào)的服務(wù)組件對(duì)事件信號(hào)進(jìn)行相應(yīng)處理。
7.根據(jù)權(quán)利要求5或6所述的方法,其特征在于所述步驟(I)中注冊(cè)內(nèi)容包括應(yīng)用服務(wù)組件的名稱、屬性、組件提供的服務(wù)和組件訂閱的服務(wù)。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于所述步驟(3)中應(yīng)用服務(wù)總線收到組件服務(wù)請(qǐng)求后,將所請(qǐng)求的組件服務(wù)與先前存入的各種服務(wù)信息進(jìn)行匹配,找到所需的服務(wù)及其服務(wù)所屬的服務(wù)組件并將該組件請(qǐng)求信息送至服務(wù)提供端中的服務(wù)組件。
9.根據(jù)權(quán)利要求8所述的方法,其特征在于所述步驟(3)中消息中心查找相關(guān)的信息包括消息的路由信息、使用哪個(gè)數(shù)據(jù)適配器的哪個(gè)方法進(jìn)行數(shù)據(jù)轉(zhuǎn)換、轉(zhuǎn)換后數(shù)據(jù)發(fā)往哪個(gè)服務(wù)提供端。
10.根據(jù)權(quán)利要求9所述的方法,其特征在于所述應(yīng)用服務(wù)退出運(yùn)行時(shí),在應(yīng)用服務(wù)總線上注銷本應(yīng)用服務(wù)所有消息。
全文摘要
本發(fā)明涉及一種充換電站監(jiān)控的應(yīng)用服務(wù)系統(tǒng)及進(jìn)程間通訊方法,系統(tǒng)包括服務(wù)請(qǐng)求端,用于向應(yīng)用服務(wù)總線提出服務(wù)請(qǐng)求;服務(wù)提供端,用于提供與應(yīng)用服務(wù)總線發(fā)送的服務(wù)請(qǐng)求相對(duì)應(yīng)的服務(wù);應(yīng)用服務(wù)總線,用于管理應(yīng)用服務(wù)的服務(wù)、消息的交互和處理,監(jiān)視各個(gè)節(jié)點(diǎn)的運(yùn)行狀態(tài)并進(jìn)行相應(yīng)的控制,所述服務(wù)請(qǐng)求端和服務(wù)提供端分別通過應(yīng)用服務(wù)總線適配器、總線規(guī)范接口與應(yīng)用服務(wù)總線通訊連接;本發(fā)明實(shí)現(xiàn)了各種符合軟總線接口標(biāo)準(zhǔn)的組件即插即用,易于大規(guī)模軟件系統(tǒng)的集成和定制,組件接口的標(biāo)準(zhǔn)化導(dǎo)致生產(chǎn)的硬件化或工廠化,提高生產(chǎn)率,采用雙應(yīng)用服務(wù)總線的冗余布署,突破了單總線負(fù)載的性能瓶頸,克服了單點(diǎn)故障,提高了系統(tǒng)的可用性。
文檔編號(hào)H04L12/24GK102647319SQ20121008405
公開日2012年8月22日 申請(qǐng)日期2012年3月27日 優(yōu)先權(quán)日2012年3月27日
發(fā)明者叢陽, 何錫點(diǎn), 余庚宗, 克瀟, 唐宇, 張新昌, 徐怡山, 方韜, 朱意霞, 杜強(qiáng), 薛亮, 趙成功, 連湛偉, 鄧建慎, 郭亮, 錢平, 陳鋼, 高建琨 申請(qǐng)人:山東電力集團(tuán)公司, 許昌許繼軟件技術(shù)有限公司, 許繼電氣股份有限公司, 許繼集團(tuán)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1