本發(fā)明屬于通信技術(shù)領(lǐng)域,尤其涉及一種用于服務(wù)器切換的方法、適配器、服務(wù)器和調(diào)度裝置。
背景技術(shù):
工業(yè)物聯(lián)網(wǎng),簡(jiǎn)單的說(shuō)就是要把工業(yè)設(shè)備聯(lián)網(wǎng),目的是把工業(yè)設(shè)備的各種運(yùn)行狀態(tài)和數(shù)據(jù)發(fā)送到網(wǎng)絡(luò)側(cè)服務(wù)器,網(wǎng)絡(luò)側(cè)服務(wù)器負(fù)責(zé)接收數(shù)據(jù)、保存數(shù)據(jù)、處理數(shù)據(jù),并對(duì)數(shù)據(jù)進(jìn)行統(tǒng)計(jì)和分析。今天,隨著微處理器技術(shù)的不斷發(fā)展,絕大多數(shù)工業(yè)設(shè)備都帶有自控和伺服功能,并通過(guò)本端控制器方式實(shí)現(xiàn),可以說(shuō)已經(jīng)非常強(qiáng)大。但是這些設(shè)備的設(shè)計(jì)本身還是以傳統(tǒng)的模式,并沒(méi)有考慮到聯(lián)網(wǎng)的需求。適配器就是為了解決傳統(tǒng)設(shè)備的物聯(lián)網(wǎng)需要,應(yīng)運(yùn)而生的一個(gè)中間適配設(shè)備。所謂適配就是說(shuō),在維持原有設(shè)備不做任何改動(dòng)的前提條件下,用適配的方式與工業(yè)設(shè)備通信,并把工業(yè)設(shè)備的運(yùn)行狀態(tài)和數(shù)據(jù)發(fā)送到網(wǎng)絡(luò)側(cè)服務(wù)器。
通常適配器與網(wǎng)絡(luò)側(cè)服務(wù)器建立通信鏈路進(jìn)行通信,但是在某些情況下會(huì)導(dǎo)致適配器與服務(wù)器之間通信失敗,例如服務(wù)器發(fā)生故障。在這種情況下,適配器需要從原服務(wù)器切換到新的服務(wù)器,與新的服務(wù)器重新建立通信鏈路進(jìn)行通信。目前還沒(méi)有一種明確的服務(wù)器切換方法。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本發(fā)明的一個(gè)目的是提出一種用于服務(wù)器切換的方法,以使適配器在與原服務(wù)器發(fā)生通信失敗時(shí)能夠及時(shí)切換到新的服務(wù)器,與新的服務(wù)器重新建立通信鏈路進(jìn)行通信。為了對(duì)披露的實(shí)施例的一些方面有一個(gè)基本的理解,下面給出了簡(jiǎn)單的概括。該概括部分不是泛泛評(píng)述,也不是要確定關(guān)鍵/重要組成元素或描繪這些實(shí)施例的保護(hù)范圍。其唯一目的是用簡(jiǎn)單的形式呈現(xiàn)一些概念,以此作為后面的詳細(xì)說(shuō)明的序言。
在一些可選的實(shí)施例中,所述用于服務(wù)器切換的方法用于安裝在工業(yè)設(shè)備上的適配器,包括:與第一服務(wù)器建立第一通信鏈路;所述第一通信鏈路因故障斷開(kāi)后,接收網(wǎng)絡(luò)側(cè)調(diào)度裝置發(fā)送的第二服務(wù)器信息;并,與所述第二服務(wù)器建立第二通信鏈路。
在一些可選的實(shí)施例中,所述用于服務(wù)器切換的方法用于網(wǎng)絡(luò)側(cè)調(diào)度裝置,包括:獲得多個(gè)服務(wù)器的狀態(tài)信息;發(fā)現(xiàn)第一服務(wù)器狀態(tài)異常后,從所述多個(gè)服務(wù)器中選擇可用服務(wù)器;將所述可用服務(wù)器的信息發(fā)送給一個(gè)或多個(gè)與所述第一服務(wù)器建立通信鏈路的適配器。
在一些可選的實(shí)施例中,所述用于服務(wù)器切換的方法用于網(wǎng)絡(luò)側(cè)調(diào)度裝置,包括:接收用于服務(wù)器切換的請(qǐng)求消息,從多個(gè)服務(wù)器中選擇可用服務(wù)器;將所述可用服務(wù)器的信息發(fā)送給一個(gè)或多個(gè)適配器;所述一個(gè)或多個(gè)適配器與第一服務(wù)器之間的通信鏈路因故障斷開(kāi)。
在一些可選的實(shí)施例中,所述用于服務(wù)器切換的方法用于服務(wù)器,包括:與一個(gè)或多個(gè)適配器建立通信鏈路;所述通信鏈路因故障斷開(kāi)后,向調(diào)度裝置發(fā)送用于服務(wù)器切換的請(qǐng)求消息。
本發(fā)明的另一個(gè)目的是提出一種適配器。
在一些可選的實(shí)施例中,所述適配器用于安裝在工業(yè)設(shè)備上,包括:第一通信鏈路單元,用于與第一服務(wù)器建立第一通信鏈路;
信息接收單元,用于在所述第一通信鏈路因故障斷開(kāi)后,接收網(wǎng)絡(luò)側(cè)調(diào)度裝置發(fā)送的第二服務(wù)器信息;
第二通信鏈路單元,用于與所述第二服務(wù)器建立第二通信鏈路。
本發(fā)明的另一個(gè)目的是提出一種調(diào)度裝置。
在一些可選的實(shí)施例中,所述調(diào)度裝置包括:信息獲取單元,用于獲得多個(gè)服務(wù)器的狀態(tài)信息;選擇單元,用于選擇可用服務(wù)器;所述選擇單元在所述調(diào)度裝置發(fā)現(xiàn)第一服務(wù)器狀態(tài)異常后被啟動(dòng);信息發(fā)送單元,用于將所述可用服務(wù)器的信息發(fā)送給部分或全部與所述第一服務(wù)器建立通信鏈路的適配器;所述第一服務(wù)器為所述多個(gè)服務(wù)器中的一個(gè)。
在一些可選的實(shí)施例中,所述調(diào)度裝置包括:消息接收單元,用于接收用于服務(wù)器切換的請(qǐng)求消息;選擇單元,用于選擇可用服務(wù)器;信息發(fā)送單元,用于將所述可用服務(wù)器的信息發(fā)送給一個(gè)或多個(gè)適配器;所述一個(gè)或多個(gè)適配器與第一服務(wù)器之間的通信鏈路因故障斷開(kāi)。本發(fā)明的另一個(gè)目的是提出一種服務(wù)器。
在一些可選的實(shí)施例中,所述服務(wù)器包括:通信單元,用于與一個(gè)或多個(gè)適配器建立通信鏈路;切換請(qǐng)求單元,用于在所述通信鏈路因故障斷開(kāi)后,向調(diào)度裝置發(fā)送用于服務(wù)器切換的請(qǐng)求消息。
為了上述以及相關(guān)的目的,一個(gè)或多個(gè)實(shí)施例包括后面將詳細(xì)說(shuō)明并在權(quán)利要求中特別指出的特征。下面的說(shuō)明以及附圖詳細(xì)說(shuō)明某些示例性方面,并且其指示的僅僅是各個(gè)實(shí)施例的原則可以利用的各種方式中的一些方式。其它的益處和新穎性特征將隨著下面的詳細(xì)說(shuō)明結(jié)合附圖考慮而變得明顯,所公開(kāi)的實(shí)施例是要包括所有這些方面以及它們的等同。
附圖說(shuō)明
圖1是一種可選的用于切換服務(wù)器的系統(tǒng)示意圖;
圖2是一種可選的用于切換服務(wù)器的方法流程示意圖;
圖3是另一種可選的用于切換服務(wù)器的方法流程示意圖;
圖4是另一種可選的用于切換服務(wù)器的方法流程示意圖;
圖5是另一種可選的用于切換服務(wù)器的方法流程示意圖;
圖6是另一種可選的用于切換服務(wù)器的方法流程示意圖;
圖7是另一種可選的用于切換服務(wù)器的方法流程示意圖;
圖8是一種可選的適配器結(jié)構(gòu)示意結(jié)構(gòu);
圖9是一種可選的調(diào)度裝置結(jié)構(gòu)示意結(jié)構(gòu);
圖10是另一種可選的調(diào)度裝置結(jié)構(gòu)示意結(jié)構(gòu);
圖11是一種可選的服務(wù)器結(jié)構(gòu)示意結(jié)構(gòu)。
具體實(shí)施方式
以下描述和附圖充分地示出本發(fā)明的具體實(shí)施方案,以使本領(lǐng)域的技術(shù)人員能夠?qū)嵺`它們。其他實(shí)施方案可以包括結(jié)構(gòu)的、邏輯的、電氣的、過(guò)程的以及其他的改變。實(shí)施例僅代表可能的變化。除非明確要求,否則單獨(dú)的部件和功能是可選的,并且操作的順序可以變化。一些實(shí)施方案的部分和特征可以被包括在或替換其他實(shí)施方案的部分和特征。本發(fā)明的實(shí)施方案的范圍包括權(quán)利要求書(shū)的整個(gè)范圍,以及權(quán)利要求書(shū)的所有可獲得的等同物。在本文中,本發(fā)明的這些實(shí)施方案可以被單獨(dú)地或總地用術(shù)語(yǔ)“發(fā)明”來(lái)表示,這僅僅是為了方便,并且如果事實(shí)上公開(kāi)了超過(guò)一個(gè)的發(fā)明,不是要自動(dòng)地限制該應(yīng)用的范圍為任何單個(gè)發(fā)明或發(fā)明構(gòu)思。
實(shí)現(xiàn)服務(wù)器切換的方法可以根據(jù)不同的需求和不同的場(chǎng)景而具體設(shè)計(jì),并沒(méi)有常規(guī)技術(shù)手段。
圖1示出一種可選的用于切換服務(wù)器的系統(tǒng),該可選的系統(tǒng)中包括調(diào)度裝置10、服務(wù)器20和工業(yè)設(shè)備30。每一工業(yè)設(shè)備30上都安裝有適配器,通過(guò)適配器與服務(wù)器20建立通信鏈路進(jìn)行通信。每一服務(wù)器20與多個(gè)工業(yè)設(shè)備30進(jìn)行通信,并與調(diào)度設(shè)備10進(jìn)行通信。調(diào)度裝置與多個(gè)服務(wù)器20通信,獲得多個(gè)服務(wù)器20的狀態(tài)信息,并能夠在某一服務(wù)器20發(fā)生故障時(shí),從其它服務(wù)器中選擇可用服務(wù)器,并將可用服務(wù)器的信息發(fā)送給相關(guān)的工業(yè)設(shè)備30,使得相關(guān)的工業(yè)設(shè)備30能夠從發(fā)生故障的服務(wù)器切換到可用服務(wù)器,從而繼續(xù)與網(wǎng)絡(luò)側(cè)進(jìn)行通信。
在一些應(yīng)用場(chǎng)景中,服務(wù)器20可以是公有云服務(wù)器,調(diào)度裝置可以被安裝在私有云的服務(wù)器上,或者也可以是一個(gè)獨(dú)立的設(shè)備,也可以是私有云服務(wù)器本身。
圖2示出一種用于切換服務(wù)器的可選方法流程。
在該可選實(shí)施例中,工業(yè)設(shè)備與網(wǎng)絡(luò)側(cè)服務(wù)器建立通信鏈路進(jìn)行通信(步驟S101),服務(wù)器發(fā)送其狀態(tài)信息給調(diào)度裝置(步驟S102)。服務(wù)器發(fā)生故障(步驟S103),工業(yè)設(shè)備與服務(wù)器之間的通信鏈路將會(huì)斷開(kāi)(步驟S104)。工業(yè)設(shè)備將無(wú)法與服務(wù)器繼續(xù)通信。工業(yè)設(shè)備與原服務(wù)器之間的通信鏈路斷開(kāi)后將與其它備用服務(wù)器嘗試連接。如果工業(yè)設(shè)備與備用服務(wù)器連接成功,則切換到備用服務(wù)器。工業(yè)設(shè)備與備用服務(wù)器連接失敗(步驟S105),則發(fā)送用于服務(wù)器切換的請(qǐng)求消息給調(diào)度裝置(S106)。調(diào)度裝置收到工業(yè)設(shè)備發(fā)送的請(qǐng)求消息后,選擇可用的服務(wù)器,并將可用服務(wù)器的信息發(fā)送給工業(yè)設(shè)備(步驟S107)。工業(yè)設(shè)備收到調(diào)度設(shè)備發(fā)送的信息后,與可用服務(wù)器建立通信鏈路進(jìn)行通信(步驟S108)。
在另一些可選實(shí)施例中,工業(yè)設(shè)備與網(wǎng)絡(luò)側(cè)服務(wù)器建立通信鏈路進(jìn)行通信,服務(wù)器發(fā)送其狀態(tài)信息給調(diào)度裝置。服務(wù)器發(fā)生故障,工業(yè)設(shè)備與服務(wù)器之間的通信鏈路將會(huì)斷開(kāi),工業(yè)設(shè)備將無(wú)法與服務(wù)器繼續(xù)通信。這種情況下,工業(yè)設(shè)備發(fā)送用于服務(wù)器切換的請(qǐng)求消息給調(diào)度裝置。調(diào)度裝置收到工業(yè)設(shè)備發(fā)送的請(qǐng)求消息后,選擇可用的服務(wù)器,并將可用服務(wù)器的信息發(fā)送給工業(yè)設(shè)備。工業(yè)設(shè)備收到調(diào)度設(shè)備發(fā)送的信息后,與可用服務(wù)器建立通信鏈路進(jìn)行通信。
圖3示出另一種用于切換服務(wù)器的可選方法流程。
在該可選實(shí)施例中,工業(yè)設(shè)備與網(wǎng)絡(luò)側(cè)服務(wù)器建立通信鏈路進(jìn)行通信(步驟S101),服務(wù)器發(fā)送其狀態(tài)信息給調(diào)度裝置(步驟S102)。服務(wù)器發(fā)生故障(步驟S103),工業(yè)設(shè)備與服務(wù)器之間的通信鏈路將會(huì)斷開(kāi)(步驟S104),工業(yè)設(shè)備將無(wú)法與服務(wù)器繼續(xù)通信。服務(wù)器發(fā)送狀態(tài)異常信息給調(diào)度裝置(步驟S302),調(diào)度裝置收到服務(wù)器發(fā)送的信息后會(huì)得知服務(wù)器發(fā)生故障。工業(yè)設(shè)備發(fā)送用于服務(wù)器切換的請(qǐng)求消息給調(diào)度裝置(S106)。調(diào)度裝置收到工業(yè)設(shè)備發(fā)送的請(qǐng)求消息后,選擇可用的服務(wù)器,并將可用服務(wù)器的信息發(fā)送給工業(yè)設(shè)備(步驟S107)。工業(yè)設(shè)備收到調(diào)度設(shè)備發(fā)送的信息后,與可用服務(wù)器建立通信鏈路進(jìn)行通信(步驟S108)。
上述可選實(shí)施例中,服務(wù)器可以周期性發(fā)送其狀態(tài)信息給調(diào)度裝置,或者,可通過(guò)事件觸發(fā)發(fā)送其狀態(tài)信息給調(diào)度裝置?;蛘?,服務(wù)器也可以在收到調(diào)度裝置發(fā)送的查詢消息后,發(fā)送其狀態(tài)信息給調(diào)度裝置,以響應(yīng)調(diào)度裝置的查詢。
相應(yīng)地,調(diào)度裝置獲得服務(wù)器狀態(tài)信息的方式包括但不限于:通過(guò)周期性上報(bào)的方式獲得各服務(wù)器的狀態(tài)信息;或者,通過(guò)事件觸發(fā)上報(bào)的方式獲得各服務(wù)器的狀態(tài)信息;或者,通過(guò)查詢響應(yīng)的方式獲得各服務(wù)器的狀態(tài)信息;或者,通過(guò)檢測(cè)各服務(wù)器的狀態(tài)獲得各服務(wù)器的狀態(tài)信息。
圖4示出另一種用于切換服務(wù)器的可選方法流程。
在該可選實(shí)施例中,工業(yè)設(shè)備與網(wǎng)絡(luò)側(cè)服務(wù)器建立通信鏈路進(jìn)行通信(步驟S101),調(diào)度裝置檢測(cè)服務(wù)器的狀態(tài)(步驟S202)。服務(wù)器發(fā)生故障(步驟S103),調(diào)度裝置發(fā)現(xiàn)服務(wù)器發(fā)生故障(步驟S203)。工業(yè)設(shè)備與服務(wù)器之間的通信鏈路將會(huì)斷開(kāi)(步驟S104),工業(yè)設(shè)備將無(wú)法與服務(wù)器繼續(xù)通信。工業(yè)設(shè)備與原服務(wù)器之間的通信鏈路斷開(kāi)后將與其它備用服務(wù)器嘗試連接。如果工業(yè)設(shè)備與備用服務(wù)器連接成功,則切換到備用服務(wù)器。工業(yè)設(shè)備與備用服務(wù)器連接失敗(步驟S105),則發(fā)送用于服務(wù)器切換的請(qǐng)求消息給調(diào)度裝置(S106)。調(diào)度裝置收到工業(yè)設(shè)備發(fā)送的請(qǐng)求消息后,選擇可用的服務(wù)器,并將可用服務(wù)器的信息發(fā)送給工業(yè)設(shè)備(步驟S107)。工業(yè)設(shè)備收到調(diào)度設(shè)備發(fā)送的信息后,與可用服務(wù)器建立通信鏈路進(jìn)行通信(步驟S108)。
圖5示出另一種用于切換服務(wù)器的可選方法流程。
在該可選實(shí)施例中,工業(yè)設(shè)備與網(wǎng)絡(luò)側(cè)服務(wù)器建立通信鏈路進(jìn)行通信(步驟S101),服務(wù)器發(fā)送其狀態(tài)信息給調(diào)度裝置(步驟S102)。服務(wù)器發(fā)生故障(步驟S103),工業(yè)設(shè)備與服務(wù)器之間的通信鏈路將會(huì)斷開(kāi)(步驟S104),工業(yè)設(shè)備將無(wú)法與服務(wù)器繼續(xù)通信。服務(wù)器發(fā)送狀態(tài)異常信息給調(diào)度裝置(步驟S302),調(diào)度裝置收到服務(wù)器發(fā)送的信息后會(huì)得知服務(wù)器發(fā)生故障。調(diào)度裝置將主動(dòng)選擇可用的服務(wù)器,并將可用服務(wù)器的信息發(fā)送給工業(yè)設(shè)備(步驟S107)。工業(yè)設(shè)備收到調(diào)度設(shè)備發(fā)送的信息后,與可用服務(wù)器建立通信鏈路進(jìn)行通信(步驟S108)。
圖6示出另一種用于切換服務(wù)器的可選方法流程。
在該可選實(shí)施例中,工業(yè)設(shè)備與網(wǎng)絡(luò)側(cè)服務(wù)器建立通信鏈路進(jìn)行通信(步驟S101),調(diào)度裝置檢測(cè)服務(wù)器的狀態(tài)(步驟S202)。服務(wù)器發(fā)生故障(步驟S103),調(diào)度裝置發(fā)現(xiàn)服務(wù)器發(fā)生故障(步驟S203)。工業(yè)設(shè)備與服務(wù)器之間的通信鏈路將會(huì)斷開(kāi)(步驟S104),工業(yè)設(shè)備將無(wú)法與服務(wù)器繼續(xù)通信。調(diào)度裝置發(fā)現(xiàn)服務(wù)器發(fā)生故障后將主動(dòng)選擇可用的服務(wù)器,并將可用服務(wù)器的信息發(fā)送給工業(yè)設(shè)備(步驟S107)。工業(yè)設(shè)備收到調(diào)度設(shè)備發(fā)送的信息后,與可用服務(wù)器建立通信鏈路進(jìn)行通信(步驟S108)。
圖7示出另一種用于切換服務(wù)器的可選方法流程。
在該可選實(shí)施例中,工業(yè)設(shè)備與網(wǎng)絡(luò)側(cè)服務(wù)器建立通信鏈路進(jìn)行通信(步驟S101),服務(wù)器發(fā)送其狀態(tài)信息給調(diào)度裝置(步驟S102)。服務(wù)器發(fā)生故障(步驟S103),工業(yè)設(shè)備與服務(wù)器之間的通信鏈路將會(huì)斷開(kāi)(步驟S104),工業(yè)設(shè)備將無(wú)法與服務(wù)器繼續(xù)通信。服務(wù)器發(fā)送狀態(tài)異常信息給調(diào)度裝置(步驟S302),調(diào)度裝置收到服務(wù)器發(fā)送的信息后會(huì)得知服務(wù)器發(fā)生故障。服務(wù)器發(fā)送用于服務(wù)器切換的請(qǐng)求消息給調(diào)度裝置(S303)。調(diào)度裝置收到服務(wù)器發(fā)送的請(qǐng)求消息后,選擇可用的服務(wù)器,并將可用服務(wù)器的信息發(fā)送給工業(yè)設(shè)備(步驟S107)。工業(yè)設(shè)備收到調(diào)度設(shè)備發(fā)送的信息后,與可用服務(wù)器建立通信鏈路進(jìn)行通信(步驟S108)。
在一些可選實(shí)施例中,所述用于服務(wù)器切換的方法被用于安裝在工業(yè)設(shè)備上的適配器,該方法包括:與第一服務(wù)器建立第一通信鏈路;所述第一通信鏈路因故障斷開(kāi)后,接收網(wǎng)絡(luò)側(cè)調(diào)度裝置發(fā)送的第二服務(wù)器信息;并與所述第二服務(wù)器建立第二通信鏈路。其中,所述第一通信鏈路發(fā)生故障斷開(kāi)后還包括:嘗試與備用服務(wù)器建立通信鏈路;與備用服務(wù)器建立通信鏈路失敗后向所述網(wǎng)絡(luò)側(cè)調(diào)度裝置發(fā)送用于服務(wù)器切換的請(qǐng)求消息,并等待接收所述網(wǎng)絡(luò)側(cè)調(diào)度裝置發(fā)送的第二服務(wù)器信息。
在另一些可選實(shí)施例中,所述用于服務(wù)器切換的方法被用于網(wǎng)絡(luò)側(cè)調(diào)度裝置,該方法包括:獲得多個(gè)服務(wù)器的狀態(tài)信息,所述狀態(tài)消息包括各服務(wù)器的工作狀態(tài)、與各服務(wù)器通信的工業(yè)設(shè)備數(shù)量、與各服務(wù)器通信的各工業(yè)設(shè)備的ID;發(fā)現(xiàn)第一服務(wù)器狀態(tài)異常后,選擇可用服務(wù)器;將所述可用服務(wù)器的信息發(fā)送給部分或全部與所述第一服務(wù)器建立通信鏈路的適配器;所述第一服務(wù)器為所述多個(gè)服務(wù)器中的一個(gè)。其中,選擇可用服務(wù)器前還包括:接收用于服務(wù)器切換的請(qǐng)求消息。
在另一些可選實(shí)施例中,所述用于服務(wù)器切換的方法被用于網(wǎng)絡(luò)側(cè)調(diào)度裝置,該方法包括:獲得多個(gè)服務(wù)器的狀態(tài)信息,所述狀態(tài)消息包括各服務(wù)器的工作狀態(tài)、與各服務(wù)器通信的工業(yè)設(shè)備數(shù)量、與各服務(wù)器通信的各工業(yè)設(shè)備的ID;發(fā)現(xiàn)第一服務(wù)器狀態(tài)異常后,選擇可用服務(wù)器;將所述可用服務(wù)器的信息發(fā)送給部分或全部與所述第一服務(wù)器建立通信鏈路的適配器;所述第一服務(wù)器為所述多個(gè)服務(wù)器中的一個(gè)。其中,選擇可用服務(wù)器前還包括:接收用于服務(wù)器切換的請(qǐng)求消息;所述用于服務(wù)器切換的請(qǐng)求消息來(lái)自所述第一服務(wù)器,或者,來(lái)自部分或全部與所述第一服務(wù)器建立通信鏈路的適配器。
在另一些可選實(shí)施例中,所述用于服務(wù)器切換的方法被用于網(wǎng)絡(luò)側(cè)調(diào)度裝置,該方法包括:接收用于服務(wù)器切換的請(qǐng)求消息,選擇可用服務(wù)器;將所述可用服務(wù)器的信息發(fā)送給一個(gè)或多個(gè)適配器;所述一個(gè)或多個(gè)適配器與第一服務(wù)器之間的通信鏈路因故障斷開(kāi),所述用于服務(wù)器切換的請(qǐng)求消息來(lái)自所述第一服務(wù)器,或者,來(lái)自所述一個(gè)或多個(gè)適配器。
在另一些可選實(shí)施例中,所述用于服務(wù)器切換的方法被用于網(wǎng)絡(luò)側(cè)調(diào)度裝置,該方法包括:接收用于服務(wù)器切換的請(qǐng)求消息,選擇可用服務(wù)器;將所述可用服務(wù)器的信息發(fā)送給一個(gè)或多個(gè)適配器;所述一個(gè)或多個(gè)適配器與第一服務(wù)器之間的通信鏈路因故障斷開(kāi),所述用于服務(wù)器切換的請(qǐng)求消息來(lái)自所述第一服務(wù)器,或者,來(lái)自所述一個(gè)或多個(gè)適配器。其中,選擇可用服務(wù)器前還包括獲得多個(gè)服務(wù)器的狀態(tài)信息,所述第一服務(wù)器為所述多個(gè)服務(wù)器中的一個(gè),所述狀態(tài)信息包括各服務(wù)器的工作狀態(tài)、與各服務(wù)器通信的工業(yè)設(shè)備數(shù)量、與各服務(wù)器通信的各工業(yè)設(shè)備的ID。
上述各可選實(shí)施例中,所述獲得多個(gè)服務(wù)器的狀態(tài)信息,包括:通過(guò)周期性上報(bào)的方式獲得所述多個(gè)服務(wù)器的狀態(tài)信息;或者,通過(guò)事件觸發(fā)上報(bào)的方式獲得所述多個(gè)服務(wù)器的狀態(tài)信息;或者,通過(guò)查詢響應(yīng)的方式獲得所述多個(gè)服務(wù)器的狀態(tài)信息;或者,通過(guò)檢測(cè)所述多個(gè)服務(wù)器的狀態(tài)獲得所述多個(gè)服務(wù)器的狀態(tài)信息。
上述各可選實(shí)施例中,根據(jù)負(fù)荷均衡原則選擇可用服務(wù)器,包括采用動(dòng)態(tài)調(diào)整法或負(fù)荷均衡算法選擇可用服務(wù)器。
動(dòng)態(tài)調(diào)整法,會(huì)根據(jù)一個(gè)服務(wù)器當(dāng)前運(yùn)行的狀態(tài)和所有服務(wù)器運(yùn)行狀態(tài)的平均值進(jìn)行對(duì)比,如果該服務(wù)器當(dāng)前運(yùn)行狀態(tài)差于所有服務(wù)器運(yùn)行狀態(tài)的平均值,則減少與該服務(wù)器連接的適配器數(shù)量。如果該服務(wù)器當(dāng)前運(yùn)行狀態(tài)優(yōu)于所有服務(wù)器運(yùn)行狀態(tài)的平均值,則增加與該服務(wù)器連接的適配器數(shù)量,直到達(dá)到一個(gè)總體平衡。
所述根據(jù)負(fù)荷均衡原則選擇可用服務(wù)器為采用動(dòng)態(tài)調(diào)整法選擇可用服務(wù)器。該方案的好處在于可以動(dòng)態(tài)平衡其它服務(wù)器的處理能力。一種可選的采用動(dòng)態(tài)調(diào)整法選擇可用服務(wù)器,包括:選擇當(dāng)前運(yùn)行狀態(tài)優(yōu)于所有服務(wù)器運(yùn)行狀態(tài)的平均值的服務(wù)器作為可用服務(wù)器。
所述根據(jù)負(fù)荷均衡原則選擇可用服務(wù)器為采用均衡算法選擇可用服務(wù)器。均衡算法的好處在于主要解決將請(qǐng)求如何發(fā)送給后端服務(wù)。均衡算法包括:隨機(jī)(random)算法、輪訓(xùn)(round-robin)算法、一致哈希(consistent-hash)算法或主備(master-slave)算法。
所述根據(jù)負(fù)荷均衡原則選擇可用服務(wù)器為采用主備算法選擇可用服務(wù)器。該算法能夠?qū)崿F(xiàn)將適配器盡量放到某個(gè)服務(wù)器上,而其他服務(wù)器則用來(lái)做備份,如果出現(xiàn)問(wèn)題就切換到另外的服務(wù)器上。為保證各適配器提交數(shù)據(jù)的時(shí)序性,可以將適配器都盡量連接到某臺(tái)服務(wù)器上,當(dāng)這臺(tái)服務(wù)器出現(xiàn)問(wèn)題,再用其他的服務(wù)器。
采用主備算法時(shí),可以先對(duì)每臺(tái)服務(wù)器的IP端口(IP:Port)做哈希(hash)變換,然后按從大到小的順序排序,第一個(gè)就是主服務(wù)器,將所有的適配器都連接到該主服務(wù)器。如果第一個(gè)出現(xiàn)問(wèn)題,再取第二個(gè)作為主服務(wù)器。
一種可選的采用主備算法選擇可用服務(wù)器,包括:按預(yù)先設(shè)定的順序選擇排序最大的服務(wù)器為可用服務(wù)器。其中,按各服務(wù)器IP端口的哈希變換值從大到小對(duì)各服務(wù)器順序排序。
在另一些可選實(shí)施例中,所述用于服務(wù)器切換的方法被用于服務(wù)器,該方法包括:與一個(gè)或多個(gè)適配器建立通信鏈路;所述通信鏈路因故障斷開(kāi)后,向調(diào)度裝置發(fā)送用于服務(wù)器切換的請(qǐng)求消息。其中,還包括周期性向所述調(diào)度裝置發(fā)送本設(shè)備的狀態(tài)信息;所述狀態(tài)信息包括本設(shè)備的工作狀態(tài)、與本設(shè)備通信的工業(yè)設(shè)備數(shù)量、與本設(shè)備通信的各工業(yè)設(shè)備的ID。
在另一些可選實(shí)施例中,所述用于服務(wù)器切換的方法被用于服務(wù)器,該方法包括:與一個(gè)或多個(gè)適配器建立通信鏈路;所述通信鏈路因故障斷開(kāi)后,向調(diào)度裝置發(fā)送用于服務(wù)器切換的請(qǐng)求消息。其中,所述通信鏈路因故障斷開(kāi)后,還包括向所述調(diào)度裝置發(fā)送本設(shè)備狀態(tài)異常的信息。
本文還公開(kāi)一種適配器,被用于安裝在工業(yè)設(shè)備上。
圖8示出適配器一種可選的示意結(jié)構(gòu),該可選的適配器結(jié)構(gòu)包括:用于與第一服務(wù)器建立第一通信鏈路的第一通信鏈路單元301,用于在所述第一通信鏈路因故障斷開(kāi)后接收網(wǎng)絡(luò)側(cè)調(diào)度裝置發(fā)送的第二服務(wù)器信息的信息接收單元302,和用于與所述第二服務(wù)器建立第二通信鏈路第二通信鏈路單元303。其中,還包括:第三通信鏈路單元,用于與備用服務(wù)器建立通信鏈路;和,請(qǐng)求發(fā)送單元,用于在所述第三通信鏈路單元與備用服務(wù)器建立通信鏈路失敗后向所述網(wǎng)絡(luò)側(cè)調(diào)度裝置發(fā)送用于服務(wù)器切換的請(qǐng)求消息。
圖9示出調(diào)度裝置一種可選的示意結(jié)構(gòu),該可選的調(diào)度裝置結(jié)構(gòu)包括:用于獲得多個(gè)服務(wù)器的狀態(tài)信息的信息獲取單元304,用于選擇可用服務(wù)器的選擇單元305,所述選擇單元305在所述調(diào)度裝置發(fā)現(xiàn)第一服務(wù)器狀態(tài)異常后被啟動(dòng);和,信息發(fā)送單元306,用于將所述可用服務(wù)器的信息發(fā)送給一個(gè)或多個(gè)與所述第一服務(wù)器建立通信鏈路的適配器;所述第一服務(wù)器為所述多個(gè)服務(wù)器中的一個(gè)。其中,還包括:消息接收單元,用于接收用于服務(wù)器切換的請(qǐng)求消息。
圖10示出調(diào)度裝置另一種可選的示意結(jié)構(gòu),該可選的調(diào)度裝置結(jié)構(gòu)包括:用于接收用于服務(wù)器切換的請(qǐng)求消息的消息接收單元307,選擇單元305,和信息發(fā)送單元306。其中,所述一個(gè)或多個(gè)適配器與第一服務(wù)器之間的通信鏈路因故障斷開(kāi)。
選擇單元305根據(jù)負(fù)荷均衡原則選擇可用服務(wù)器。一種可選的方式是,選擇單元305采用動(dòng)態(tài)調(diào)整法或負(fù)荷均衡算法選擇可用服務(wù)器。
選擇單元305采用動(dòng)態(tài)調(diào)整法選擇可用服務(wù)器。該方案的好處在于可以動(dòng)態(tài)平衡其它服務(wù)器的處理能力。一種可選的實(shí)現(xiàn)方式是,選擇單元305選擇當(dāng)前運(yùn)行狀態(tài)優(yōu)于所有服務(wù)器運(yùn)行狀態(tài)的平均值的服務(wù)器作為可用服務(wù)器。
選擇單元305采用主備算法選擇可用服務(wù)器。為保證各適配器提交數(shù)據(jù)的時(shí)序性,可以將適配器都盡量連接到某臺(tái)服務(wù)器上,當(dāng)這臺(tái)服務(wù)器出現(xiàn)問(wèn)題,再用其他的服務(wù)器。一種可選的實(shí)現(xiàn)方式是,選擇單元305按預(yù)先設(shè)定的順序選擇排序最大的服務(wù)器為可用服務(wù)器。其中,按各服務(wù)器IP端口的哈希變換值從大到小對(duì)各服務(wù)器順序排序。
圖11示出服務(wù)器一種可選的示意結(jié)構(gòu),該可選的服務(wù)器結(jié)構(gòu)包括:用于與一個(gè)或多個(gè)適配器建立通信鏈路的通信單元308,用于在所述通信鏈路因故障斷開(kāi)后向調(diào)度裝置發(fā)送用于服務(wù)器切換的請(qǐng)求消息的切換請(qǐng)求單元309。其中,還包括:狀態(tài)發(fā)送單元,用于向所述調(diào)度裝置發(fā)送本設(shè)備的狀態(tài)信息;所述狀態(tài)信息包括本設(shè)備的工作狀態(tài)、與本設(shè)備通信的工業(yè)設(shè)備數(shù)量、與本設(shè)備通信的各工業(yè)設(shè)備的ID。其中,所述通信鏈路因故障斷開(kāi)后,所述狀態(tài)發(fā)送單元還用于向所述調(diào)度裝置發(fā)送本設(shè)備狀態(tài)異常的信息。
本發(fā)明的說(shuō)明書(shū)和權(quán)利要求書(shū)及附圖中的術(shù)語(yǔ)“第一”、“第二”、“第三”“第四”等(如果存在)是用于區(qū)別類似的對(duì)象,而不必用于描述特定的順序或先后次序。應(yīng)該理解這樣使用的數(shù)據(jù)在適當(dāng)情況下可以互換,以便這里描述的實(shí)施例能夠以除了在這里圖示或描述的內(nèi)容以外的順序?qū)嵤?。此外,術(shù)語(yǔ)“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過(guò)程、方法、系統(tǒng)、產(chǎn)品或設(shè)備不必限于清楚地列出的那些步驟或單元,而是可包括沒(méi)有清楚地列出的或?qū)τ谶@些過(guò)程、方法、產(chǎn)品或設(shè)備固有的其它步驟或單元。
本領(lǐng)域技術(shù)人員還應(yīng)當(dāng)理解,結(jié)合本文的實(shí)施例描述的各種說(shuō)明性的邏輯框、模塊、電路和算法步驟均可以實(shí)現(xiàn)成電子硬件、計(jì)算機(jī)軟件或其組合。為了清楚地說(shuō)明硬件和軟件之間的可交換性,上面對(duì)各種說(shuō)明性的部件、框、模塊、電路和步驟均圍繞其功能進(jìn)行了一般地描述。至于這種功能是實(shí)現(xiàn)成硬件還是實(shí)現(xiàn)成軟件,取決于特定的應(yīng)用和對(duì)整個(gè)系統(tǒng)所施加的設(shè)計(jì)約束條件。熟練的技術(shù)人員可以針對(duì)每個(gè)特定應(yīng)用,以變通的方式實(shí)現(xiàn)所描述的功能,但是,這種實(shí)現(xiàn)決策不應(yīng)解釋為背離本公開(kāi)的保護(hù)范圍。