專利名稱:使用服務器之間的直接通信監(jiān)視節(jié)點配置中的服務器事件的方法和系統(tǒng)的制作方法
技術領域:
這里所公開并要求保護的本發(fā)明一般涉及用于給節(jié)點單元或節(jié)點配置中的每一個節(jié)點提供有關其他節(jié)點中的服務器的服務器狀態(tài)信息的方法和系統(tǒng)。具體來說,本發(fā)明涉及上述類型的方法,其中,通過在兩個服務器之間建立直接通信路徑,在不同節(jié)點的服務器之間直接交換服務器事件信息。更具體來說,本發(fā)明涉及上述類型的方法,其中,第一服務器中的服務能夠指定第二服務器中的特定事件,其中,每當?shù)诙掌髦邪l(fā)生指定的事件時,將通知第一服務器。
背景技術:
在越來越常見的包括節(jié)點單元的布局中或節(jié)點配置中,每一個節(jié)點都包括節(jié)點代理和一個或多個應用程序服務器。在這種布局方案中,一般需要給相應的節(jié)點通知其他節(jié)點的服務器狀態(tài)。相關的應用程序服務器狀態(tài)分別可以包括服務器是否(1)正在啟動,(2)已經(jīng)啟動,(3)正在停止或(4)已經(jīng)停止的指示。如果不給節(jié)點提供其他節(jié)點的這種最新的服務器狀態(tài)信息,則相應的節(jié)點將不能夠彼此同步。相應地,通常給當前節(jié)點配置提供中央節(jié)點管理器,單個節(jié)點向該管理器報告它們自己的服務器狀態(tài)信息。然后,如果特定節(jié)點需要有關另一個節(jié)點的狀態(tài)信息,則該特定節(jié)點將直接從節(jié)點管理器直接獲取這樣的信息。此外,還需要當在另一個節(jié)點的服務器上發(fā)生諸如JavaTM管理擴展(JMX)事件之類的某些狀態(tài)事件時,將這些事件通知給定節(jié)點。(Java以及所有基于Java的商標和徽標是Sun Microsystems,Inc.在美國,其他國家或兩者的商標。)圖1顯示了當前節(jié)點單元或節(jié)點配置的例圖。如圖所示,圖1顯示了具有節(jié)點102 A-C和節(jié)點管理器104的節(jié)點配置100。節(jié)點管理器104包括監(jiān)督和管理節(jié)點配置100的部署管理器110。每一個節(jié)點102 A-C都分別包括節(jié)點代理106 A-C和應用程序服務器108 A-C。節(jié)點代理106 A-C一般分別充當應用程序服務器108 A-C和部署管理器110之間的中介。此外,在節(jié)點代理106 A-C中運行的管理邏輯分別保存了與節(jié)點配置100中的其他節(jié)點102 A-C的配置數(shù)據(jù)同步的節(jié)點102 A-C的配置數(shù)據(jù)。一般而言,節(jié)點代理106A-C直接向部署管理器110報告它們分別控制的應用程序服務器108 A-C的狀態(tài)信息。例如,當節(jié)點102 A-C上的應用程序服務器108 A-C改變狀態(tài)時,將由節(jié)點代理106 A-C向部署管理器100傳遞指出改變的信息。此后,如果節(jié)點代理106 A-C分別需要獲取此狀態(tài)信息,則它們將通過直接與部署管理器100/節(jié)點管理器104進行通信來達到這一目的。
盡管有其優(yōu)點,圖1所示的節(jié)點配置類型具有單一故障點。具體來說,如果節(jié)點管理器104或部署管理器110中的任何一個發(fā)生故障,則節(jié)點102 A-C就沒有辦法獲得所需要的服務器狀態(tài)信息。如上所述,如果節(jié)點102 A-C不能得到服務器狀態(tài)信息,則它們將不能夠彼此同步。當前,為克服此問題進行了一些努力將兩個不同節(jié)點的節(jié)點代理鏈接在一起。然而,利用此解決方案,每一個節(jié)點的節(jié)點代理仍將是潛在的單故障點。
發(fā)明內容
根據(jù)第一方面,提供了一種用于監(jiān)視在節(jié)點配置中的相應服務器上發(fā)生的事件,其中,每一個節(jié)點上至少有一個服務器,所述方法包括下列步驟安排位于第一節(jié)點的第一服務器從消息收發(fā)系統(tǒng)接收關于位于其他節(jié)點的服務器的事件的信息;當所述第一服務器從所述消息收發(fā)系統(tǒng)接收到有關所述第二服務器的啟動事件通知時,在所述第一服務器和位于第二節(jié)點的第二服務器之間建立直接通信路徑;以及通過所述直接通信路徑在所述第一服務器從所述第二服務器直接接收消息,以便當在所述第二服務器上發(fā)生了指定的事件時通知所述第一服務器。
在一個實施例中,給消息收發(fā)系統(tǒng)提供第一服務器的當前狀態(tài)。優(yōu)選情況下,注冊第一服務器以從所述消息收發(fā)系統(tǒng)接收有關選擇的其他服務器的啟動事件通知。
優(yōu)選情況下,每一個服務器都包含消息收發(fā)系統(tǒng)接口組件,用于向所述消息收發(fā)系統(tǒng)注冊和連續(xù)地更新其服務器的狀態(tài),并用于向所述消息收發(fā)系統(tǒng)預訂以接收有關其他所述服務器的啟動事件通知。
優(yōu)選情況下,第一服務器具有一個或多個關聯(lián)的服務。在接收到有關所述第二服務器的所述啟動事件通知時,優(yōu)選情況下,第一服務器查詢其每一個服務,如果有的話,標識所述第二服務器的哪些事件影響所述第一服務器的所述服務中的一個或多個服務。優(yōu)選情況下,第一服務器注冊以便當發(fā)生所述標識的事件中的任何事件時,通過所述直接通信路徑從第二服務器接收通知。
優(yōu)選情況下,通過所述直接通信路徑在所述第一服務器從所述第二服務器接收對象,所述對象供所述第一服務器在進行注冊以從所述第二服務器接收所述標識的事件的通知時使用。
在一個實施例中,所述第二服務器的標識的事件是從包括服務器狀態(tài)的組中選出來的,其中所述服務器狀態(tài)是所述第二服務器正在啟動、已經(jīng)啟動、正在停止和已經(jīng)停止。
在一個實施例中,所述第二服務器的標識的事件包括JMX事件。
在一個實施例中,消息收發(fā)系統(tǒng)包括高度可用的公告牌。
根據(jù)另一個方面,在計算機可讀介質提供了一種計算機程序產(chǎn)品,用于監(jiān)視節(jié)點配置中相應服務器上發(fā)生的事件,其中,每一個節(jié)點上至少有一個服務器,所述計算機程序產(chǎn)品包括第一指令,安排位于第一節(jié)點的第一服務器從消息收發(fā)系統(tǒng)接收關于位于其他節(jié)點的服務器的事件的信息;第二指令,用于在所述第一服務器從所述消息收發(fā)系統(tǒng)接收到有關所述第二服務器的啟動事件通知時,在所述第一服務器和位于第二節(jié)點的第二服務器之間建立直接通信路徑;第三指令,用于通過所述直接通信路徑在所述第一服務器從所述第二服務器直接接收消息,以便當在所述第二服務器上發(fā)生了指定的事件時通知所述第一服務器。
根據(jù)另一個方面,提供了一種計算機系統(tǒng),用于監(jiān)視節(jié)點配置中相應服務器上發(fā)生的事件,其中,每一個節(jié)點上至少有一個服務器中,系統(tǒng)包括處理器;以及,連接到所述處理器的計算機可讀介質,所述介質被配置為由所述處理器讀取,從而使所述處理器安排位于第一節(jié)點的第一服務器從消息收發(fā)系統(tǒng)接收關于位于其他節(jié)點的服務器的事件的信息;當所述第一服務器從所述消息收發(fā)系統(tǒng)接收到有關所述第二服務器的啟動事件通知時,在所述第一服務器和位于第二節(jié)點的第二服務器之間建立直接通信路徑;以及,通過所述直接通信路徑在所述第一服務器從所述第二服務器直接接收消息,從而當在所述第二服務器上發(fā)生了指定的事件時通知所述第一服務器。
這里所說明的發(fā)明一般提供了實施例,其中,位于節(jié)點配置中的不同的節(jié)點中的兩個服務器,可以通過在兩個服務器之間直接建立通信路徑來連接在一起。已建立的路徑故意排除諸如節(jié)點管理器104、部署管理器110,以及節(jié)點代理106 A-C,如圖1所示。如此,這樣的組件中沒有一個可以充當阻止從一個服務器到另一個服務器傳輸狀態(tài)信息的單一故障點。本發(fā)明的實施例使用諸如高度可用的(HA)公告牌等等之類的消息收發(fā)系統(tǒng),用于從節(jié)點配置的每一個服務器接收狀態(tài)信息。在一個有用的實施例中,提供了一種用于監(jiān)視節(jié)點配置的相應服務器上發(fā)生的事件,位于第一節(jié)點中的第一服務器從消息收發(fā)系統(tǒng)接收有關位于其他節(jié)點的服務器的事件的信息。該方法進一步包括,當?shù)谝环掌鲝南⑹瞻l(fā)系統(tǒng)接收到有關第二服務器的啟動事件通知時,在第一服務器和位于第二節(jié)點的第二服務器之間建立直接通信路徑。然后,當在第二服務器上發(fā)生對第一服務器有意義的指定事件時,可以通過通信路徑從第二服務器向第一服務器直接發(fā)送消息,以通知第一服務器。
現(xiàn)在將參考下面的附圖,只作為示例,對本發(fā)明的優(yōu)選實施例進行描述圖1是顯示了根據(jù)相關技術的對節(jié)點配置中服務器狀態(tài)進行集中監(jiān)視的系統(tǒng)。
圖2是顯示了具有根據(jù)本發(fā)明的實施例進行操作的組件的節(jié)點配置的方框圖。
圖3和4是分別顯示了圖2的節(jié)點配置的選定組件,以顯示根據(jù)本發(fā)明的實施例的兩個服務器之間的直接通信。
圖5是進一步顯示了圖3-4的實施例的流程圖。
圖6是顯示了用于實現(xiàn)圖3-4的實施例的計算機配置的簡化方框圖。
具體實施例方式
請參看圖2,顯示了包括節(jié)點204和206的由節(jié)點202構成的布局方案。應該理解,盡管顯示的節(jié)點配置202具有兩個節(jié)點,但是,這只用于說明,以簡化說明。事實上,節(jié)點配置202可以包括不同數(shù)量的節(jié)點,取決于其用途和應用場合。此外,還應該理解,節(jié)點204和206用于代表能夠實現(xiàn)本發(fā)明的原理的任何種類的計算機化設備。例如,節(jié)點204和206可以是臺式計算機、膝上型計算機、手提設備、客戶端、服務器等等。此外,節(jié)點204和206可以有選擇地通過諸如因特網(wǎng)、局域網(wǎng)(LAN)、廣域網(wǎng)(WAN)或虛擬專用網(wǎng)絡(VPN)之類的網(wǎng)絡連接在一起。此外,可以通過直接硬連線連接、或利用有線和/或無線方法的任何組合的可尋址的連接,進行節(jié)點配置202中的通信??梢允褂弥T如令牌環(huán)網(wǎng)、以太網(wǎng)或其他常規(guī)通信標準之類的常規(guī)網(wǎng)絡連接。也可以通過常規(guī)的基于IP的協(xié)議來提供連接,其中,使用因特網(wǎng)服務提供商來建立連接。
請進一步參看圖2,顯示了配備有應用程序服務器208的節(jié)點204,進一步稱為服務器A,以及配備有應用程序服務器210的節(jié)點206,進一步稱為服務器N。事實上,節(jié)點204和206可以各自包括比服務器A和N更多的服務器。然而,這里沒有顯示這樣的額外的服務器,以便簡化說明和插圖。也沒有顯示用于其相應服務器的操作的節(jié)點204和206的節(jié)點代理。
圖2進一步顯示了消息收發(fā)系統(tǒng)212,包括具有公告牌214的HA消息收發(fā)系統(tǒng)。公告牌214包括IBM公司的產(chǎn)品(業(yè)界已知的WebSphere),但是,公告牌214不僅限于此。(WebSphere是IBM公司在美國及其他國家的商標。)消息收發(fā)系統(tǒng)212用于直接與節(jié)點204的服務器208交換信息,還與節(jié)點206的服務器210交換信息。具體來說,給服務器208提供消息收發(fā)系統(tǒng)接口服務216,或類似的組件,用于將服務器208的狀態(tài)張貼到公告牌214中。接口服務216還被配置為在消息收發(fā)系統(tǒng)212中注冊服務器208,以便接收節(jié)點配置202的指定的其他服務器(包括節(jié)點206的服務器210)的啟動事件通知。一般而言,接口216注冊以接收其他服務器的張貼到消息收發(fā)系統(tǒng)212的啟動事件,其中,服務器涉及服務器208的服務的消息主題。
同樣地,給服務器210提供了消息收發(fā)系統(tǒng)接口218,用于將服務器210的狀態(tài)張貼到公告牌214中。接口218還用于注冊服務器210以接收節(jié)點配置202的其他節(jié)點的服務器(如服務器208)的啟動事件通知。
在本發(fā)明的一些有用的實施例中,每當服務器開始時,通過其接口服務,將服務器的狀態(tài)張貼到公告牌214。張貼到公告牌214的其他信息可以涉及諸如208和210之類的應用程序服務器的JMX狀態(tài)事件。這樣的狀態(tài)事件包括,正在啟動的服務器、已經(jīng)啟動的服務器、正在停止的服務器和已經(jīng)停止的服務器。應該理解,僅為了說明,所描述的公告牌214在消息服務212內。應該理解,其他布局對于本領域技術人員來說也是顯而易見的。
當消息收發(fā)系統(tǒng)接口組件216或218最初注冊以接收其他指定的服務器的啟動事件時,它檢索當時正在運行的所有這樣的服務器的標識。此后,每當啟動一個指定的服務器時,消息收發(fā)系統(tǒng)212和公告牌214將這樣的事件通知給消息收發(fā)系統(tǒng)接口組件216或218。
請參看圖3,顯示了服務器208(下面稱為服務器A),接收服務器210(以下簡稱為服務器N)已經(jīng)啟動的通知。在接收到此通知時,服務器A查詢或檢查其每一個服務,以判斷它們中的任何一個是否對跟蹤新啟動的服務器N中的任何事件。此過程可以由服務器A的服務或組件(如圖2所示,如Query Server A服務組件220)來執(zhí)行。如果服務器A的一個或多個服務對這樣的查詢作出肯定的響應,并標識服務器A應該監(jiān)視或跟蹤的服務器N的一個或多個事件,服務器A與新啟動的服務器N創(chuàng)建直接連接。具體來說,服務器A用于與服務器N建立直接通信路徑或鏈接302,如圖3所示。有用地,由服務器A的服務(如,如圖2所示的服務器鏈接組件222)。
請進一步參看圖3,在建立了通信路徑302以在服務器A和服務器N之間建立直接連接之后,服務器A從服務器N檢索對象304。然后,服務器A使用該對象向服務器N注冊,以接收查詢過程中標識的事件的通知(如上文所述)。如此,當在服務器N中發(fā)生這樣的事件時,通知對相應的標識的事件感興趣的或受相應的標識的事件的影響的服務器A的服務。圖4顯示了包括JMX事件的標識的事件。注冊過程由服務器A的服務來實現(xiàn),如,如圖2所示的服務器注冊組件224。通過通信路徑302,將標識的服務器N事件的通知直接從服務器N提供到服務器A。如此,如圖2-4所示的本發(fā)明的實施例克服了現(xiàn)有技術中的節(jié)點代理充當節(jié)點中的單一故障點,阻止服務器狀態(tài)信息流動的問題。
圖2進一步顯示了服務器A的其他服務226,籠統(tǒng)地代表可能試圖監(jiān)視服務器N的事件(或其他節(jié)點的服務器)的服務器A的相應的服務。圖2還顯示了配備有分別對應于服務器A的服務220-226的服務或組件228-234的服務器N。如此,當由公告牌214通知服務器N服務器A已經(jīng)啟動時,如圖3所示,服務228-232實現(xiàn)服務器N的類似于上文分別針對服務220-224所描述的那些功能的功能。相應地,通過通信路徑306在服務器N和服務器A之間建立直接連接。將對象308從服務器A提供到服務器N,供服務器N用來監(jiān)視服務器A的對服務器N的服務有意義的標識的JMX事件。圖4顯示了服務器N為這些標識的事件向服務器A注冊,并進一步顯示了通過直接通信路徑306直接從服務器A向服務器N提供相應的事件的通知。
請參看圖5,如上文所描述的,顯示了服務器A與公告牌214,以及與服務器N的交互。圖5的功能塊502顯示了服務器A向公告牌214張貼其狀態(tài)信息,以及向公告牌214注冊以從公告牌214接收其他節(jié)點的選定服務器的啟動事件通知。
圖5進一步顯示了判斷方框504和506。這些判斷方框籠統(tǒng)地指出了,當服務器A接收服務器N的啟動事件通知時,查詢服務器A的相應的服務,以判斷是否對任何服務器N事件有任何興趣。如果有,則由功能塊508所指出的,在服務器A和服務器N之間建立直接連接,由功能塊510所指出的,由服務器A從服務器N檢索對象。如功能塊512所示,使用該對象注冊服務器A,每當發(fā)生相關的一個事件時,由服務器N給服務器A發(fā)出通知。
請參看圖6,就節(jié)點204顯示了本發(fā)明的更加具體的計算機化實施方式。應該理解,節(jié)點206及配置202的其他節(jié)點將包括類似的組件。圖6顯示了節(jié)點204包括處理單元602、存儲器604、總線606、輸入/輸出(I/O)接 608、外部設備/源610和存儲單元612。處理單元602可以包括單一處理單元,也可以跨一個或多個位置的一個或多個處理單元分布。存儲器604可以包括任何已知類型的數(shù)據(jù)存儲介質,如磁性介質、光學介質、隨機存取存儲器(RAM)、只讀存儲器(ROM)、數(shù)據(jù)緩存或數(shù)據(jù)對象。此外,存儲器604可以駐留在單一物理位置,或以各種形式跨多個物理系統(tǒng)分布。
I/O接口608可以包括用于與外部設備或源交換信息的任何系統(tǒng)。外部設備/源610可以包括任何已知類型的外部設備,如揚聲器、CRT、LED屏幕,掌上型設備、鍵盤、鼠標、語音識別系統(tǒng)、語音輸出系統(tǒng)、打印機、監(jiān)視器或顯示器??偩€606在節(jié)點204中的每一個組件之間提供通信鏈路,并可以包括任何已知類型的傳輸鏈路,如電的、光學的或無線鏈路。
存儲單元612可以是能夠為根據(jù)本發(fā)明的信息(例如,服務器狀態(tài)信息)提供存儲的任何系統(tǒng)(例如,數(shù)據(jù)庫)。相應地,存儲單元612可以包括一個或多個存儲設備,如磁盤驅動器或光盤驅動器。在另一個實施例中,存儲單元612可以包括跨LAN、WAN或存儲區(qū)域網(wǎng)絡SAN(未顯示)分布的數(shù)據(jù)。雖然未顯示,諸如高速緩沖存儲器、通信系統(tǒng)或系統(tǒng)軟件之類的其他組件也可以集成到節(jié)點204中。如上文所指出的,節(jié)點206將具有類似于為節(jié)點204顯示的那些組件的組件。
值得注意的是,盡管是在完全運轉的數(shù)據(jù)處理系統(tǒng)的上下文中描述本發(fā)明的,但是,本領域技術人員將認識到,本發(fā)明的進程能夠以存儲了指令的計算機可讀的介質的形式和各種各樣的形式進行分發(fā),不管實際用于進行分發(fā)的承載信號的介質的特定類型是什么,本發(fā)明都同樣適用。計算機可讀的介質的示例包括可記錄類型的介質,如軟盤、硬盤驅動器、RAM、CD-ROM、DVD-ROM、傳輸類型的介質,例如使用諸如射頻和光波傳輸?shù)膫鬏斝问降臄?shù)字和模擬通信鏈路、有線或無線通信鏈路。計算機可讀的介質可以采取編碼格式的形式,這些編碼在特定數(shù)據(jù)處理系統(tǒng)中實際使用時被解碼。
本發(fā)明的說明書只作說明,而不是詳盡的說明或限于所說明的形式。本領域技術人員將認識到,可以進行許多修改。所選擇的實施例只是為了最好地說明本發(fā)明的原理,實際應用,并使本領域技術人員懂得,帶有各種修改的各種實施例也是可以接受的。
權利要求
1.一種用于監(jiān)視在節(jié)點配置中的相應服務器上發(fā)生的事件的方法,其中,每一個節(jié)點上至少有一個服務器,所述方法包括下列步驟安排位于第一節(jié)點的第一服務器從消息收發(fā)系統(tǒng)接收關于位于其他節(jié)點的服務器的事件的信息;當所述第一服務器從所述消息收發(fā)系統(tǒng)接收到有關所述第二服務器的啟動事件通知時,在所述第一服務器和位于第二節(jié)點的第二服務器之間建立直接通信路徑;以及通過所述直接通信路徑在所述第一服務器從所述第二服務器直接接收消息,以便當在所述第二服務器上發(fā)生了指定的事件時通知所述第一服務器。
2.根據(jù)權利要求1所述的方法,其中,所述安排步驟包括給所述消息收發(fā)系統(tǒng)提供所述第一服務器的當前狀態(tài);以及注冊所述第一服務器以從所述消息收發(fā)系統(tǒng)接收有關選擇的其他服務器的啟動事件通知。
3.根據(jù)權利要求2所述的方法,其中每一個所述服務器都包含消息收發(fā)系統(tǒng)接口組件,用于向所述消息收發(fā)系統(tǒng)注冊和連續(xù)地更新其服務器的狀態(tài),并用于向所述消息收發(fā)系統(tǒng)預訂以接收有關其他所述服務器的啟動事件通知。
4.根據(jù)前面的任何一個權利要求所述的方法,其中,所述第一服務器具有一個或多個關聯(lián)的服務,所述方法包括在接收到有關所述第二服務器的所述啟動事件通知時,由所述第一服務器查詢其每一個服務,如果有的話,標識所述第二服務器的哪些事件影響所述第一服務器的所述服務中的一個或多個服務;以及由第一服務器進行注冊以便當發(fā)生所述標識的事件中的任何事件時,通過所述直接通信路徑從所述第二服務器接收通知。
5.根據(jù)權利要求4所述的方法,包括通過所述直接通信路徑在所述第一服務器從所述第二服務器接收對象,所述對象供所述第一服務器在進行注冊以從所述第二服務器接收所述標識的事件的通知時使用。
6.根據(jù)權利要求5所述的方法,其中所述標識的第二服務器事件是從包括服務器狀態(tài)的組中選出來的,其中所述服務器狀態(tài)是所述第二服務器正在啟動、已經(jīng)啟動、正在停止和已經(jīng)停止。
7.根據(jù)權利要求5所述的方法,其中所述標識的第二服務器事件包括JMX事件。
8.根據(jù)前面的任何一個權利要求所述的方法,其中所述消息收發(fā)系統(tǒng)包括高度可用的公告牌。
9.一種計算機可讀介質中的計算機程序產(chǎn)品,用于監(jiān)視節(jié)點配置中相應服務器上發(fā)生的事件,其中,每一個節(jié)點上至少有一個服務器,所述計算機程序產(chǎn)品包括第一指令,用于安排位于第一節(jié)點的第一服務器從消息收發(fā)系統(tǒng)接收關于位于其他節(jié)點的服務器的事件的信息;第二指令,用于在所述第一服務器從所述消息收發(fā)系統(tǒng)接收到有關所述第二服務器的啟動事件通知時,在所述第一服務器和位于第二節(jié)點的第二服務器之間建立直接通信路徑;第三指令,用于通過所述直接通信路徑在所述第一服務器從所述第二服務器直接接收消息,以便當在所述第二服務器上發(fā)生了指定的事件時通知所述第一服務器。
10.根據(jù)權利要求9所述的計算機程序產(chǎn)品,包括第四指令,用于給所述消息收發(fā)系統(tǒng)提供所述第一服務器的當前狀態(tài);以及第五指令,用于注冊所述第一服務器以從所述消息收發(fā)系統(tǒng)接收有關選擇的其他服務器的啟動事件通知。
11.根據(jù)權利要求10所述的計算機程序產(chǎn)品,其中每一個所述服務器都包含消息收發(fā)系統(tǒng)接口組件,用于向所述消息收發(fā)系統(tǒng)注冊和連續(xù)地更新其服務器的狀態(tài),并用于向所述消息收發(fā)系統(tǒng)預訂以接收有關其他所述服務器的啟動事件通知。
12.根據(jù)權利要求9、10或11所述的計算機程序產(chǎn)品,其中,所述第一服務器具有一個或多個關聯(lián)的服務,其中,所述計算機程序產(chǎn)品包括第六指令,用于響應接收到有關所述第二服務器的所述啟動事件通知,由所述第一服務器查詢其每一個服務,如果有的話,標識所述第二服務器的哪些事件影響所述第一服務器的所述服務中的一個或多個服務;以及第七指令,用于注冊所述第一服務器以便當發(fā)生所述標識的事件中的任何事件時,通過所述直接通信路徑從所述第二服務器接收通知。
13.根據(jù)權利要求12所述的計算機程序產(chǎn)品,包括第八指令,用于通過所述直接通信路徑在所述第一服務器從所述第二服務器接收對象,所述對象供所述第一服務器在進行注冊以從所述第二服務器接收所述標識的事件的通知時使用。
14.根據(jù)權利要求13所述的計算機程序產(chǎn)品,其中所述第二服務器的標識的事件是從包括服務器狀態(tài)的組中選出來的,其中所述服務器狀態(tài)是所述第二服務器正在啟動、已經(jīng)啟動、正在停止和已經(jīng)停止。
15.根據(jù)權利要求13所述的計算機程序產(chǎn)品,其中所述標識的第二服務器事件包括JMX事件。
16.根據(jù)權利要求9到15中的任何一個權利要求所述的計算機程序產(chǎn)品,其中所述消息收發(fā)系統(tǒng)包括高度可用的公告牌。
17.一種用于監(jiān)視在節(jié)點配置中的相應服務器上發(fā)生的事件的計算機系統(tǒng),其中,每一個節(jié)點上至少有一個服務器,所述系統(tǒng)包括處理器;以及連接到所述處理器的計算機可讀介質,所述介質被配置為由所述處理器讀取,從而使所述處理器安排位于第一節(jié)點的第一服務器從消息收發(fā)系統(tǒng)接收關于位于其他節(jié)點的服務器的事件的信息;當所述第一服務器從所述消息收發(fā)系統(tǒng)接收到有關所述第二服務器的啟動事件通知時,在所述第一服務器和位于第二節(jié)點的第二服務器之間建立直接通信路徑;以及通過所述直接通信路徑在所述第一服務器從所述第二服務器直接接收消息,從而當在所述第二服務器上發(fā)生了指定的事件時通知所述第一服務器。
18.根據(jù)權利要求17所述的計算機系統(tǒng),包括用于給所述消息收發(fā)系統(tǒng)提供所述第一服務器的當前狀態(tài)的裝置;以及用于注冊所述第一服務器以從所述消息收發(fā)系統(tǒng)接收有關選擇的其他服務器的啟動事件通知的裝置。
19.根據(jù)權利要求18所述的計算機系統(tǒng),其中每一個所述服務器都包含消息收發(fā)系統(tǒng)接口組件,用于向所述消息收發(fā)系統(tǒng)注冊和連續(xù)地更新其服務器的狀態(tài),并用于向所述消息收發(fā)系統(tǒng)預訂以接收有關其他所述服務器的啟動事件通知。
20.根據(jù)權利要求17到19中的任何一個權利要求所述的計算機系統(tǒng),其中,所述第一服務器具有一個或多個關聯(lián)的服務,其中,所述系統(tǒng)包括用于響應接收到有關所述第二服務器的所述啟動事件通知,由所述第一服務器查詢其每一個服務,如果有的話,標識所述第二服務器的哪些事件影響所述第一服務器的所述服務中的一個或多個服務的裝置;以及用于注冊所述第一服務器以便當發(fā)生所述標識的事件中的任何事件時,通過所述直接通信路徑從所述第二服務器接收通知的裝置。
21.根據(jù)權利要求20所述的計算機系統(tǒng),包括用于通過所述直接通信路徑在所述第一服務器從所述第二服務器接收對象的裝置,所述對象供所述第一服務器在進行注冊以從所述第二服務器接收所述標識的事件的通知時使用。
22.根據(jù)權利要求21所述的方法,其中所述標識的第二服務器事件是從包括服務器狀態(tài)的組中選出來的,其中所述服務器狀態(tài)是所述第二服務器正在啟動、已經(jīng)啟動、正在停止和已經(jīng)停止。
23.根據(jù)權利要求21所述的方法,其中所述標識的第二服務器事件包括JMX事件。
24.根據(jù)權利要求17到23中的任何一個權利要求所述的計算機系統(tǒng),其中所述消息收發(fā)系統(tǒng)包括高度可用的公告牌。
25.一種包括程序代碼單元的計算機程序,當所述程序在計算機上運行時,用于執(zhí)行權利要求1到8中的任何一個權利要求所述的方法。
全文摘要
公開了使用服務器之間的直接通信監(jiān)視節(jié)點配置中服務器事件的方法和系統(tǒng)。在用于監(jiān)視節(jié)點配置中的相應服務器上發(fā)生的事件的方法和系統(tǒng)中,位于第一節(jié)點中的第一服務器從消息收發(fā)系統(tǒng)接收有關位于其他節(jié)點的服務器的事件的信息。消息收發(fā)系統(tǒng)包括高度可用的(HA)公告牌等等。當?shù)谝环掌鹘邮沼嘘P位于第二節(jié)點的第二服務器的啟動事件通知時,在第一和第二服務器之間建立直接通信路徑。第一服務器標識第二服務器中的影響或對第一服務器的服務有意義的事件。然后,當發(fā)生相應的標識的事件時,第一服務器向第二服務器注冊,以通過直接通信接收通知。
文檔編號H04L29/06GK101019376SQ200580031020
公開日2007年8月15日 申請日期2005年10月26日 優(yōu)先權日2004年10月29日
發(fā)明者托馬斯·吉塞, 布賴恩·K.·馬丁, 杰森·R.·麥吉, 威廉·T.·紐波特 申請人:國際商業(yè)機器公司