專利名稱:一種分布式企業(yè)服務(wù)總線中介流程可靠性維護(hù)設(shè)備及方法
技術(shù)領(lǐng)域:
本發(fā)明涉及分布式企業(yè)服務(wù)總線中介流程處理方法及出現(xiàn)節(jié)點(diǎn)崩潰時(shí)中介流程恢復(fù)方法,主要是一種分布式企業(yè)服務(wù)總線中介流程可靠性維護(hù)方法。
背景技術(shù):
企業(yè)服務(wù)總線(ESB)作為應(yīng)用系統(tǒng)的連接中樞,是構(gòu)筑面向服務(wù)架構(gòu)(Service Oriented Architecture, S0A)為基礎(chǔ)的企業(yè)信息系統(tǒng)的必要元素。企業(yè)服務(wù)總線的定義可以簡(jiǎn)單的理解為由中間件技術(shù)實(shí)現(xiàn)并支持SOA的一組基礎(chǔ)架構(gòu),支持異構(gòu)環(huán)境中的服務(wù)、消息以及基于事件的交互,并且具有適當(dāng)?shù)姆?wù)級(jí)別和可管理性。通過(guò)企業(yè)服務(wù)總線實(shí)現(xiàn)應(yīng)用系統(tǒng)的快速接入,并通過(guò)更高級(jí)的事件、流程處理能力,能夠很好的將企業(yè)信息系統(tǒng)與實(shí)際業(yè)務(wù)協(xié)調(diào)起來(lái),在保證原有投資的條件下,實(shí)現(xiàn)更加靈活和敏捷的企業(yè)信息系統(tǒng)改造。企業(yè)服務(wù)總線主要功能是連接外部系統(tǒng)與服務(wù),實(shí)現(xiàn)不同系統(tǒng)間交互需求。同時(shí)為了滿足交互條件,需要對(duì)消息進(jìn)行各種處理,如格式轉(zhuǎn)換、消息廣播、消息聚合、消息拆分等等,這些操作由稱為中介器的單元執(zhí)行?!爸薪槠鳌笔莻€(gè)邏輯概念,而非物理概念,即同一個(gè)機(jī)器上可同時(shí)運(yùn)行多種不同的中介器,并可動(dòng)態(tài)調(diào)整。而中介流程是指消息從外部應(yīng)用出發(fā),經(jīng)過(guò)ESB容器內(nèi)部各種中介器處理,并把處理后的消息發(fā)給服務(wù)的過(guò)程,以及反向過(guò)程(消息從服務(wù)到外部應(yīng)用)。如附圖1所述消息處理流程使用了兩類中介器消息拆分中介器和格式轉(zhuǎn)換中介器。中介流程為從適配器獲得消息,并通過(guò)消息拆分中介器把消息拆分為兩部分,分別發(fā)送給相應(yīng)的格式轉(zhuǎn)換中介器進(jìn)行格式處理(因?yàn)閮蛇吽玫南⒏袷讲幌嗤?。處理完畢后由格式轉(zhuǎn)換中介器把消息發(fā)給相應(yīng)個(gè)服務(wù)。企業(yè)服務(wù)總線的實(shí)現(xiàn)模式有多種多樣,但主要包括兩大類簡(jiǎn)單的中央輻射式企業(yè)服務(wù)總線和全分布式企業(yè)服務(wù)總線。中央輻射模式將所有的服務(wù)都注冊(cè)到一個(gè)統(tǒng)一的中央“集線器”中,即所有的服務(wù)消息都需要經(jīng)過(guò)一個(gè)中央服務(wù)器,該方式雖然部屬和管理比較容易,但缺點(diǎn)也顯而易見(jiàn),企業(yè)信息系統(tǒng)的性能將受制于中央服務(wù)器消息中轉(zhuǎn)能力,當(dāng)中央服務(wù)器出現(xiàn)故障,整個(gè)企業(yè)信息系統(tǒng)的功能將受到非常大的影響。而全分布式企業(yè)服務(wù)總線則不同,它沒(méi)有明顯的中央服務(wù)器,總線在企業(yè)信息系統(tǒng)中是以分布式的架構(gòu)進(jìn)行部署的,每個(gè)總線節(jié)點(diǎn)都包含完整的接入、路由、調(diào)用等功能,不再存在一個(gè)集中的瓶頸,能夠非常有效的利用企業(yè)的硬件資源和網(wǎng)絡(luò)帶寬,在個(gè)別節(jié)點(diǎn)失效的情況下,企業(yè)信息系統(tǒng)的功能損失較小甚至為零?,F(xiàn)代的企業(yè)服務(wù)總線系統(tǒng)大多數(shù)使用分布式模式實(shí)現(xiàn)。在分布式企業(yè)服務(wù)總線系統(tǒng)中,最核心的功能為服務(wù)請(qǐng)求者與服務(wù)提供者的交互,而交互過(guò)程中消息不僅要經(jīng)過(guò)適配器節(jié)點(diǎn),還要經(jīng)過(guò)中介節(jié)點(diǎn)進(jìn)行處理。實(shí)現(xiàn)異構(gòu)系統(tǒng)交互不僅僅要消除消息類型的隔閡,還需進(jìn)行各種消息處理。常用的消息處理類型有消息聚合,消息拆分,消息廣播,基于內(nèi)容路由,消息排序,消息格式轉(zhuǎn)換等,統(tǒng)稱為消息中介。中介節(jié)點(diǎn)的作用就是提供所需的消息中介功能,而消息從發(fā)送端出發(fā),經(jīng)過(guò)一系列中介節(jié)點(diǎn)處理,最終到達(dá)接收端的過(guò)程稱為中介處理流程。經(jīng)過(guò)適配器節(jié)點(diǎn)與中介節(jié)點(diǎn)的共同協(xié)作,才能實(shí)現(xiàn)異構(gòu)系統(tǒng)間的交互需求。該處理過(guò)程復(fù)雜度較高,處理過(guò)程中某一環(huán)節(jié)發(fā)生錯(cuò)誤, 都不能保證服務(wù)交互的正確進(jìn)行。在企業(yè)服務(wù)總線系統(tǒng)中,所有的節(jié)點(diǎn)都是由獨(dú)立的PC端所組成,它們不是絕對(duì)的可靠,隨時(shí)都有出現(xiàn)崩潰的可能。因此,保證中介流程執(zhí)行的可靠性,是企業(yè)服務(wù)總線系統(tǒng)可靠性中的重中之重。當(dāng)系統(tǒng)中一個(gè)或多個(gè)部分失效的情況下,如何使與失效部分相關(guān)的中介流程仍能正確運(yùn)行,將企業(yè)信息系統(tǒng)在故障過(guò)程中的功能損失降低到最小,是現(xiàn)有技術(shù)中必須解決的問(wèn)題。
發(fā)明內(nèi)容
本發(fā)明針對(duì)現(xiàn)有技術(shù)中所存在的缺陷,提一種分布式企業(yè)服務(wù)總線中介流程可靠性維護(hù)設(shè)備及其維護(hù)方法。為了解決上述技術(shù)問(wèn)題,本發(fā)明采用以下技術(shù)方案
一種分布式企業(yè)服務(wù)總線中介流程可靠性維護(hù)設(shè)備,包括適配器、企業(yè)服務(wù)總線、服務(wù)目錄,所述企業(yè)服務(wù)總線中包括服務(wù)處理節(jié)點(diǎn)、中介處理節(jié)點(diǎn)、調(diào)度服務(wù)器、備用節(jié)點(diǎn); 所述服務(wù)處理節(jié)點(diǎn)用于安裝適配器、部署服務(wù); 所述中介處理節(jié)點(diǎn)用于提供中介處理功能;
所述調(diào)度服務(wù)器用于所述企業(yè)服務(wù)總線的環(huán)境監(jiān)視、統(tǒng)一管理服務(wù)的接入、流程的部
署;
所述備用節(jié)點(diǎn)與所述中介處理節(jié)點(diǎn)具有相同功能,通過(guò)所述調(diào)度服務(wù)器的調(diào)度,使其處于運(yùn)行或者不運(yùn)行狀態(tài)。作為可選方案,所述企業(yè)服務(wù)總線采用分布式架構(gòu)。一種分布式企業(yè)服務(wù)總線中介流程可靠性維護(hù)方法,包括流程規(guī)則部署流程和標(biāo)準(zhǔn)流程規(guī)則處理流程,流程規(guī)則部署流程包括以下步驟
1)通過(guò)流程設(shè)計(jì)器把中介流程規(guī)則包發(fā)送給服務(wù)處理節(jié)點(diǎn),所述服務(wù)處理節(jié)點(diǎn)部署所述規(guī)則;
2)調(diào)度服務(wù)器根據(jù)所述規(guī)則對(duì)流程進(jìn)行調(diào)度分配,把各個(gè)的中介規(guī)則發(fā)送到合適的中介處理節(jié)點(diǎn)中;
3)所述中介處理節(jié)點(diǎn)處理流程規(guī)則,為每個(gè)中介規(guī)則目的地添加相應(yīng)節(jié)點(diǎn)地址。作為可選方案,當(dāng)某一中介處理節(jié)點(diǎn)出現(xiàn)問(wèn)題時(shí),所述調(diào)度服務(wù)器的調(diào)度包括以下步驟
1)所述調(diào)度服務(wù)器發(fā)現(xiàn)中介處理節(jié)點(diǎn)失效,通過(guò)查找本地記錄,獲得所述失效中介處理節(jié)點(diǎn)上所進(jìn)行的所有中介處理功能;
2)所述調(diào)度服務(wù)器通過(guò)查詢系統(tǒng)中是否存在空閑的備用節(jié)點(diǎn)進(jìn)行判斷,如存在,選中一個(gè)備用節(jié)點(diǎn),將所述失效中介處理節(jié)點(diǎn)的全部功能轉(zhuǎn)移給此備用節(jié)點(diǎn),并將此備用節(jié)點(diǎn)啟用為中介處理節(jié)點(diǎn),此時(shí)此備用節(jié)點(diǎn)將處于運(yùn)行狀態(tài);如不存在,則查詢所述系統(tǒng)中其它中介處理節(jié)點(diǎn),將失效的中介處理節(jié)點(diǎn)的功能轉(zhuǎn)移給所述系統(tǒng)中功能相近的中介處理節(jié)點(diǎn)。
3)所述調(diào)度服務(wù)器完成功能轉(zhuǎn)移后,查詢系統(tǒng)中與所述失效中介處理節(jié)點(diǎn)有關(guān)的所有中介流程,把每個(gè)流程規(guī)則中失效中介處理節(jié)點(diǎn)地址更新為步驟2)中選定的新節(jié)點(diǎn)地址, 并動(dòng)態(tài)重新部署每個(gè)流程。
作為可選方案,當(dāng)系統(tǒng)負(fù)載過(guò)高時(shí),所述調(diào)度服務(wù)器的調(diào)度包括以下步驟
1)所述調(diào)度服務(wù)器監(jiān)控各中介節(jié)點(diǎn)負(fù)載狀況,判斷某中介節(jié)點(diǎn)持續(xù)負(fù)載是否過(guò)高;
2)所述調(diào)度服務(wù)器估算此節(jié)點(diǎn)負(fù)載情況,如發(fā)現(xiàn)可能導(dǎo)致此節(jié)點(diǎn)崩潰,則進(jìn)行負(fù)載平衡處理;
3)所述調(diào)度服務(wù)器將負(fù)載過(guò)高節(jié)點(diǎn)的部分功能轉(zhuǎn)移到備用節(jié)點(diǎn)或負(fù)載較輕的中介節(jié)點(diǎn)。
4)所述調(diào)度服務(wù)器完成功能轉(zhuǎn)移后,查詢系統(tǒng)中與失效中介處理節(jié)點(diǎn)有關(guān)的所有中介流程,把每個(gè)流程規(guī)則中失效中介處理節(jié)點(diǎn)地址更新為步驟3)中選定的新節(jié)點(diǎn)地址。并動(dòng)態(tài)重新部署每個(gè)流程。作為可選方案,上述一種分布式企業(yè)服務(wù)總線中介流程可靠性維護(hù)方法中所述系統(tǒng)采用分布式架構(gòu)。本發(fā)明有益的效果
1、能夠在任意中介處理節(jié)點(diǎn)損壞的情況下,仍然保持現(xiàn)有流程的正常運(yùn)行,而不需手動(dòng)的調(diào)整系統(tǒng)配置,最大限度的保證了企業(yè)服務(wù)總線的可靠性和健壯性。2、中介處理節(jié)點(diǎn)采用分布式架構(gòu),由服務(wù)器統(tǒng)一調(diào)度中介處理節(jié)點(diǎn)的行為。為系統(tǒng)的中介處理功能提供了最大的靈活性。當(dāng)系統(tǒng)負(fù)載較低時(shí),可由每個(gè)中介處理節(jié)點(diǎn)專門負(fù)責(zé)進(jìn)行某類中介處理,保證業(yè)務(wù)邏輯的明確性。當(dāng)系統(tǒng)某類中介處理功能需求較高時(shí),每個(gè)中間處理節(jié)點(diǎn)都可在維持原有功能的同時(shí),提供此項(xiàng)中介處理功能,從而減輕系統(tǒng)負(fù)載, 保持系統(tǒng)最佳性能。3、實(shí)時(shí)調(diào)整系統(tǒng)中各中介處理節(jié)點(diǎn)負(fù)載,降低節(jié)點(diǎn)崩潰幾率,提高系統(tǒng)穩(wěn)定性。
圖1為企業(yè)服務(wù)總線的示意圖; 圖2為流程規(guī)則部署流程圖3為標(biāo)準(zhǔn)流程規(guī)則處理流程圖; 圖4為中介處理節(jié)點(diǎn)失效后流程恢復(fù)流程圖; 圖5為調(diào)整中介處理平衡節(jié)點(diǎn)負(fù)載流程圖。
具體實(shí)施例方式下面將結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步說(shuō)明
(1)整個(gè)系統(tǒng)采用分布式架構(gòu),將系統(tǒng)分為服務(wù)處理節(jié)點(diǎn)、中介處理節(jié)點(diǎn)、調(diào)度服務(wù)器、 備用節(jié)點(diǎn)四種類型
服務(wù)處理節(jié)點(diǎn)用于安裝適配器,部署服務(wù),是消息處理流程的起點(diǎn)和終點(diǎn); 中介處理節(jié)點(diǎn)中介處理是指為實(shí)現(xiàn)某種信息交互目的而進(jìn)行的消息路由,或消息處理。常見(jiàn)的中介處理方式有消息聚合、消息拆分、消息廣播、消息排序、消息內(nèi)容路由、消息格式轉(zhuǎn)換等,中介處理節(jié)點(diǎn)負(fù)責(zé)提供中介處理功能;
調(diào)度服務(wù)器負(fù)責(zé)整個(gè)企業(yè)服務(wù)總線的環(huán)境進(jìn)行監(jiān)視、統(tǒng)一管理服務(wù)的接入、流程的部署,維護(hù)當(dāng)前已部署的所有服務(wù)信息和流程信息;
備用節(jié)點(diǎn)具有與中介節(jié)點(diǎn)相同同能的節(jié)點(diǎn),平時(shí)不處于運(yùn)行狀態(tài)。當(dāng)有其他中介節(jié)點(diǎn)出現(xiàn)問(wèn)題,或系統(tǒng)負(fù)責(zé)過(guò)高時(shí)可由調(diào)度服務(wù)器調(diào)度,進(jìn)入運(yùn)行狀態(tài),轉(zhuǎn)化為中介處理節(jié)點(diǎn)。(2)定義靈活的的中介流程處理規(guī)則消息在企業(yè)服務(wù)總線中根據(jù)特定的中介流程處理規(guī)則進(jìn)行傳輸,靈活的中介流程處理規(guī)則使消息傳遞時(shí)并不以特定的物理地址為目標(biāo),而是根據(jù)所需的流程規(guī)則動(dòng)態(tài)選擇目的地,保證了整個(gè)系統(tǒng)中消息傳遞的動(dòng)態(tài)性和可控性。(3)通過(guò)調(diào)度服務(wù)器監(jiān)視整個(gè)系統(tǒng)、維護(hù)消息中介處理流程當(dāng)某個(gè)中介處理節(jié)點(diǎn)崩潰時(shí),由調(diào)度服務(wù)器啟動(dòng)備用節(jié)點(diǎn)執(zhí)行與崩潰節(jié)點(diǎn)相同功能,當(dāng)沒(méi)用空閑的備用節(jié)點(diǎn)時(shí)則由調(diào)度服務(wù)器挑選某個(gè)運(yùn)行中的中介處理節(jié)點(diǎn)負(fù)責(zé)執(zhí)行崩潰節(jié)點(diǎn)的功能,同時(shí)查找所有使用崩潰中介處理節(jié)點(diǎn)的中介處理流程,動(dòng)態(tài)改變其流程規(guī)則,使其使用新的中介處理節(jié)點(diǎn),從確保流程的正確運(yùn)行。(4)當(dāng)崩潰的中介處理節(jié)點(diǎn)恢復(fù)后,由調(diào)度服務(wù)器調(diào)度,轉(zhuǎn)化為備用節(jié)點(diǎn)。(5)負(fù)載過(guò)高時(shí)中介處理節(jié)點(diǎn)崩潰的主要原因之一為防止此種情況發(fā)生,調(diào)度服務(wù)器實(shí)時(shí)監(jiān)控各個(gè)節(jié)點(diǎn)負(fù)載情況。當(dāng)某個(gè)節(jié)點(diǎn)負(fù)載過(guò)高,調(diào)度服務(wù)器把此節(jié)點(diǎn)部分功能轉(zhuǎn)移給備用節(jié)點(diǎn)或其他負(fù)載較輕的中介處理節(jié)點(diǎn),同時(shí)動(dòng)態(tài)改變相關(guān)流程規(guī)則,從而防止負(fù)載過(guò)高導(dǎo)致節(jié)點(diǎn)崩潰現(xiàn)象出現(xiàn)。
在實(shí)際操作中,JTang Synergy的流程處理規(guī)則以XML文件形式定義,文件中分為作為起點(diǎn)和終點(diǎn)的服務(wù)端點(diǎn)規(guī)則,以及若干中介規(guī)則,每個(gè)中介規(guī)則定義了進(jìn)行何種中間處理, 以及流程下一步所使用的中介規(guī)則或服務(wù)端點(diǎn)規(guī)則。全部服務(wù)端點(diǎn)規(guī)則和中介規(guī)則構(gòu)成了整個(gè)消息處理流程,信息傳遞不是通過(guò)物理地址,而是以規(guī)則名來(lái)判斷,保證了中介規(guī)則的靈活性和物理地址無(wú)關(guān)性。圖2流程規(guī)則部署理具體步驟可以描述為
(1)JTangSynergy的流程設(shè)計(jì)器把中介流程規(guī)則包發(fā)送給服務(wù)處理節(jié)點(diǎn),服務(wù)處理節(jié)點(diǎn)部署該規(guī)則;
(2)調(diào)度服務(wù)器根據(jù)所述規(guī)則對(duì)流程進(jìn)行調(diào)度分配,把各個(gè)的中介規(guī)則發(fā)送到合適的中介處理節(jié)點(diǎn)中,在中介規(guī)則分配過(guò)程中,既要保證每個(gè)中介處理節(jié)點(diǎn)功能相對(duì)單一,有要保證各個(gè)節(jié)點(diǎn)負(fù)載均衡;
(3)中介處理節(jié)點(diǎn)處理流程規(guī)則為每個(gè)中介規(guī)則目的地添加相應(yīng)節(jié)點(diǎn)地址;
經(jīng)過(guò)處理后,對(duì)每一個(gè)中介規(guī)則,服務(wù)接入點(diǎn)和服務(wù)出口點(diǎn),都指明所在的中介處理節(jié)點(diǎn)位置。每一個(gè)中介規(guī)則都是屬于不同的節(jié)點(diǎn)或不同的中介器。消息的頭部沒(méi)有指明它的目標(biāo),只指明了用什么中介規(guī)則處理該消息。這樣就保證了,消息會(huì)動(dòng)態(tài)的選擇下一個(gè)目標(biāo)地址,當(dāng)中介處理接到消息后,可以動(dòng)態(tài)的把消息傳到下一個(gè)目標(biāo)地址,以達(dá)到消息在任何情況下都可以找到相應(yīng)的中介處理節(jié)點(diǎn)處理來(lái)處理消息。圖3標(biāo)準(zhǔn)流程規(guī)則處理具體步驟可以描述為
(1)首先,服務(wù)使用者需要在自身所屬適配器中部署一個(gè)服務(wù)的消費(fèi)者,部署的信息包括該服務(wù)消費(fèi)者的URL地址,處理該消息的中介規(guī)則,以及所要交互的服務(wù);
(2)服務(wù)請(qǐng)求者通過(guò)客戶端程序訪問(wèn)適配器的服務(wù)消費(fèi)者。適配器接受到服務(wù)請(qǐng)求者的請(qǐng)求后,根據(jù)所部署的服務(wù)消費(fèi)者信息,把該請(qǐng)求按一定的規(guī)則轉(zhuǎn)化為ESB的內(nèi)部消息, 在這里,會(huì)賦予每一個(gè)ESB內(nèi)部消息一個(gè)唯一 ID值,并插入到該ESB內(nèi)部消息的消息頭部中,作為識(shí)別該消息的唯一標(biāo)識(shí);
(3)根據(jù)流程路由表和消息頭部的內(nèi)容,則找到消息的目標(biāo)地址。如果目標(biāo)地址為適配器,則把該消息發(fā)送至目標(biāo)適配器所對(duì)應(yīng)的消息通道,并進(jìn)入步驟(5);如果目標(biāo)地址為中介器,則把該消息發(fā)送至目標(biāo)中介器所對(duì)應(yīng)的消息通道,并進(jìn)入步驟(4);
(4)目標(biāo)中介器一直在監(jiān)視自身的消息通道,如果發(fā)現(xiàn)消息通道中有消息,則根據(jù)消息內(nèi)容和中介規(guī)則單元處理消息,并把處理結(jié)果構(gòu)造成ESB消息,消息頭部ID不變,繼續(xù)運(yùn)行步驟(3);
(5)目標(biāo)適配器一直監(jiān)控自身的消息通道,如果發(fā)現(xiàn)消息通道中有消息,則取出該消息。消息內(nèi)容包括請(qǐng)求者,所要調(diào)用的服務(wù)等消息。適配器根據(jù)消息內(nèi)容調(diào)用外部服務(wù),并把結(jié)果轉(zhuǎn)化為ESB消息返回給服務(wù)調(diào)用者。圖4處理流程節(jié)點(diǎn)失效情況具體步驟可以描述為
(1)首先,調(diào)度服務(wù)器發(fā)現(xiàn)中介規(guī)則節(jié)點(diǎn)失效,會(huì)查找本地記錄,獲得失效中介處理節(jié)點(diǎn)上所進(jìn)行的所有中介處理功能;
(2)調(diào)度服務(wù)器查詢系統(tǒng)中是否存在空閑的備用節(jié)點(diǎn)。如存在,選中一個(gè)備用節(jié)點(diǎn),將失效中介處理節(jié)點(diǎn)的全部功能賦此備用節(jié)點(diǎn),并將此并用節(jié)點(diǎn)啟用為中介處理節(jié)點(diǎn)。如果沒(méi)有備用節(jié)點(diǎn),則查詢系統(tǒng)其它中介處理節(jié)點(diǎn),將失效的中介處理節(jié)點(diǎn)的功能賦予系統(tǒng)中功能相近的中介處理節(jié)點(diǎn);
(3)完成功能轉(zhuǎn)移后,查找系統(tǒng)中與失效中介處理節(jié)點(diǎn)有關(guān)的所有中介流程。把每個(gè)流程規(guī)則中失效中介處理節(jié)點(diǎn)的地址更新為步驟(2)中選定的新節(jié)點(diǎn)的地址。并動(dòng)態(tài)重新部署每個(gè)流程,從而保證每個(gè)流程的正確性。圖5調(diào)整中介處理平衡節(jié)點(diǎn)負(fù)載流程圖具體可描述為
(1)調(diào)度服務(wù)器監(jiān)控各中介節(jié)點(diǎn)負(fù)載狀況。發(fā)現(xiàn)某中介節(jié)點(diǎn)持續(xù)負(fù)載過(guò)高;
(2)調(diào)度服務(wù)器估算次節(jié)點(diǎn)負(fù)載情況,如發(fā)現(xiàn)可能導(dǎo)致節(jié)點(diǎn)崩潰,則進(jìn)行負(fù)載平衡處
理;
(3)將負(fù)載過(guò)高節(jié)點(diǎn)的部分功能轉(zhuǎn)移到備用節(jié)點(diǎn)或負(fù)載較輕的中介節(jié)點(diǎn);
(4)完成功能轉(zhuǎn)移后,查找系統(tǒng)中與失效中介處理節(jié)點(diǎn)有關(guān)的所有中介流程,把每個(gè)流程規(guī)則中失效中介處理節(jié)點(diǎn)的地址更新為步驟(3)中選定的新節(jié)點(diǎn)的地址,并動(dòng)態(tài)重新部署每個(gè)流程,從而保證每個(gè)流程的正確性。以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也應(yīng)視為本發(fā)明的保護(hù)范圍內(nèi)。
權(quán)利要求
1.一種分布式企業(yè)服務(wù)總線中介流程可靠性維護(hù)設(shè)備,包括適配器、企業(yè)服務(wù)總線、服務(wù)目錄,其特征在于,所述企業(yè)服務(wù)總線中包括服務(wù)處理節(jié)點(diǎn)、中介處理節(jié)點(diǎn)、調(diào)度服務(wù)器、 備用節(jié)點(diǎn);所述服務(wù)處理節(jié)點(diǎn)用于安裝適配器、部署服務(wù); 所述中介處理節(jié)點(diǎn)用于提供中介處理功能;所述調(diào)度服務(wù)器用于所述企業(yè)服務(wù)總線的環(huán)境監(jiān)視、統(tǒng)一管理服務(wù)的接入、流程的部署;所述備用節(jié)點(diǎn)與所述中介處理節(jié)點(diǎn)具有相同功能,通過(guò)所述調(diào)度服務(wù)器的調(diào)度,使其處于運(yùn)行或者不運(yùn)行狀態(tài)。
2.根據(jù)權(quán)利要求1所述的一種分布式企業(yè)服務(wù)總線中介流程可靠性維護(hù)設(shè)備,其特征在于,所述企業(yè)服務(wù)總線采用分布式架構(gòu)。
3.一種分布式企業(yè)服務(wù)總線中介流程可靠性維護(hù)方法,包括流程規(guī)則部署流程和標(biāo)準(zhǔn)流程規(guī)則處理流程,其特征在于,流程規(guī)則部署流程包括以下步驟1)通過(guò)流程設(shè)計(jì)器把中介流程規(guī)則包發(fā)送給服務(wù)處理節(jié)點(diǎn),所述服務(wù)處理節(jié)點(diǎn)部署所述規(guī)則;2)調(diào)度服務(wù)器根據(jù)所述規(guī)則對(duì)流程進(jìn)行調(diào)度分配,把各個(gè)的中介規(guī)則發(fā)送到合適的中介處理節(jié)點(diǎn)中;3)所述中介處理節(jié)點(diǎn)處理流程規(guī)則,為每個(gè)中介規(guī)則目的地添加相應(yīng)節(jié)點(diǎn)地址。
4.根據(jù)權(quán)利要求3所述的一種分布式企業(yè)服務(wù)總線中介流程可靠性維護(hù)方法,其特征在于,當(dāng)某一中介處理節(jié)點(diǎn)出現(xiàn)問(wèn)題時(shí),所述調(diào)度服務(wù)器的調(diào)度包括以下步驟1)所述調(diào)度服務(wù)器發(fā)現(xiàn)中介處理節(jié)點(diǎn)失效,通過(guò)查找本地記錄,獲得所述失效中介處理節(jié)點(diǎn)上所進(jìn)行的所有中介處理功能;2)所述調(diào)度服務(wù)器通過(guò)查詢系統(tǒng)中是否存在空閑的備用節(jié)點(diǎn)進(jìn)行判斷,如存在,選中一個(gè)備用節(jié)點(diǎn),將所述失效中介處理節(jié)點(diǎn)的全部功能轉(zhuǎn)移給此備用節(jié)點(diǎn),并將此備用節(jié)點(diǎn)啟用為中介處理節(jié)點(diǎn),此時(shí)此備用節(jié)點(diǎn)將處于運(yùn)行狀態(tài);如不存在,則查詢所述系統(tǒng)中其它中介處理節(jié)點(diǎn),將失效的中介處理節(jié)點(diǎn)的功能轉(zhuǎn)移給所述系統(tǒng)中功能相近的中介處理節(jié)占.3)所述調(diào)度服務(wù)器完成功能轉(zhuǎn)移后,查詢系統(tǒng)中與所述失效中介處理節(jié)點(diǎn)有關(guān)的所有中介流程,把每個(gè)流程規(guī)則中失效中介處理節(jié)點(diǎn)地址更新為步驟2)中選定的新節(jié)點(diǎn)地址, 并動(dòng)態(tài)重新部署每個(gè)流程。
5.根據(jù)權(quán)利要求3所述的一種分布式企業(yè)服務(wù)總線中介流程可靠性維護(hù)方法,其特征在于,當(dāng)系統(tǒng)負(fù)載過(guò)高時(shí),所述調(diào)度服務(wù)器的調(diào)度包括以下步驟1)所述調(diào)度服務(wù)器監(jiān)控各中介節(jié)點(diǎn)負(fù)載狀況,判斷某中介節(jié)點(diǎn)持續(xù)負(fù)載是否過(guò)高;2)所述調(diào)度服務(wù)器估算此節(jié)點(diǎn)負(fù)載情況,如發(fā)現(xiàn)可能導(dǎo)致此節(jié)點(diǎn)崩潰,則進(jìn)行負(fù)載平衡處理;3)所述調(diào)度服務(wù)器將負(fù)載過(guò)高節(jié)點(diǎn)的部分功能轉(zhuǎn)移到備用節(jié)點(diǎn)或負(fù)載較輕的中介節(jié)占.4)所述調(diào)度服務(wù)器完成功能轉(zhuǎn)移后,查詢系統(tǒng)中與失效中介處理節(jié)點(diǎn)有關(guān)的所有中介流程,把每個(gè)流程規(guī)則中失效中介處理節(jié)點(diǎn)地址更新為步驟3)中選定的新節(jié)點(diǎn)地址,并動(dòng)態(tài)重新部署每個(gè)流程。
6.根據(jù)權(quán)利要求3飛任意一項(xiàng)所述的一種分布式企業(yè)服務(wù)總線中介流程可靠性維護(hù)方法,其特征在于,所述系統(tǒng)采用分布式架構(gòu)。
全文摘要
本發(fā)明公開(kāi)了一種分布式企業(yè)服務(wù)總線中介流程可靠性維護(hù)設(shè)備及方法,通過(guò)將中介處理節(jié)點(diǎn)采用分布式架構(gòu)及由服務(wù)器統(tǒng)一調(diào)度中介處理節(jié)點(diǎn)的行為,為系統(tǒng)的中介處理功能提供了最大的靈活性,最大限度的保證了企業(yè)服務(wù)總線的可靠性、健壯性和穩(wěn)定性。
文檔編號(hào)H04L12/24GK102158361SQ201110094680
公開(kāi)日2011年8月17日 申請(qǐng)日期2011年4月15日 優(yōu)先權(quán)日2011年4月15日
發(fā)明者吳健, 吳朝暉, 尹建偉, 李瑩, 祁秉鈺, 鄧水光, 陳韓偉 申請(qǐng)人:浙江大學(xué)