專利名稱:包括聯(lián)合模型的軟件服務(wù)基礎(chǔ)結(jié)構(gòu)和方法
技術(shù)領(lǐng)域:
本文公開的主旨涉及分布式系統(tǒng),并且具體地涉及存儲(chǔ),提供對(duì)關(guān)于分布式系統(tǒng)中的元件的信息的訪問(wèn)。
背景技術(shù):
采用軟件服務(wù)基礎(chǔ)結(jié)構(gòu)(SSI)的系統(tǒng)利用多個(gè)共享服務(wù)器,其向計(jì)算機(jī)和其它裝置提供資源、軟件和數(shù)據(jù)。這樣的系統(tǒng)可以包括若干需要訪問(wèn)關(guān)于真實(shí)的或虛擬的元件(其可受SSI影響)的信息的應(yīng)用。例如,SSI可以向控制機(jī)器的控制系統(tǒng)提供服務(wù)。其中包含這些或者這些構(gòu)成其一部分的SSI和系統(tǒng)可以是公共的、私有的或其組合。SSI是模型驅(qū)動(dòng)型的。如此,系統(tǒng)中的硬件元件可以由特定的部件信息模型(CIM) 限定。CIM可以用于將系統(tǒng)中的硬件元件映射到軟件對(duì)象。然而,不同的元件可以由不同的信息(即,不同的CIM)限定這一事實(shí)可能需要依靠所謂的“聯(lián)合模型”,其向用于描述系統(tǒng)中元件的不同的CIM的全部提供公用接口。在初始化之后,由SSI中的一個(gè)或多個(gè)應(yīng)用檢索、更新、增加或刪除聯(lián)合模型中的數(shù)據(jù)是常見(jiàn)的。從專用于存儲(chǔ)聯(lián)合模型的服務(wù)器請(qǐng)求數(shù)據(jù)并且由專用于存儲(chǔ)聯(lián)合模型的服務(wù)器提供數(shù)據(jù)。
發(fā)明內(nèi)容
根據(jù)本發(fā)明的一個(gè)方面,公開了包括聯(lián)合模型的軟件服務(wù)基礎(chǔ)結(jié)構(gòu)(SSI)。公開了該方面的SSI,其包括多個(gè)應(yīng)用程序、利用這些應(yīng)用程序并且通過(guò)通信網(wǎng)絡(luò)耦合于這些應(yīng)用程序的計(jì)算裝置,以及耦合而配置成從這些多個(gè)應(yīng)用程序接收對(duì)于存儲(chǔ)在聯(lián)合模型中的數(shù)據(jù)的請(qǐng)求并且提供對(duì)這些請(qǐng)求的響應(yīng)的數(shù)據(jù)存儲(chǔ)庫(kù)。該方面的數(shù)據(jù)存儲(chǔ)庫(kù)包括第一和第二目錄服務(wù)器,其每個(gè)包含聯(lián)合模型的副本和控制元件,該控制元件基于第一和第二目錄的使用量將對(duì)于存儲(chǔ)在聯(lián)合模型中的數(shù)據(jù)的請(qǐng)求引導(dǎo)到第一或第二目錄服務(wù)器。根據(jù)本發(fā)明的一個(gè)方面,公開了包括聯(lián)合模型的軟件服務(wù)基礎(chǔ)結(jié)構(gòu)(SSI)。公開了該方面的SSI,其包括多個(gè)應(yīng)用程序、利用這些應(yīng)用程序并且通過(guò)通信網(wǎng)絡(luò)耦合于這些應(yīng)用程序的計(jì)算裝置,以及耦合而配置成從這些多個(gè)應(yīng)用程序接收對(duì)于存儲(chǔ)在聯(lián)合模型中的數(shù)據(jù)的請(qǐng)求并且提供對(duì)這些請(qǐng)求的響應(yīng)的數(shù)據(jù)存儲(chǔ)庫(kù)。該方面的數(shù)據(jù)存儲(chǔ)庫(kù)包括第一和第二目錄服務(wù)器,其每個(gè)包含聯(lián)合模型的副本和控制元件,該控制元件基于向哪里引導(dǎo)先前的請(qǐng)求而將對(duì)于存儲(chǔ)在聯(lián)合模型中的數(shù)據(jù)的請(qǐng)求引導(dǎo)到第一或第二目錄服務(wù)器。這些和其它優(yōu)勢(shì)和特征將通過(guò)下列與附圖結(jié)合來(lái)看的說(shuō)明變得更明顯。
認(rèn)作本發(fā)明的主旨被特別地指出并且在說(shuō)明書結(jié)尾處的權(quán)利要求中清楚地要求保護(hù)。本發(fā)明的前面的和其他特征和優(yōu)勢(shì)通過(guò)下列與附圖結(jié)合來(lái)看的詳細(xì)說(shuō)明是明顯的,這些附圖中圖I是根據(jù)一個(gè)實(shí)施例的軟件服務(wù)基礎(chǔ)結(jié)構(gòu)(SSI)的框圖;以及
圖2圖示可以在圖I中示出的SSI中利用的數(shù)據(jù)存儲(chǔ)庫(kù)。通過(guò)示例參照?qǐng)D,詳細(xì)的說(shuō)明解釋了本發(fā)明的實(shí)施例連同優(yōu)勢(shì)和特征。
具體實(shí)施例方式現(xiàn)在參照?qǐng)D1,圖示了 SSI 100。該SSI 100包括通信網(wǎng)絡(luò)102。該通信網(wǎng)絡(luò)102可以在形成SSI 100的元件中的任何元件之間提供任何類型的通信。該通信網(wǎng)絡(luò)102可以包括用于在客戶端和服務(wù)器之間通信的基于因特網(wǎng)協(xié)議(IP)的網(wǎng)絡(luò)??蛻舳丝梢岳缭隈詈嫌谕ㄐ啪W(wǎng)絡(luò)102的計(jì)算裝置104上操作并且可以是瘦或胖客戶端。在一些情況下,通信網(wǎng)絡(luò)102可以采用無(wú)線方式實(shí)現(xiàn),例如,使用例如WiFi、WiMax、BLUETOOTH等無(wú)線協(xié)議和技術(shù)。通信網(wǎng)絡(luò)102還可以是實(shí)現(xiàn)作為局域網(wǎng)、廣域網(wǎng)、城域網(wǎng)、因特網(wǎng)或其它相似類型的網(wǎng)絡(luò)的分組交換式網(wǎng)絡(luò)。通信網(wǎng)絡(luò)102可以是蜂窩通信網(wǎng)絡(luò)、固定無(wú)線網(wǎng)絡(luò)、無(wú)線局域網(wǎng)(LAN)、無(wú)線廣域網(wǎng)(WAN)、個(gè)人區(qū)域網(wǎng)絡(luò)(PAN)、虛擬專用網(wǎng)絡(luò)(VPN)、內(nèi)聯(lián)網(wǎng)或任何其它適合的網(wǎng)絡(luò),并且通信網(wǎng)絡(luò)102可包括用于接收和傳輸信號(hào)的設(shè)備,例如手機(jī)信號(hào)塔(cell tower)、移動(dòng)交換中心、基站和無(wú)線接入點(diǎn)等。當(dāng)然,通信網(wǎng)絡(luò)·102可以是無(wú)數(shù)互連網(wǎng)絡(luò)的代表。SSI 100還包括計(jì)算裝置104。計(jì)算裝置104可以是,例如控制機(jī)器或如由受控機(jī)器105圖示的其它裝置的控制系統(tǒng)。受控機(jī)器105包括若干元件107。這些元件107可以是無(wú)源或有源的,并且如此,可以報(bào)告值和狀態(tài)指示、接收指令或其任何組合。例如,這些元件107可以是閥或傳感器。在圖I中圖示的SSI 100包括一個(gè)或多個(gè)應(yīng)用程序106a、106b. .. 106η (統(tǒng)稱為應(yīng)用程序106),其操作地耦合于通信網(wǎng)絡(luò)102。這些應(yīng)用程序106可以靠服務(wù)器或其它計(jì)算裝置支持。在操作中,應(yīng)用程序106需要關(guān)于SSI 100中的計(jì)算裝置104、受控機(jī)器105、元件107或其它元件(例如裝置)的信息或改變與SSI 100中的計(jì)算裝置104、受控機(jī)器105、元件107或其它元件(例如裝置)有關(guān)的信息。如此,SSI 100包括數(shù)據(jù)存儲(chǔ)庫(kù)108,其操作地耦合于通信網(wǎng)絡(luò)102并且存儲(chǔ)關(guān)于計(jì)算裝置104、受控機(jī)器105、元件107或其他裝置中的一些或全部的信息。應(yīng)該理解還可對(duì)圖I中未圖示的其它裝置或程序提供對(duì)數(shù)據(jù)存儲(chǔ)庫(kù)108的訪問(wèn)。在一個(gè)實(shí)施例中,數(shù)據(jù)存儲(chǔ)庫(kù)108包括一個(gè)或多個(gè)服務(wù)器110a、110b. . . I IOn或存儲(chǔ)關(guān)于SSI 100中的裝置或程序中的一些或全部的信息的其它存儲(chǔ)裝置。在一個(gè)實(shí)施例中,服務(wù)器110是目錄服務(wù)器。在這樣的實(shí)施例中,服務(wù)器110可以是輕量級(jí)目錄訪問(wèn)協(xié)議(LDAP)服務(wù)器。在圖I中圖示的SSI 100大體上可以如下面描述的那樣操作。然而,應(yīng)該理解操作說(shuō)明僅僅是示例并且SSI 100可以采用不同的方式操作而不背離本文公開的實(shí)施例的范圍。為了控制受控機(jī)器105,計(jì)算裝置104例如可以調(diào)用應(yīng)用程序106中的一個(gè)或多個(gè)來(lái)使例如機(jī)器的特定閥打開或關(guān)閉。一般如在SSI系統(tǒng)中的那樣,選擇的應(yīng)用程序106可不包括閥本身或與之有關(guān)的值的說(shuō)明。相反,它從數(shù)據(jù)存儲(chǔ)庫(kù)108請(qǐng)求與閥通信所需要的信息(例如IP地址、型號(hào)、序列號(hào)、控制字位模式、狀態(tài)值和位置等)。來(lái)自數(shù)據(jù)存儲(chǔ)庫(kù)108的響應(yīng)可以包括對(duì)于閥的部件信息模型(CIM)中的全部或一些。在一些情況下,應(yīng)用程序106具有改變與受控機(jī)器105或元件107或兩者有關(guān)的狀態(tài)值的能力。在這些情況的任何情況下,對(duì)于特定元件的CIM還可以包括電流狀態(tài)值。在這樣的情況下,數(shù)據(jù)存儲(chǔ)庫(kù)108 (當(dāng)可能包括多個(gè)服務(wù)器時(shí))代表應(yīng)用程序106中的全部的公共數(shù)據(jù)存儲(chǔ)位置。當(dāng)然,數(shù)據(jù)存儲(chǔ)庫(kù)108可以包括用于保證存儲(chǔ)在其中的數(shù)據(jù)的一致性的系統(tǒng)和方法。圖2圖示數(shù)據(jù)存儲(chǔ)庫(kù)108的示例。圖示的數(shù)據(jù)存儲(chǔ)庫(kù)108包括耦合于第一服務(wù)器204和第二服務(wù)器206的控制元件202。該第一和第二服務(wù)器204、206可以是目錄服務(wù)器,并且具體是LDAP服務(wù)器。在一個(gè)實(shí)施例中,數(shù)據(jù)存儲(chǔ)庫(kù)106包括不止圖示的兩個(gè)服務(wù)器204、206。實(shí)際上,本發(fā)明的技術(shù)效果是目錄服務(wù)器204、206的數(shù)量可以增加或減少而不需要控制元件202的明顯的(或任何)重新配置。在一個(gè)實(shí)施例中,控制元件202可以實(shí)現(xiàn)作為代理服務(wù)器。在一個(gè)實(shí)施例中,并且如圖2中的虛線指示的,數(shù)據(jù)存儲(chǔ)庫(kù)106包括備用控制元件208。該備用控制元件208在控制元件202失效的情況下起到熱備份的作用。當(dāng)然,在控制元件202失效的情況下,硬件平衡器210或其它裝置可以包括在這樣的實(shí)施例中以使引導(dǎo)到數(shù)據(jù)存儲(chǔ)庫(kù)108的請(qǐng)求212被引導(dǎo)到備用控制元件208。為了該解釋的目的,應(yīng)當(dāng)假定備 用控制元件208采用與控制元件204相同或相似的方式起作用。如此,在本文沒(méi)有進(jìn)一步論述備用控制兀件208??刂圃?02包括接口層214。在由硬件平衡器206 (如存在)引導(dǎo)后,提供數(shù)據(jù)訪問(wèn)請(qǐng)求212給接口層208。例如,可以從許多應(yīng)用程序106(圖I)中的任何應(yīng)用程序接收數(shù)據(jù)訪問(wèn)請(qǐng)求212。接口層214將數(shù)據(jù)訪問(wèn)請(qǐng)求212轉(zhuǎn)換為由目錄服務(wù)器204、206能理解的形式??刂圃?02進(jìn)一步包括數(shù)據(jù)源池層216。該數(shù)據(jù)源池層216包括數(shù)據(jù)存儲(chǔ)庫(kù)108中的服務(wù)器204、206的記錄?;谑褂没蛳挛拿枋龅钠渌蛩兀摂?shù)據(jù)源池層216為數(shù)據(jù)訪問(wèn)請(qǐng)求212選擇通道220、222。如果選擇第一通道220,提供數(shù)據(jù)訪問(wèn)請(qǐng)求給第一服務(wù)器204。如果選擇第二通道,提供請(qǐng)求給第二服務(wù)器206。應(yīng)該理解通道220、222的數(shù)量可以隨數(shù)據(jù)存儲(chǔ)庫(kù)108中的服務(wù)器204、206的數(shù)量而變化。在一個(gè)實(shí)施例中,每個(gè)服務(wù)器204、206具有其自己的專用通道。當(dāng)然,單個(gè)路由器或其它裝置可以支持與數(shù)據(jù)存儲(chǔ)庫(kù)108中的服務(wù)器204、206中的全部的通信。如由鏈接232指示的,服務(wù)器204、206將包含在它們內(nèi)的信息復(fù)制到對(duì)方。復(fù)制技術(shù)是眾所周知的并且在本文不詳細(xì)論述。數(shù)據(jù)源池層216包括允許它選擇哪個(gè)通道220、222來(lái)路由數(shù)據(jù)訪問(wèn)請(qǐng)求210的邏輯230。邏輯230考慮若干不同的情形。例如,在服務(wù)器中的一個(gè)(例如第一服務(wù)器204)是無(wú)效的情況下,邏輯230可以將所有數(shù)據(jù)訪問(wèn)請(qǐng)求212引導(dǎo)到其它服務(wù)器中的一個(gè)(例如,第二服務(wù)器206)。當(dāng)無(wú)效的服務(wù)器恢復(fù)功能時(shí),邏輯230可以再次分配數(shù)據(jù)訪問(wèn)請(qǐng)求給這兩個(gè)服務(wù)器。另外,邏輯230可以包括用于第一和第二服務(wù)器204、206之間的負(fù)載平衡的算法。當(dāng)然,如果存在額外的服務(wù)器,邏輯230只需要知道它們以便平衡服務(wù)器的全部中的負(fù)載。另外,在一些情況下,為了確保一致性,邏輯230可以包括將到達(dá)復(fù)制之間的對(duì)相同數(shù)據(jù)的數(shù)據(jù)訪問(wèn)請(qǐng)求路由到最后處理對(duì)于該數(shù)據(jù)的數(shù)據(jù)訪問(wèn)請(qǐng)求的服務(wù)器的算法。盡管本發(fā)明僅連同有限數(shù)量的實(shí)施例詳細(xì)描述,應(yīng)該容易理解本發(fā)明不限于這樣公開的實(shí)施例。相反,本發(fā)明可以修改以包含此前未描述的許多變化、改動(dòng)、替代或等同設(shè)置,但其與本發(fā)明的精神和范圍相當(dāng)。另外,盡管已經(jīng)描述了本發(fā)明的各種實(shí)施例,要理解本發(fā)明的方面可僅包括描述的實(shí)施例中的一些。因此,本發(fā)明不視為由前面的描述限制,而僅由附上的權(quán)利要求的范圍限制。部件列表
權(quán)利要求
1.ー種包括聯(lián)合模型的軟件服務(wù)基礎(chǔ)結(jié)構(gòu)SSI (100),其包括 多個(gè)應(yīng)用程序(106a. · · 106η); 計(jì)算裝置(104),其利用所述多個(gè)應(yīng)用程序(106a. . . 106η)并且通過(guò)通信網(wǎng)絡(luò)(102)耦合于所述多個(gè)應(yīng)用程序(106a. . . 106η);以及 數(shù)據(jù)存儲(chǔ)庫(kù)(108),其耦合于所述通信網(wǎng)絡(luò)(102)并且配置成從所述多個(gè)應(yīng)用程序(106a. . . 106η)接收對(duì)于存儲(chǔ)在所述聯(lián)合模型中的數(shù)據(jù)的請(qǐng)求(212)并且提供對(duì)所述請(qǐng)求(212)的響應(yīng),所述數(shù)據(jù)存儲(chǔ)庫(kù)(108)包括 第一和第二目錄服務(wù)器(204,206),其每個(gè)包含所述聯(lián)合模型的副本;以及控制元件(202),其基于所述第一和第二目錄服務(wù)器(204,206)的使用量將對(duì)于存儲(chǔ)在所述聯(lián)合模型中的數(shù)據(jù)的所述請(qǐng)求(212)引導(dǎo)到所述第一或第二目錄服務(wù)器(204,206)。
2.如權(quán)利要求I所述的SSI(100),其進(jìn)ー步包括 第三目錄服務(wù)器,其包括所述聯(lián)合模型的副本; 其中所述控制元件(202)基于所述第一、第二和第三目錄服務(wù)器的使用量將對(duì)于存儲(chǔ)在所述聯(lián)合模型中的數(shù)據(jù)的所述請(qǐng)求(212)引導(dǎo)到所述第一目錄服務(wù)器(204)、第二目錄服務(wù)器(206)或第三目錄服務(wù)器。
3.如權(quán)利要求I所述的SSI,其中所述控制元件(202)包括數(shù)據(jù)源池層(216),其配置成記錄關(guān)于所述第一和第二目錄服務(wù)器(204,206)的使用量。
4.如權(quán)利要求3所述的SSI(100),其中所述數(shù)據(jù)源池層(216)進(jìn)ー步配置成確定是將所述請(qǐng)求(212)引導(dǎo)到所述第一目錄服務(wù)器(204)還是引導(dǎo)到所述第二目錄服務(wù)器(206)。
5.ー種包括聯(lián)合模型的軟件服務(wù)基礎(chǔ)結(jié)構(gòu)SSI (100),其包括 多個(gè)應(yīng)用程序(106a. · · 106η); 計(jì)算裝置(104),其利用所述多個(gè)應(yīng)用程序(106a. . . 106η)并且通過(guò)通信網(wǎng)絡(luò)(102)耦合于所述多個(gè)應(yīng)用程序(106a. . . 106η);以及 數(shù)據(jù)存儲(chǔ)庫(kù)(108),其耦合于所述通信網(wǎng)絡(luò)(102)并且配置成從所述多個(gè)應(yīng)用程序(106a. . . 106η)接收對(duì)于存儲(chǔ)在所述聯(lián)合模型中的數(shù)據(jù)的請(qǐng)求(212)并且提供對(duì)于所述請(qǐng)求(212)的響應(yīng),所述數(shù)據(jù)存儲(chǔ)庫(kù)(108)包括 第一和第二目錄服務(wù)器(204,206),其每個(gè)包括所述聯(lián)合模型的副本;以及控制元件(202),其基于向哪里引導(dǎo)先前的請(qǐng)求(212)而將對(duì)于存儲(chǔ)在聯(lián)合模型中的數(shù)據(jù)的所述請(qǐng)求(212)引導(dǎo)到所述第一或第二目錄服務(wù)器(204,206)。
6.如權(quán)利要求5所述的SSI(100),其中第一和第二目錄服務(wù)器(204,206)配置成將它們中ー個(gè)的變化復(fù)制到另ー個(gè)。
7.如權(quán)利要求6所述的SSI(100),其中如果請(qǐng)求(212)是對(duì)于與所述先前請(qǐng)求(212)相同的數(shù)據(jù),則所述控制元件(202)將所述請(qǐng)求(212)引導(dǎo)到所述先前的請(qǐng)求(212)被引導(dǎo)到的相同的目錄服務(wù)器。
8.如權(quán)利要求6所述的SSI(100),其中如果請(qǐng)求(212)是對(duì)于與所述先前的請(qǐng)求(212)相同的數(shù)據(jù)并且對(duì)所述先前的請(qǐng)求(212)的影響沒(méi)有被復(fù)制,則所述控制元件(202)將所述請(qǐng)求(212)引導(dǎo)到所述先前的請(qǐng)求(212)被引導(dǎo)到的相同的目錄服務(wù)器。
9.如權(quán)利要求5所述的SSI(100),其中所述控制元件(202)包括數(shù)據(jù)源池層(216),其配置成記錄存儲(chǔ),所述先前的請(qǐng)求(212)被引導(dǎo)到所述存儲(chǔ)。
10.如權(quán)利要求9所述的SSI (100),其中所述數(shù)據(jù)源池層(216)進(jìn)ー步配置成確定是將所述請(qǐng)求(212)引導(dǎo)到所述第一目錄服務(wù)器(204)還是引導(dǎo)到所述第二目錄服務(wù)器(206)。
全文摘要
本公開涉及包括聯(lián)合模型的軟件服務(wù)基礎(chǔ)結(jié)構(gòu)和方法。公開了包括聯(lián)合模型的軟件服務(wù)基礎(chǔ)結(jié)構(gòu)(SSI)(100),其還包括多個(gè)應(yīng)用程序(106a...106n);計(jì)算裝置(104),該計(jì)算裝置(104)利用這些應(yīng)用程序并且通過(guò)通信網(wǎng)絡(luò)(102)耦合于這些多個(gè)應(yīng)用程序;以及數(shù)據(jù)存儲(chǔ)庫(kù)(108),其耦合于通信網(wǎng)絡(luò)并且配置成從多個(gè)應(yīng)用程序接收對(duì)于存儲(chǔ)在聯(lián)合模型中的數(shù)據(jù)的請(qǐng)求(212)并且提供對(duì)于請(qǐng)求的響應(yīng)。該數(shù)據(jù)存儲(chǔ)庫(kù)包括第一和第二目錄服務(wù)器(204,206),其每個(gè)包含聯(lián)合模型的副本和控制元件(202),該控制元件(202)基于第一和第二目錄的使用量將對(duì)于存儲(chǔ)在聯(lián)合模型中的數(shù)據(jù)的請(qǐng)求引導(dǎo)到第一或第二目錄服務(wù)器。
文檔編號(hào)G06F9/46GK102843412SQ20121011498
公開日2012年12月26日 申請(qǐng)日期2012年4月11日 優(yōu)先權(quán)日2011年4月11日
發(fā)明者徐晨巖 申請(qǐng)人:通用電氣公司