一種采用發(fā)布訂閱通訊模型的配電網(wǎng)數(shù)據(jù)傳輸方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及配電網(wǎng)數(shù)據(jù)傳輸領(lǐng)域,特別是一種采用發(fā)布訂閱通訊模型的配電網(wǎng)數(shù)據(jù)傳輸方法。
【背景技術(shù)】
[0002]在現(xiàn)有配電網(wǎng)系統(tǒng)中,數(shù)據(jù)通訊服務(wù)一般是C/S等傳統(tǒng)的傳輸模式,傳輸過程比較復(fù)雜使得效率不高,網(wǎng)絡(luò)延遲較大,且配置不夠靈活,不能很好的適應(yīng)配電網(wǎng)系統(tǒng)的數(shù)據(jù)特點(diǎn)和通訊要求。
【發(fā)明內(nèi)容】
[0003]本發(fā)明的主要目的在于克服現(xiàn)有技術(shù)中的上述缺陷,提供一種高效、靈活的采用發(fā)布訂閱通訊模型的配電網(wǎng)數(shù)據(jù)傳輸方法,以提高配電網(wǎng)系統(tǒng)的實(shí)時(shí)數(shù)據(jù)顯示和應(yīng)用效率。
[0004]本發(fā)明采用如下技術(shù)方案:
[0005]一種采用發(fā)布訂閱通訊模型的配電網(wǎng)數(shù)據(jù)傳輸方法,用于建立發(fā)布方和訂閱方之間的連接從而實(shí)現(xiàn)數(shù)據(jù)傳輸,基于中間件的應(yīng)用程序進(jìn)行數(shù)據(jù)通信,其特征在于:建立一全局?jǐn)?shù)據(jù)空間,發(fā)布方通過中間件將要發(fā)布的數(shù)據(jù)主題發(fā)送至該全局?jǐn)?shù)據(jù)空間,訂閱方通過中間件在該全局?jǐn)?shù)據(jù)空間內(nèi)查找相關(guān)的數(shù)據(jù)主題并訂閱數(shù)據(jù)主題,中間件判斷該訂閱的數(shù)據(jù)主題與訂閱方是否匹配,并在匹配時(shí)將發(fā)布方發(fā)布的該訂閱的數(shù)據(jù)主題的最新數(shù)據(jù)轉(zhuǎn)發(fā)至訂閱方。
[0006]優(yōu)選的,所述數(shù)據(jù)主題包括數(shù)據(jù)名稱、數(shù)據(jù)類型和數(shù)據(jù)QOS。
[0007]優(yōu)選的,發(fā)布方通過中間件將要發(fā)布的數(shù)據(jù)主題發(fā)送至該全局?jǐn)?shù)據(jù)空間是指:發(fā)布方在中間件上注冊數(shù)據(jù)類型并設(shè)置數(shù)據(jù)名稱,中間件根據(jù)數(shù)據(jù)類型生成數(shù)據(jù)主題并設(shè)置數(shù)據(jù)QOS。
[0008]優(yōu)選的,發(fā)布方通過數(shù)據(jù)寫入接口將數(shù)據(jù)發(fā)布至中間件,該數(shù)據(jù)寫入接口為API接口,每個(gè)數(shù)據(jù)寫入接口對(duì)應(yīng)配電網(wǎng)的一種數(shù)據(jù)類型。
[0009]優(yōu)選的,訂閱方通過數(shù)據(jù)讀取接口讀取中間件轉(zhuǎn)發(fā)的數(shù)據(jù),數(shù)據(jù)讀取接口為API接口,每個(gè)數(shù)據(jù)讀取接口對(duì)應(yīng)配電網(wǎng)的一種數(shù)據(jù)類型。
[0010]由上述對(duì)本發(fā)明的描述可知,與現(xiàn)有技術(shù)相比,本發(fā)明具有如下有益效果:
[0011](I)引入全局?jǐn)?shù)據(jù)空間,提高了通信效率
[0012]在消息通信的基礎(chǔ)上增加了一個(gè)全局?jǐn)?shù)據(jù)空間,不需要中心服務(wù)器的連接,而通過全局?jǐn)?shù)據(jù)空間上的數(shù)據(jù)主題來關(guān)聯(lián),發(fā)布方提供需要發(fā)布的數(shù)據(jù)主題到全局?jǐn)?shù)據(jù)空間,訂閱方在該全局?jǐn)?shù)據(jù)空間上找到需要的主題,能實(shí)現(xiàn)一對(duì)多的連接,提高了通信效率。
[0013](2)以數(shù)據(jù)為中心,降低網(wǎng)絡(luò)延遲
[0014]以數(shù)據(jù)為中心,一個(gè)訂閱方可以在全局?jǐn)?shù)據(jù)空間中找到多個(gè)相同主題,實(shí)現(xiàn)一對(duì)多的連接,一個(gè)連接失敗可以換用另一個(gè),降低了網(wǎng)絡(luò)延遲。同時(shí)發(fā)送方和訂閱方通過數(shù)據(jù)主題相連后直接進(jìn)行點(diǎn)對(duì)點(diǎn)的數(shù)據(jù)傳送,也提高了通信效率。
[0015](3)進(jìn)行動(dòng)態(tài)配置,提高數(shù)據(jù)傳送能力。
[0016]具有高效的動(dòng)態(tài)配置能力,可以方便地增加節(jié)點(diǎn),并快速發(fā)現(xiàn)新增加的節(jié)點(diǎn)及其主題。當(dāng)一個(gè)領(lǐng)域被分割的時(shí)候,系統(tǒng)也可以很快重新組合成一個(gè)新的領(lǐng)域并開始工作。
【附圖說明】
[0017]圖1為本發(fā)明方法的原理圖。
【具體實(shí)施方式】
[0018]以下通過【具體實(shí)施方式】對(duì)本發(fā)明作進(jìn)一步的描述。
[0019]一種采用發(fā)布訂閱通訊模型的配電網(wǎng)數(shù)據(jù)傳輸方法,用于建立發(fā)布方和訂閱方之間的連接從而實(shí)現(xiàn)數(shù)據(jù)傳輸,基于中間件的應(yīng)用程序進(jìn)行數(shù)據(jù)通信。方法如下:建立一全局?jǐn)?shù)據(jù)空間,發(fā)布方通過中間件將要發(fā)布的數(shù)據(jù)主題發(fā)送至該全局?jǐn)?shù)據(jù)空間,訂閱方通過中間件在該全局?jǐn)?shù)據(jù)空間內(nèi)查找相關(guān)的數(shù)據(jù)主題并訂閱數(shù)據(jù)主題,中間件判斷該訂閱的數(shù)據(jù)主題與訂閱方是否匹配,并在匹配時(shí)將發(fā)布方發(fā)布的該訂閱的數(shù)據(jù)主題的最新數(shù)據(jù)轉(zhuǎn)發(fā)至訂閱方。其中:數(shù)據(jù)主題包括數(shù)據(jù)名稱、數(shù)據(jù)類型和數(shù)據(jù)QOS等。
[0020]具體如下:
[0021]訂閱方和發(fā)布方通過簡單的配置數(shù)據(jù)主題的數(shù)據(jù)名稱(即配電網(wǎng)測量的名稱)來指定它想要讀或?qū)懙臄?shù)據(jù),并且使用一個(gè)以數(shù)據(jù)為中心的API (即DataReader和DataWriter接口 )直接讀寫數(shù)據(jù)。
[0022]參照圖1的原理圖,顯示了數(shù)據(jù)的傳遞過程,其中Topic表示數(shù)據(jù)主題,Dataffriter是數(shù)據(jù)寫入接口,Publ isher是發(fā)布方,DataReader是數(shù)據(jù)讀取接口,Subscriber是訂閱方。
[0023]Publ isher可以發(fā)布不同類型的數(shù)據(jù)。DataWriter是Publ isher的一個(gè)類型化的接入者,即每個(gè)DataWriter對(duì)象只專注于配電網(wǎng)系統(tǒng)的一種數(shù)據(jù)類型。應(yīng)用程序的中間件必須使用DataWriter來與Publ isher通信,前者告訴后者存在某種類型的數(shù)據(jù)對(duì)象并同時(shí)告知其相應(yīng)的值。當(dāng)數(shù)據(jù)對(duì)象的值通過適當(dāng)?shù)腄ataWriter傳遞給Publ isher后,Publ isher會(huì)根據(jù)自身的QoS或者相應(yīng)的DataWri ter的QoS來進(jìn)行數(shù)據(jù)分發(fā)。將一個(gè)Dataffriter連到一個(gè)Publ isher上就定義了一次發(fā)布。
[0024]相應(yīng)地,Subscriber負(fù)責(zé)接收已發(fā)布的數(shù)據(jù)并使訂閱方的應(yīng)用程序能夠獲得此數(shù)據(jù),它可以接收并分派不同類型的數(shù)據(jù)。而應(yīng)用程序想要獲取Subscriber接收到的數(shù)據(jù),就必須使用一個(gè)與Subscriber關(guān)聯(lián)的類型化的DataReader。同樣,將一個(gè)DataReader連到一個(gè)Subscriber上就定義了一次訂閱。
[0025]Topic則從概念上對(duì)發(fā)布方和訂閱方進(jìn)行了連接匹配:發(fā)布方必須在某種程度上被訂閱方知曉,這樣才能在它們之間建立明確的聯(lián)系。Topic通過將數(shù)據(jù)名稱、數(shù)據(jù)類型、與數(shù)據(jù)本身相關(guān)的QoS聯(lián)系到一起來完成此目的。正是通過Topic,使空間上、時(shí)間上關(guān)系松散甚至毫無關(guān)聯(lián)的發(fā)布方和訂閱方之間產(chǎn)生了關(guān)聯(lián)。
[0026]對(duì)于發(fā)布方,為了完成數(shù)據(jù)發(fā)布,需進(jìn)行一系列的動(dòng)作,包括注冊數(shù)據(jù)類型、生成數(shù)據(jù)主題Topic、比較并設(shè)置合理的QoS、預(yù)分配資源(緩存區(qū)等)、根據(jù)訂閱資源生成消息(包含訂閱方的地址)、通知Listener接口等,還要根據(jù)QoS要求,在規(guī)定的時(shí)間發(fā)送數(shù)據(jù)。
[0027]本發(fā)明的基于消息中間件的應(yīng)用程序進(jìn)行通信的步驟如下:
[0028](I)發(fā)布方在中間件上注冊數(shù)據(jù)類型DataType ;
[0029](2)返回;
[0030](3)發(fā)布方通知中間件生成主題Topic,中間件根據(jù)數(shù)據(jù)類型DataType生產(chǎn)數(shù)據(jù)主題并設(shè)置數(shù)據(jù)QoS ;
[0031](4)返回主題;
[0032](5)某個(gè)時(shí)刻,一訂閱方(比如指控系統(tǒng)某指揮控制臺(tái))向中間件發(fā)送請求,查找某一數(shù)據(jù)主題;
[0033](6)中間件返回需要查找的相關(guān)數(shù)據(jù)主題;
[0034](7)訂閱方訂閱數(shù)據(jù)主題,中間件比較該數(shù)據(jù)主題和訂閱方設(shè)定的QoS,看是否滿足訂閱方要求,如果滿足則保存一個(gè)新的訂閱信息并成功返回,否則拒絕訂閱;
[0035](8)中間件返回相應(yīng)信息;
[0036](9)發(fā)布方設(shè)置QoS并發(fā)布最新的數(shù)據(jù);
[0037](10)中間件接收到數(shù)據(jù),比較QoS,適時(shí)將數(shù)據(jù)傳遞給訂閱方;
[0038](11)當(dāng)又有新的數(shù)據(jù)請求發(fā)布時(shí),重復(fù)(9)和(10)。
[0039]發(fā)布方通過中間件將要發(fā)布的數(shù)據(jù)主題發(fā)送至該全局?jǐn)?shù)據(jù)空間是指:發(fā)布方在中間件上注冊數(shù)據(jù)類型并設(shè)置數(shù)據(jù)名稱,中間件根據(jù)數(shù)據(jù)類型生成數(shù)據(jù)主題并設(shè)置數(shù)據(jù)Q0S。
[0040]發(fā)布方通過數(shù)據(jù)寫入接口將數(shù)據(jù)發(fā)布至中間件,該數(shù)據(jù)寫入接口為API接口,每個(gè)數(shù)據(jù)寫入接口對(duì)應(yīng)配電網(wǎng)的一種數(shù)據(jù)類型。
[0041]訂閱方通過數(shù)據(jù)讀取接口讀取中間件轉(zhuǎn)發(fā)的數(shù)據(jù),數(shù)據(jù)讀取接口為API接口,每個(gè)數(shù)據(jù)讀取接口對(duì)應(yīng)配電網(wǎng)的一種數(shù)據(jù)類型。
[0042]上述僅為本發(fā)明的【具體實(shí)施方式】,但本發(fā)明的設(shè)計(jì)構(gòu)思并不局限于此,凡利用此構(gòu)思對(duì)本發(fā)明進(jìn)行非實(shí)質(zhì)性的改動(dòng),均應(yīng)屬于侵犯本發(fā)明保護(hù)范圍的行為。
【主權(quán)項(xiàng)】
1.一種采用發(fā)布訂閱通訊模型的配電網(wǎng)數(shù)據(jù)傳輸方法,用于建立發(fā)布方和訂閱方之間的連接從而實(shí)現(xiàn)數(shù)據(jù)傳輸,基于中間件的應(yīng)用程序進(jìn)行數(shù)據(jù)通信,其特征在于:建立一全局?jǐn)?shù)據(jù)空間,發(fā)布方通過中間件將要發(fā)布的數(shù)據(jù)主題發(fā)送至該全局?jǐn)?shù)據(jù)空間,訂閱方通過中間件在該全局?jǐn)?shù)據(jù)空間內(nèi)查找相關(guān)的數(shù)據(jù)主題并訂閱數(shù)據(jù)主題,中間件判斷該訂閱的數(shù)據(jù)主題與訂閱方是否匹配,并在匹配時(shí)將發(fā)布方發(fā)布的該訂閱的數(shù)據(jù)主題的最新數(shù)據(jù)轉(zhuǎn)發(fā)至訂閱方。
2.如權(quán)利要求1所述的一種采用發(fā)布訂閱通訊模型的配電網(wǎng)數(shù)據(jù)傳輸方法,其特征在于:所述數(shù)據(jù)主題包括數(shù)據(jù)名稱、數(shù)據(jù)類型和數(shù)據(jù)QOS。
3.如權(quán)利要求1所述的一種采用發(fā)布訂閱通訊模型的配電網(wǎng)數(shù)據(jù)傳輸方法,其特征在于:發(fā)布方通過中間件將要發(fā)布的數(shù)據(jù)主題發(fā)送至該全局?jǐn)?shù)據(jù)空間是指:發(fā)布方在中間件上注冊數(shù)據(jù)類型并設(shè)置數(shù)據(jù)名稱,中間件根據(jù)數(shù)據(jù)類型生成數(shù)據(jù)主題并設(shè)置數(shù)據(jù)QOS。
4.如權(quán)利要求1所述的一種采用發(fā)布訂閱通訊模型的配電網(wǎng)數(shù)據(jù)傳輸方法,其特征在于:發(fā)布方通過數(shù)據(jù)寫入接口將數(shù)據(jù)發(fā)布至中間件,該數(shù)據(jù)寫入接口為API接口,每個(gè)數(shù)據(jù)寫入接口對(duì)應(yīng)配電網(wǎng)的一種數(shù)據(jù)類型。
5.如權(quán)利要求1所述的一種采用發(fā)布訂閱通訊模型的配電網(wǎng)數(shù)據(jù)傳輸方法,其特征在于:訂閱方通過數(shù)據(jù)讀取接口讀取中間件轉(zhuǎn)發(fā)的數(shù)據(jù),數(shù)據(jù)讀取接口為API接口,每個(gè)數(shù)據(jù)讀取接口對(duì)應(yīng)配電網(wǎng)的一種數(shù)據(jù)類型。
【專利摘要】一種采用發(fā)布訂閱通訊模型的配電網(wǎng)數(shù)據(jù)傳輸方法,用于建立發(fā)布方和訂閱方之間的連接從而實(shí)現(xiàn)數(shù)據(jù)傳輸,基于中間件的應(yīng)用程序進(jìn)行數(shù)據(jù)通信,建立一全局?jǐn)?shù)據(jù)空間,發(fā)布方通過中間件將要發(fā)布的數(shù)據(jù)主題發(fā)送至該全局?jǐn)?shù)據(jù)空間,訂閱方通過中間件在該全局?jǐn)?shù)據(jù)空間內(nèi)查找相關(guān)的數(shù)據(jù)主題并訂閱數(shù)據(jù)主題,中間件判斷該訂閱的數(shù)據(jù)主題與訂閱方是否匹配,并在匹配時(shí)將發(fā)布方發(fā)布的該訂閱的數(shù)據(jù)主題的最新數(shù)據(jù)轉(zhuǎn)發(fā)至訂閱方。本發(fā)明的發(fā)布方提供需要發(fā)布的數(shù)據(jù)主題到全局?jǐn)?shù)據(jù)空間,訂閱方在該全局?jǐn)?shù)據(jù)空間上找到需要的主題,能實(shí)現(xiàn)一對(duì)多的連接,提高了通信效率、降低網(wǎng)絡(luò)延遲。
【IPC分類】H04L29-06, H02J13-00
【公開號(hào)】CN104617666
【申請?zhí)枴緾N201510019226
【發(fā)明人】許婉卿, 吳鯉濱, 黃智強(qiáng), 吳仰芳
【申請人】國家電網(wǎng)公司, 國網(wǎng)福建省電力有限公司, 國網(wǎng)福建省電力有限公司泉州供電公司
【公開日】2015年5月13日
【申請日】2015年1月14日