新四季網

業務處理方法和相關裝置及相關系統的製作方法

2023-04-26 07:11:41

專利名稱:業務處理方法和相關裝置及相關系統的製作方法
技術領域:
本發明涉及通信技術領域,具體涉及ー種業務處理方法和相關裝置及相關系統。
背景技術:
當前,網際網路使得網民無論何時、何地都能方便的通過瀏覽器訪問需要的資源。例如,查找資料用百度搜索或google搜索、買物品到淘寶、聽音樂到蘋果的AppStore、社交到facebook或天涯。這些網絡應用針對全球用戶,24小時在線,任何中斷對企業還是用戶都可能是災難性的。但是,網際網路發展的日新月異,用戶數還在不斷增多,系統需擴容、業務需發展;而新特性不停增加或修改bug,也需要經常更新版本。傳統C/S系統,版本更新過程需要中斷業務(用戶在系統升級過程中是不能訪問 的),此時往往需提前通知用戶,在什麼時間段內系統不可用(類似於停水、停電通知)。B/S系統出現後,由於瀏覽器端的零部署,一定程度上簡化了系統更新的複雜性,雖然沒有客戶端的升級過程,但伺服器端進行軟體升級時,服務仍會中斷,難以保證瀏覽器24小時都能訪問伺服器。

發明內容
本發明實施例提供業務處理方法和相關裝置及相關系統,以在儘量不中斷服務的情況下,實現服務節點的組件包的升級服務。為解決上述技術問題,本發明實施例提供以下技術方案本發明實施例一方面提供一種業務處理方法,可包括服務節點接收客戶端發送的攜帯有服務組件包版本信息的服務請求;所述服務節點若確定出所述服務請求對應的第一版本的服務組件包所述服務節點當前還未安裝,則獲取所述第一版本的服務組件包進行安裝,並保持基於當前已安裝的第二版本的服務組件包運行的服務,其中,所述第一版本的服務組件包和第二版本的服務組件包對應相同類型的服務,且所述第一版本的服務組件包和第二版本的服務組件包能夠獨立運行。本發明實施例另一方面還提供ー種服務節點,可包括接收模塊,用於接收客戶端發送的攜帯有服務組件包版本信息的服務請求;處理模塊,用於在確定出所述接收模塊接收的服務請求對應的第一版本的服務組件包所述服務節點當前還未安裝時,獲取所述第一版本的服務組件包進行安裝,並保持基於當前已安裝的第二版本的服務組件包運行的服務,所述第一版本的服務組件包和第二版本的服務組件包對應相同類型的服務,且所述第一版本的服務組件包和第二版本的服務組件包能夠獨立運行。本發明實施例另一方面還提供ー種分布式服務系統,可包括ー個或多個服務節點;其中,所述服務節點,用於接收客戶端發送的攜帯有服務組件包版本信息的服務請求;若確定出所述服務請求對應的第一版本的服務組件包當前還未安裝,則獲取所述第一版本的服務組件包進行安裝,並保持基於當前已安裝的第二版本的服務組件包運行的服務,其中,所述第一版本的服務組件包和第二版本的服務組件包對應相同類型的服務。本發明實施例另一方面還提供ー種業務處理系統,可包括客戶端,用於發送攜帯有服務組件包版本信息的服務請求;至少ー個服務節點,用於接收所述客戶端發送的攜帯有服務組件包版本信息的服務請求;若確定出該服務請求對應的第一版本的服務組件包所述服務節點當前還未安裝,則獲取第一版本的服務組件包進行安裝,並保持基於當前已安裝的第二版本的服務組件包運行的服務,其中,第一版本的服務組件包和第二版本的服務組件包對應相同類型的服務,且第一版本的服務組件包和第二版本的服務組件包能夠獨立運行。由上可見,本發明實施例中服務節點接收到來自客戶端的服務請求後,若確定出該服務請求對應的第一版本的服務組件包當前還未安裝,則獲取該第一版本的服務組件包 進行安裝,並保持基於當前已安裝的第二版本的服務組件包運行的服務,其中,第一版本的服務組件包和第二版本的服務組件包對應相同類型的服務,且所述第一版本的服務組件包和第二版本的服務組件包能夠獨立運行,基於上述機制,由於服務節點在升級提供某類型服務的服務組件包的過程中,服務節點中當前已安裝的提供相同類型服務的ー個或多個版本的服務組件包仍然在線運行,這樣就有利於實現在服務節點升級服務組件包時也儘量不中斷相應類型的服務。


為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。圖I是本發明實施例提供的ー種業務處理方法的流程示意圖;圖2是本發明實施例提供的另ー種業務處理方法的流程示意圖;圖3是本發明實施例提供的ー種網絡架構示意圖;圖4是本發明實施例提供的ー種服務節點的架構示意圖;圖5_a是本發明實施例提供的另ー種服務節點的架構示意圖;圖5_b是本發明實施例提供的另ー種服務節點的架構示意圖;圖5-c是本發明實施例提供的另ー種服務節點的架構示意圖;圖5_d是本發明實施例提供的另ー種服務節點的架構示意圖;圖6_a是本發明實施例提供的ー種分布式服務系統的架構示意圖;圖6_b是本發明實施例提供的另ー種分布式服務系統的架構示意圖;圖7_a是本發明實施例提供的ー種業務處理系統的示意圖;圖7_b是本發明實施例提供的另ー種業務處理系統的示意圖。
具體實施例方式本發明實施例提供業務處理方法和相關裝置及相關系統,以在儘量不中斷服務的情況下,實現服務節點的組件包的升級服務。為使本技術領域的人員更好地理解本發明方案,下面結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅是本發明一部分的實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都應當屬於本發明保護的範圍。本發明的說明書和權利要求書及上述附圖中的術語「第一」、「第二」、「第三」 「第四」等(如果存在)是用於區別類似的對象,而不必用於描述特定的順序或先後次序。應該 理解這樣使用的數據在適當情況下可以互換,以便這裡描述的本發明的實施例例如能夠以除了在這裡圖示的或否則描述的那些以外的順序實施。此外,術語「包括」和「具有」以及他們的任何變形,意圖在於覆蓋不排他的包含,以便包含一系列単元的過程、方法、系統、產品或設備不必限於那些單元,而是可包括沒有清楚地列出的或對於這些過程、方法、產品或設備固有的其它單元。以下通過實施例分別進行詳細說明。本發明ー種業務處理方法的一個實施例,可包括服務節點接收來自客戶端的服務請求;服務節點若確定出該服務請求對應的第一版本的服務組件包該服務節點當前還未安裝,則獲取該第一版本的服務組件包進行安裝,並保持基於當前已安裝的第二版本的服務組件包運行的服務,其中,第一版本的服務組件包和第二版本的服務組件包對應相同類型的服務,且第一版本的服務組件包和第二版本的服務組件包能夠獨立運行。參見圖1,本發明實施例提供的ー種業務處理方法,可包括101、服務節點接收來自客戶端的服務請求;其中,例如可將I臺物理伺服器看做是I個服務節點,分布式服務系統可包括ー個或多個物理伺服器,也就是說,ー個分布式服務系統可包括ー個或多個服務節點。或者可將能夠提供服務的其它對象看做是服務節點。在本發明ー些實施例中,來自客戶端的服務請求可攜帶服務組件包的版本信息(其中,該版本信息可以是能夠指示出該服務請求所對應服務組件包的版本的任何信息,例如,該版本信息可為版本號,或者不同數據格式的服務請求對應不同版本的服務組件包,則此時服務請求的數據格式可作為版本信息,又或者服務請求攜帯的其它能夠間接指示出對應服務組件包的信息,可看成是版本信息,以此類推),當然該服務請求還可攜帶該服務請求對應的服務類型信息等等。例如,若該服務請求對應第一版本的服務組件包,則該服務請求攜帯的服務組件包的版本信息指示出服務組件包版本為第一版本;若該服務請求所請求服務對應的服務類型為搜索服務,則該服務請求攜帯的服務組件包的服務類型信息指示出服務類型為搜索服務,以此類推。102、服務節點若確定出該服務請求對應的第一版本的服務組件包當前還未安裝,則獲取該第一版本的服務組件包進行安裝,並保持基於當前已安裝的第二版本的服務組件包運行的服務(即,保持當前已安裝的第二版本的服務組件在線運行),其中,第一版本的服務組件包和第二版本的服務組件包對應相同類型的服務。其中,第一版本的服務組件包可包括ー個或多個版本的服務組件包(即第一版本的服務組件包並非一定是指ー個版本的服務組件包,也可能指多個版本的服務組件包),第ニ版本的服務組件包也可包括ー個或多個版本的服務組件包,當然,第一版本的服務組件包和第二版本的服務組件包是不同版本的服務組件包。第一版本的服務組件包和第二版本的服務組件包之間可獨立運行,即提供同類型服務的不同版本的服務組件包之間可獨立運行(即,具有物理隔離特點)。其中,第一版本的服務組件包和第二版本的服務組件包對應相同類型的服務,例如,第一版本的服務組件包和第二版本的服務組件包對應服務類型都為搜索服務、郵件服務、註冊服務或下載服務等。在本發明ー些實施例中,服務組件包(如第一版本的服務組件包和第二版本的服務組件包)中可包含服務執行程序(服務執行程序例如可包括可執行的腳本、庫文件、ニ進位文件等,通過運行服務執行程序以提供對應服務)和描述文件,其中,該描述文件例如可用於描述該服務組件包的版本、服務執行程序對外提供的業務接ロ,當然服務組件包中的描述文件還可用於描述該服務組件包的其它相關信息。服務組件包被安裝到服務節點後,服務節點可將該服務組件包中的描述文件加載到內存,以便通過查詢內存中加載的描述文件來獲知對應服務組件包的版本、服務執行程序對外提供的業務接ロ等。由上可見,本實施例中服務節點接收到來自客戶端的服務請求後,若確定出該服 務請求對應的第一版本的服務組件包當前還未安裝,則獲取該第一版本的服務組件包進行安裝,並保持基於當前已安裝的第二版本的服務組件包運行的服務,其中,第一版本的服務組件包和第二版本的服務組件包對應相同類型的服務,且第一版本的服務組件包和第二版本的服務組件包能夠獨立運行,基於上述機制,由於服務節點在升級提供某類型服務的服務組件包的過程中,服務節點中當前已安裝的提供相同類型服務的ー個或多個版本的服務組件包仍然在線運行,這樣就有利於實現在服務節點升級服務組件包時也儘量不中斷相應類型的服務。在本發明ー些實施例中,服務節點確定服務請求對應的第一版本的服務組件包是否已安裝的方式可以是多種多樣的,例如,假設服務節點將已安裝的服務組件包中的描述文件加載到內存中,則服務節點可在內存中查找是否有描述服務組件包的版本為第一版本的描述文件,若有(即內存中有描述文件描述的服務組件包的版本為第一版本),則表不服務請求對應的第一版本的服務組件包已安裝,若沒有(即內存中沒有任何描述文件描述的服務組件包的版本為第一版本),則表示服務請求對應的第一版本的服務組件包未安裝。當然,服務節點還可通過其它方式來記錄已安裝的服務組件包的版本信息,通過查詢服務節點記錄的已安裝服務組件包的版本信息,來確定服務請求對應的第一版本的服務組件包是否已安裝。此外,在本發明的一個實施例中,服務節點若確定出服務請求對應的第一版本的服務組件包已安裝,則服務節點可利用第一版本的服務組件包中描述文件所描述的業務接ロ,調用第一版本的服務組件包中的服務執行程序以提供相應的業務服務,並可得到對應的服務結果數據。可以理解,提供同類型服務的不同版本的服務組件包具有不同的業務接ロ,服務節點根據提供同類型服務的不同版本的服務組件中的描述文件來獲取相應版本服務組件包的業務接ロ,進而利用該業務接ロ調用相應版本的服務組件包中的服務執行程序以提供相應的業務服務,並可得到對應的服務結果數據,這就實現了基於版本的服務請求分發控制。在本發明的一個實施例中,服務節點獲取第一版本的服務組件包進行安裝的方式可以是多種多樣的,假設服務節點與分布式服務系統組件倉庫以可通信方式連接,該服務節點還與網際網路軟體中心以可通信方式連接(其中,例如服務節點與網際網路軟體中心可直接通信,或,服務節點與網際網路軟體中心可通過分布式服務系統組件倉庫通信,或,服務節點與網際網路軟體中心可通過其它一個或多個設備通信);服務節點可先在本地磁碟組件庫(其中,服務節點的本地磁碟組件庫中可包含與該服務節點相關的多個服務組件包等)中查找第一版本的服務組件包;若在本地磁碟組件庫中查找到了第一版本的服務組件包,則服務節點從該本地磁碟組件庫中獲取查找到的第一版本的服務組件包進行安裝;若在該本地磁碟組件庫中未查找第一版本的服務組件包,則服務節點可在分布式服務系統組件倉庫(其中,分布式服務系統組件倉庫中例如可包含與該分布式服務系統中的各服務節點相關的多個服務組件包等)中查找第一版本的服務組件包(或,服務節點此時也可不到分布式服務系統組件倉庫查找第一版本的服務組件包,而是請求分布式服務系統組件倉庫下發第一版本的服務組件包,若分布式服務系統組件倉庫當前存在第一版本的服務組件包,則分布式服務系統組件倉庫可將第一版本的服務組件包,下發到該服務節點及分布式服務系統的其它ー個或多個服務節點的本地磁碟組件庫,若分布式服務系統組件倉庫當前不存在第一版本的服務組件包,則分布式服務系統組件倉庫可先從網際網路軟體中心獲取第一版本的服務組件包,並在從網際網路軟體中心獲取到第一版本的服務組件包之後,將第一版本的 服務組件包下發至該服務節點及分布式服務系統的其它ー個或多個其它服務節點的本地磁碟組件庫,而後該服務節點再從其本地磁碟組件庫中獲取第一版本的服務組件包進行安裝);若在該分布式服務系統組件倉庫中查找到了第一版本的服務組件包,則服務節點可從分布式服務系統組件倉庫中獲取查找到的第一版本的服務組件包進行安裝(服務節點還可將從分布式服務系統組件倉庫中獲取到的第一版本的服務組件包寫入其本地磁碟組件庫);若服務節點在分布式服務系統組件倉庫中未查找到第一版本的服務組件包,則月艮務節點可從網際網路軟體中心(其中,網際網路軟體中心例如可包含當前已發布的各種常用版本的服務組件包)獲取第一版本的服務組件包進行安裝(或,服務節點此時也可通知分布式服務系統組件倉庫下載第一版本的服務組件包,而後分布式服務系統組件倉庫從網際網路軟體中心獲取第一版本的服務組件包,分布式服務系統組件倉庫在從網際網路軟體中心獲取到第一版本的服務組件包之後,將第一版本的服務組件包下發給該服務節點及分布式服務系統的其它ー個或多個其它服務節點的本地磁碟組件庫,此後,服務節點再從本地磁碟組件庫或從分布式服務系統組件倉庫獲取第一版本的服務組件包進行安裝)。可以理解,若基於本地磁碟組件庫、分布式服務系統組件倉庫(其中,分布式服務系統組件倉庫可配置多個網際網路軟體中心鏡像)、網際網路軟體中心多級部署方式,服務節點可從分布式服務系統組件倉庫或者網際網路軟體中心下載服務組件包到本地磁碟組件庫,而分布式服務系統組件倉庫又可從網際網路軟體中心下載服務組件包,這樣有利於簡化服務組件包的管理並提高抗災能力。在本發明ー些實施例中,可採用異步響應方式進行請求響應,例如在接收到來自客戶端的服務請求後,服務節點可先向該客戶端發送服務請求對應的請求響應(服務節點從接收到服務請求,到向客戶端發送該服務請求對應請求響應之間的時間間隔可很短,例如不超過O. I秒、O. 5秒、I秒或其它時長),在調用第一版本的服務組件包中的服務執行程序以提供相應的業務服務,得到對應的服務結果數據之後,向該客戶端推送服務結果數據;或,在接收到來自客戶端的服務請求後,服務節點可先向該客戶端發送該服務請求對應的攜帯有服務應答標識的請求響應(服務節點從接收到服務請求,到向客戶端發送該服務請求對應的攜帯有服務應答標識的請求響應之間的時間間隔可很短,例如不超過O. I秒、O. 5秒、I秒或其它的時長);若接收到來自客戶端根據請求響應發送的結果查詢請求(攜帯該服務應答標識的結果查詢請求,客戶端可利用該服務應答標識向服務節點輪詢服務結果數據),則在調用所述第一版本的服務組件包中的服務執行程序以提供相應的業務服務,得到對應的服務結果數據後,則服務節點可向該客戶端發送該服務結果數據。當然,服務節點亦可採用其它方式向客戶端反饋服務結果數據,若無需向客戶端反饋服務結果數據,則可省略上述步驟。
為便於更好的理解和實施本發明實施例的上述方案,下面通過ー個具體應用場景來進行舉例描述。參見圖2,本發明實施例提供的另ー種業務處理方法,可包括201、客戶端Al向服務節點BI發送服務請求ql ;其中,例如可將I臺物理伺服器看做是I個服務節點,分布式服務系統可包括ー個或多個物理伺服器,也就是說,ー個分布式服務系統可包括ー個或多個服務節點。或者可將能夠提供服務的其它對象看做是服務節點。在本發明的一個實施例中,客戶端Al向服務節點BI發送的服務請求ql可攜帯服務組件包的版本信息(其中,該版本信息可為任何可指示出該服務請求ql所對應服務組件包的版本的信息)和該服務請求ql對應的服務類型信息(其中,該服務類型信息指示出該服務請求ql所對應請求服務的類型)等。例如若該服務請求ql對應S2. O版本的服務組件包(為便於引述,在下面的描述中以服務請求ql對應服務組件包的版本為S2. O版本為例),則該服務請求ql攜帯的服務組件包的版本信息指示出服務組件包的版本為S2. O版本;若該服務請求ql所請求服務的服務類型為搜索服務,則該服務請求ql攜帯的服務組件包的服務類型信息指示出服務類型為搜索服務,以此類推。202、服務節點BI接收來自客戶端Al的服務請求ql,服務節點BI確定服務請求ql對應的S2. O版本的服務組件包是否已安裝;若未安裝,則執行步驟203 ;若已經安裝,則執行步驟205。在本發明ー些實施例中,服務組件包(如S2. O版本的服務組件包和第二版本的服務組件包)中可包含服務執行程序(服務執行程序例如可包括可執行的腳本、庫文件、ニ進位文件等,通過運行服務執行程序以提供對應服務)和描述文件,其中,該描述文件例如可用於描述該服務組件包的版本、服務執行程序對外提供的業務接ロ,當然服務組件包中的描述文件還可用於描述該服務組件包的其它相關信息。服務組件包被安裝到服務節點後,服務節點可將該服務組件包中的描述文件加載到內存,以便通過查詢內存中加載的描述文件來獲知對應服務組件包的版本、服務執行程序對外提供的業務接ロ等。在本發明ー些實施例中,服務節點BI確定服務請求對應的S2. O版本的服務組件包是否已安裝的方式可以是多種多樣的,例如,假設服務節點將已安裝的服務組件包中的描述文件加載到內存中,則服務節點可在內存中查找是否有描述服務組件包的版本為S2. O版本的描述文件,若有(即內存中有描述文件描述的服務組件包的版本為S2. O版本),則表示服務請求對應的S2. O版本的服務組件包已安裝,若沒有(即內存中沒有任何描述文件描述的服務組件包的版本為S2. O版本),則表示服務請求對應的S2. O版本的服務組件包未安裝。當然,服務節點還可通過其它方式來記錄已安裝的服務組件包的版本信息,通過查詢服務節點記錄的已安裝服務組件包的版本信息,來確定服務請求對應的S2. O版本的服務組件包是否已安裝。203、服務節點BI向客戶端Al發送服務請求ql對應的請求響應Rql ;其中,請求響應Rql可攜帶請求服務失敗標識,服務節點BI利用請求響應Rql攜帶的請求服務失敗標識,向客戶端Al指示當前無法提供服務請求ql對應的服務;執行步驟
204。204、服務節點BI獲取該S2. O版本的服務組件包進行安裝,並保持基於當前已安裝的第二版本的服務組件包運行的服務(即,保持當前已安裝的第二版本的服務組件包在線運行)。其中,S2. O版本的服務組件包和第二版本的服務組件包對應相同類型的服務。例如,S2. O版本的服務組件包和第二版本的服務組件包對應服務類型都為搜索服務、郵件服務、註冊服務或下載服務等。在本發明的一個實施例中,服務節點BI當前已安裝的第二版本的服務組件包可包括I個或多個版本的服務組件包,也就是說,在服務節點BI獲取該S2. O版本的服務組件包進行安裝的過程中,可保持當前已安裝的提供同類型服務的I個或多個版本的服務組件包(服務類型與S2. O版本的服務組件包相同)在線運行;S2. O版本的服務組件包和第二版本的服務組件包之間可獨立運行。在本發明的一個實施例中,服務節點BI獲取S2. O版本的服務組件包進行安裝的方式可以是多種多樣的。例如參見圖3,服務組件包例如可採用多級部署方式,本地磁碟組件庫部署在服務節點BI (此處服務節點BI為一臺物理伺服器為例)中,分布式服務系統組件倉庫部署在分布式服務系統中,分布式服務系統組件倉庫和網際網路軟體中心可通過英特網(internet)連接,其中,網際網路軟體中心例如可包含當前已發布的各種常用版本的服務組件包;分布式服務系統組件倉庫中例如可包含多個與該分布式服務系統相關的服務組件包等,分布式服務系統組件倉庫可配置多個網際網路軟體中心鏡像;本地磁碟組件庫中可包含多個與服務節點BI相關的服務組件包等。例如,服務節點BI可先在本地磁碟組件庫中查找是否存在S2. O版本的服務組件包;若在該本地磁碟組件庫中查找到了 S2. O版本的服務組件包,則服務節點BI從本地磁碟組件庫中獲取查找到的S2. O版本的服務組件包進行安裝;若在本地磁碟組件庫中未查找S2. O版本的服務組件包,則服務節點BI可在分布式服務系統組件倉庫中查找S2. O版本的服務組件包(或者,服務節點BI此時也可不到分布式服務系統組件倉庫查找S2. O版本的服務組件包,而是請求分布式服務系統組件倉庫下發第一版本的服務組件包,若分布式服務系統組件倉庫當前存在S2. O版本的服務組件包,則分布式服務系統組件倉庫可將S2. O版本的服務組件包下發到服務節點BI及分布式服務系統的其它ー個或多個其它服務節點的本地磁碟組件庫,若分布式服務系統組件倉庫當前不存在S2. O版本的服務組件包,則分布式服務系統組件倉庫可先從網際網路軟體中心獲取S2. O版本的服務組件包,並在從網際網路軟體中心獲取到S2. O版本的服務組件包之後,將S2. O版本的服務組件包下發至該服務節點BI及分布式服務系統的其它ー個或多個其它服務節點的本地磁碟組件庫,而後該服、務節點BI再從其本地磁碟組件庫中獲取S2. O版本的服務組件包進行安裝);若在該分布式服務系統組件倉庫中查找到了 S2. O版本的服務組件包,則服務節點BI從分布式服務系統組件倉庫中獲取查找到的S2. O版本的服務組件包進行安裝(服務節點BI還可將從分布式服務系統組件倉庫中獲取到的S2. O版本的服務組件包寫入本地磁碟組件庫);若服務節點BI在分布式服務系統組件倉庫中未查找到S2. O版本的服務組件包,則服務節點BI可從網際網路軟體中心獲取S2. O版本的服務組件包進行安裝(或者,服務節點BI此時也可通知分布式服務系統組件倉庫下載S2. O版本的服務組件包,而後分布式服務系統組件倉庫從網際網路軟體中心獲取S2. O版本的服務組件包,並在從網際網路軟體中心獲取到S2. O版本的服務組件包之後,將S2. O版本的服務組件包下發給服務節點BI及分布式服務系統的其它一個或多個其它服務節點的本地磁碟組件庫,此後,服務節點BI再從本地磁碟組件庫或從分布式服務系統組件倉庫獲取S2. O版本的服務組件包進行安裝)。可以理解的是,若基於本地磁碟組件庫、分布式服務系統組件倉庫、網際網路軟體中心多級部署方式,服務節點可從分布式服務系統組件倉庫或者網際網路軟體中心下載服務組 件包到本地磁碟組件庫,分布式服務系統組件倉庫可從網際網路軟體中心下載服務組件包,有利於簡化服務組件包的管理並提聞抗災能力。可以理解的是,在其它實施方式中,服務組件包也可採用其它的分級式或集中式部署,而服務節點BI可採用與之對應的方式獲取需要的服務組件包進行安裝。可以理解的是,步驟203和204之間沒有必然的先後順序,或者步驟204也可先於步驟203執行,或者步驟204和步驟203也可同步執行。當然也可省略步驟203。205、服務節點BI向客戶端Al發送服務請求ql對應的請求響應Rq2 ;在本發明的一個實施例中,服務節點BI向客戶端Al發送的服務請求ql對應的請求響應Rq2中例如可攜帯服務應答標識Rq2_ID,而客戶端Al可利用該服務應答標識Rq2_ID來向服務節點BI獲取服務請求ql對應的服務結果數據(若有需要反饋的服務結果數據)。在本發明的一個實施例中,服務節點BI從接收到服務請求ql,到向客戶端Al發送該服務請求ql對應請求響應Rq2之間的時間間隔可很短,例如時間間隔可不超過O. I秒、
O.5秒、O. 8秒、I秒、5秒或其它時長)。206、服務節點BI利用已經安裝的S2. O版本的服務組件包中的描述文件所描述的業務接ロ,調用S2. O版本的服務組件包中的服務執行程序以提供相應的業務服務,並可得到對應的服務結果數據,執行步驟207。可以理解的是,步驟205和206之間沒有必然的先後順序,或者步驟205也可先於步驟206開始執行,或者步驟206和步驟205也可同步開始執行。當然也可省略步驟205。207、在調用S2. O版本的服務組件包中的服務執行程序以提供相應的業務服務,並得到對應的服務結果數據之後,服務節點BI若接收到來自客戶端Al的攜帯有服務應答標識Rq2_ID的結果查詢請求(其中,客戶端可利用該服務應答標識Rq2_ID向服務節點輪詢服務請求ql對應的服務結果數據),則服務節點BI可向客戶端Al發送該服務結果數據。在本發明另一實施例中,在調用S2. O版本的服務組件包中的服務執行程序以提供相應的業務服務,並得到對應的服務結果數據之後,服務節點BI也可直接向客戶端Al推送該服務結果數據。
本實施例下面舉例提供ー種服務節點的模塊架構。參見圖4,本發明實施例的一種服務節點可包括內核401 (kernel)、部署代理402 (deployagent)、本地磁碟組件庫403和已安裝組件包404。內核401可在初始化時通過配置信息加載所需的多個服務組件包,可將服務組件包的描述文件加載到內存中,以便利用內存中的描述文件來控制服務請求的分發;部署代理402,主要負責服務節點的服務組件包管理,包括所在服務節點的服務組件包、內核401加載的服務組件包的查詢,以及服務組件包的下載等等功能。本地磁碟組件庫403,存放服務組件包的資料庫。下面舉例圖4所示架構服務節點的ー種可能的業務處理流程。
例如,當服務節點接收到來自客戶端的服務請求ql後,kernel 401可確定服務請求對應的S2. O版本的服務組件包當前是否已安裝,若已安裝,則將服務請求ql加入請求隊列中,kernel 401還可向客戶端反饋請求響應Rq2 (其中可攜帯服務應答標識Rq2_ID),隊列線程從請求隊列中取出服務請求ql,並調用S2. O版本的服務組件包中的服務處理程序來處理服務請求ql,服務請求ql對應的處理結果數據可放入返回隊列中,kernel 401可直接向客戶端推送服務請求ql對應的處理結果數據(或可在客戶端利用服務應答標識Rq2_ID來輪詢時向客戶端發送服務請求ql對應的處理結果數據)。若kernel 401確定S2. O版本的服務組件包當前還未安裝,kernel 401可向客戶端發送攜帶請求服務失敗標識的請求響應Rql,kernel 401可進ー步指示部署代理402獲取S2. O版本的服務組件包(或kernel 401也可提示用戶需安裝S2. O版本的服務組件包,部署代理402可在用戶指令的指示下獲取S2. O版本的服務組件包,部署代理402可先到本地磁碟倉庫查找,若查找到,則kernel 401可將S2. O版本的服務組件包的描述文件加載到內存;若沒查找到,則部署代理402可從分布式服務系統組件倉庫下載S2. O版本的服務組件包到本地磁碟組件庫(其中,若分布式服務系統組件倉庫當前也沒有S2. O版本的服務組件包,則分布式服務系統組件倉庫可從網際網路軟體中心下載),部署代理402將S2. O版本的服務組件包下載到本地磁碟組件庫之後可通知kernel 401安裝加載;kernel 401安裝加載S2. O版本的服務組件包後便可處理需S2. O版本的服務組件包來處理的服務請求。由上可見,本實施例中服務節點接收到來自客戶端的服務請求後,若確定出該服務請求對應的某版本的服務組件包當前還未安裝,則獲取該某版本的服務組件包進行安裝,並保持基於當前已安裝的其它版本的服務組件包運行的服務,其中,上述某版本的服務組件包和上述其它版本的服務組件包對應相同類型的服務,且服務節點中提供某類型服務的各版本的服務組件包能夠獨立運行,基於上述機制,由於服務節點在升級提供某類型服務的服務組件包的過程中,服務節點中當前已安裝的提供相同類型服務的ー個或多個版本的服務組件包還在線運行,這樣就有利於實現在服務節點升級服務組件包時也儘量不中斷相應類型的服務。進ー步的,通過多個版本的服務組件包同時在線運行,解決服務節點軟體不中斷升級和特性増加;通過在服務請求中攜帯服務類型信息、版本信息等來區別不同服務類型和版本的服務組件包;通過異步控制請求反饋和多級組件倉庫的部署,有利於保證多版本服務組件包運行和在線特性増加的可靠性;通過本地磁碟組件庫到分布式服務系統組件倉庫的部署,有利於簡化分布式系統的服務組件包管理。
需要說明的是,對於前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本發明並不受所描述的動作順序的限制,因為依據本發明,某些步驟可以採用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬於優選實施例,所涉及的動作和模塊並不一定是本發明所必須的。為便於更好的實施本發明實施例的上述方案,下面還提供可用於實施上述方案的相關裝置和分布式服務系統。參見圖5-a,本發明實施例提供的ー種服務節點500,可包括接收模塊510和處理模塊520。其中,接收模塊510,用於接收客戶端發送的攜帯有服務組件包版本信息的服務請求。在本發明ー些實施例中,來自客戶端的服務請求可攜帶服務組件包的版本信息(其中,該版本信息指示出該服務請求所對應服務組件包的版本),當然該服務請求還可攜帶該服務請求對應的服務類型信息等等。例如,若該服務請求對應第一版本的服務組件包,則該服務請求攜帯的服務組件包的版本信息指示出服務組件包版本為第一版本;若該服務請求所請求服務對應的服務類型為搜索服務,則該服務請求攜帯的服務組件包的服務類型信息指示出服務類型為搜索服務,以此類推。處理模塊520,用於若確定出接收模塊510接收的服務請求對應的第一版本的服務組件包服務節點500當前還未安裝,則獲取第一版本的服務組件包進行安裝,並保持基於當前已安裝的第二版本的服務組件包運行的服務,其中,第一版本的服務組件包和第二版本的服務組件包對應相同類型的服務,且第一版本的服務組件包和第二版本的服務組件包能夠獨立運行。在本發明的一個實施例中,服務組件包中例如可包含服務執行程序和描述文件,其中,描述文件用於描述該服務組件包的版本和服務執行程序對外提供的業務接ロ等。在本發明的一個實施例中,處理模塊還用於,若確定出接收模塊510接收的服務請求對應的第一版本的服務組件包已安裝,則利用第一版本的服務組件包中的描述文件所描述的業務接ロ,調用第一版本的服務組件包中的服務執行程序以提供相應的業務服務,並可得到對應的服務結果數據。參見圖5_b,在本發明的一個實施例中,服務節點500還可包括第一響應模塊530,其中,第一響應模塊530,用於向上述客戶端發送服務請求對應的請求響應,並可在處理模塊520調用第一版本的服務組件包中的服務執行程序以提供相應的業務服務,得到對應的服務結果數據後,向該客戶端推送所述服務結果數據。參見圖5-c,在本發明的另ー個實施例中,服務節點500還可包括第二響應模塊540,其中,第二響應模塊540,用於向上述客戶端發送服務請求對應的攜帶有服務應答標識的請求響應;若接收到來自該客戶端攜帯服務應答標識的結果查詢請求,則可在處理模塊520調用第一版本的服務組件包中的服務執行程序以提供相應的業務服務,得到對應的服務結果數據後,向該客戶端發送該服務結果數據。其中,第一版本的服務組件包可包括ー個或多個版本的服務組件包,第二版本的服務組件包也可包括ー個或多個版本的服務組件包,當然,第一版本的服務組件包和第二版本的服務組件包是不同版本的服務組件包,第一版本的服務組件包和第二版本的服務組件包之間可獨立運行,即,提供同類型服務的不同版本的服務組件包可獨立運行(即具有物理隔離特點)。第一版本的服務組件包和第二版本的服務組件包對應相同類型的服務,例如,第一版本的服務組件包和第二版本的服務組件包對應服務類型都為搜索服務、郵件服務、註冊服務或下載服務等。在本發明ー些實施例中,服務組件包(如第一版本的服務組件包和第二版本的服務組件包)中可包含服務執行程序(服務執行程序例如可包括可執行的腳本、庫文件、ニ進位文件等,通過運行服務執行程序以提供對應服務)和描述文件,其中,該描述文件例如可用於描述該服務組件包的版本、服務執行程序對外提供的業務接ロ,當然服務組件包中的描述文件還可用於描述該服務組件包的其它相關信息。服務組件包被安裝到服務節點後,處理模塊520可將該服務組件包中的描述文件加載到內存,以便通過查詢內存中加載的描述文件來獲知對應服務組件包的版本、服務執行程序對外提供的業務接ロ等。在本發明ー些實施例中,處理模塊520確定服務請求對應的第一版本的服務組件 包是否已安裝的方式可以是多種多樣的,例如,假設處理模塊520將已安裝的服務組件包中的描述文件加載到內存中,則處理模塊520可在內存中查找是否有描述服務組件包的版本為第一版本的描述文件,若有(即內存中有描述文件描述的服務組件包的版本為第一版本),則表示服務請求對應的第一版本的服務組件包已安裝,若沒有(即內存中沒有任何描述文件描述的服務組件包的版本為第一版本),則表示服務請求對應的第一版本的服務組件包當前還未安裝。當然,處理模塊520還可通過其它方式來記錄已安裝的服務組件包的版本信息,通過查詢服務節點500記錄的已安裝服務組件包的版本信息,來確定服務請求對應的第一版本的服務組件包是否已安裝。此外,在本發明的一個實施例中,處理模塊520若確定出服務請求對應的第一版本的服務組件包已安裝,則處理模塊520可利用第一版本的服務組件包中描述文件所描述的業務接ロ,調用第一版本的服務組件包中的服務執行程序處理該服務請求。可以理解,提供同類型服務的不同版本的服務組件包具有不同的業務接ロ,處理模塊520根據提供同類型服務的不同版本的服務組件中的描述文件來獲取相應版本服務組件包的業務接ロ,進而利用該業務接ロ調用相應版本的服務組件包中的服務執行程序根據服務請求提供業務服務,這就實現了基於版本的服務請求分發控制。參見圖5-d,在本發明的一個實施例中,服務節點500還可包括本地磁碟組件庫550。在本發明的一個實施例中,處理模塊520獲取第一版本的服務組件包進行安裝的方式可以是多種多樣的,舉例來說,假設服務節點500與分布式服務系統組件倉庫以可通信方式連接,服務節點500還與網際網路軟體中心以可通信方式連接(其中,例如服務節點500與網際網路軟體中心可直接通信,或,服務節點500與網際網路軟體中心可通過分布式服務系統組件倉庫通信,或,服務節點500與網際網路軟體中心可通過其它一個或多個設備通信);處理模塊520可先在本地磁碟組件庫550 (其中,本地磁碟組件庫550中可包含與該處理模塊520相關的多個服務組件包等)中查找第一版本的服務組件包;若在本地磁碟組件庫550中查找到了第一版本的服務組件包,則處理模塊520從該本地磁碟組件庫550中獲取查找到的第一版本的服務組件包進行安裝;若在該本地磁碟組件庫550中未查找第一版本的服務組件包,則處理模塊520可在分布式服務系統組件倉庫(其中分布式服務系統組件倉庫中例如可包含與該分布式服務系統中的各服務節點相關的多個服務組件包等)中查找第一版本的服務組件包(或處理模塊520此時也可不到分布式服務系統組件倉庫查找第一版本的服務組件包,而是請求分布式服務系統組件倉庫下發第一版本的服務組件包,若分布式服務系統組件倉庫當前存在第一版本的服務組件包,則分布式服務系統組件倉庫可將第一版本的服務組件包,下發到該服務節點500及分布式服務系統的其它ー個或多個服務節點的本地磁碟組件庫550,若分布式服務系統組件倉庫當前不存在第一版本的服務組件包,則分布式服務系統組件倉庫可先從網際網路軟體中心獲取第一版本的服務組件包,並在從網際網路軟體中心獲取到第一版本的服務組件包之後,將第一版本的服務組件包下發至該服務節點及分布式服務系統的其它ー個或多個服務節點的本地磁碟組件庫550,而後該處理模塊520再從其本地磁碟組件庫550中獲取第一版本的服務組件包進行安裝);若在該分布式服務系統組件倉庫中查找到了第一版本的服務組件包,則處理模塊520可從分布式服務系統組件倉庫中獲取查找到的第一版本的服務組件包進行安裝(處理模塊520還可將從分布式服務系統組件倉庫中獲取到的第一版本的服務組件包寫入其本地磁碟組件庫550);若處理模塊520在分布式服務系統組件倉庫中未查找到第一版本的服務組件包,則處理模塊520可從網際網路軟體中心(其中,網際網路軟體中心例如可包含當前已發布的各 種常用版本的服務組件包)獲取第一版本的服務組件包進行安裝(或,處理模塊520此時也可通知分布式服務系統組件倉庫下載第一版本的服務組件包,而後分布式服務系統組件倉庫從網際網路軟體中心獲取第一版本的服務組件包,分布式服務系統組件倉庫在從網際網路軟體中心獲取到第一版本的服務組件包之後,將第一版本的服務組件包下發給該服務節點500及分布式服務系統的其它ー個或多個服務節點的本地磁碟組件庫550,此後,處理模塊520再從本地磁碟組件庫550或從分布式服務系統組件倉庫獲取第一版本的服務組件包進行安裝)。可以理解,若基於本地磁碟組件庫550、分布式服務系統組件倉庫(其中,分布式服務系統組件倉庫可配置多個網際網路軟體中心鏡像)、網際網路軟體中心多級部署方式,服務節點500可從分布式服務系統組件倉庫或者網際網路軟體中心下載服務組件包到本地磁碟組件庫550,而分布式服務系統組件倉庫又可從網際網路軟體中心下載服務組件包,這樣有利於簡化服務組件包的管理並提高抗災能力。可以理解的是,本實施例的服務節點500可以是如上述方法實施例中的服務節點,其各個功能模塊上述的功能可以根據上述方法實施例中的方法具體實現,其具體實現過程可以參見上述方法實施例中的相關描述,在此不再以一一贅述。由上可見,本實施例中服務節點500接收到來自客戶端的服務請求後,若確定出該服務請求對應的某版本的服務組件包當前還未安裝,則獲取該某版本的服務組件包進行安裝,並保持基於當前已安裝的其它版本的服務組件包運行的服務,其中,上述某版本的服務組件包和上述其它版本的服務組件包對應相同類型的服務,且服務節點中提供某類型服務的各版本的服務組件包能夠獨立運行,基於上述機制,由於服務節點500在升級提供某類型服務的服務組件包的過程中,服務節點500中當前已安裝的提供相同類型服務的ー個或多個版本的服務組件包還在線運行,這樣就有利於實現在服務節點升級服務組件包時也儘量不中斷相應類型的服務。參見圖6_a,本發明實施例還提供ー種分布式服務系統,可包括
ー個或多個服務節點610 (圖中是以分布式服務系統包括多個服務節點610為例的);其中,服務節點610,用於接收來自客戶端的服務請求;若確定出該服務請求對應的第一版本的服務組件包當前還未安裝,則獲取第一版本的服務組件包進行安裝,並保持基於當前已安裝的第二版本的服務組件包運行的服務,其中,第一版本的服務組件包和第二版本的服務組件包對應相同類型的服務。在本發明ー些實施例中,服務組件包(如S2. O版本的服務組件包和第二版本的服務組件包)中可包含服務執行程序(服務執行程序例如可包括可執行的腳本、庫文件、ニ進位文件等,通過運行服務執行程序以提供對應服務)和描述文件,其中,該描述文件例如可用於描述該服務組件包的版本、服務執行程序對外提供的業務接ロ,當然服務組件包中的描述文件還可用於描述該服務組件包的其它相關信息。服務組件包被安裝到服務節點後,服務節點可將該服務組件包中的描述文件加載到內存,以便通過查詢內存中加載的描述文件來獲知對應服務組件包的版本、服務執行程序對外提供的業務接ロ等。參見圖6_b,在本發明的一個實施例中,分布式服務系統還包括分布式服務系統組件倉庫620 ;其中,分布式服務系統組件倉庫620存儲有與分布式服務系統中的多個服務節 點相關的多個服務組件包;服務節點610的本地磁碟組件庫中存儲有該服務節點需要的一個或多個服務組件包。在本發明的一個實施例中,服務節點610獲取第一版本的服務組件包進行安裝的方式可以是多種多樣的,例如,假設服務節點610與分布式服務系統組件倉庫620以可通信方式連接,服務節點610還與網際網路軟體中心以可通信方式連接(其中,例如服務節點610與網際網路軟體中心可直接通信,或,服務節點610與網際網路軟體中心可通過分布式服務系統組件倉庫620通信,或,服務節點610與網際網路軟體中心可通過其它一個或多個設備通信);服務節點610可先在本地磁碟組件庫(其中,本地磁碟組件庫中可包含與服務節點610相關的多個服務組件包等)中查找第一版本的服務組件包;若在本地磁碟組件庫中查找到了第一版本的服務組件包,則服務節點610從該本地磁碟組件庫中獲取查找到的第一版本的服務組件包進行安裝;若在該本地磁碟組件庫中未查找第一版本的服務組件包,則服務節點610可在分布式服務系統組件倉庫620 (其中,分布式服務系統組件倉庫620中例如可包含與該分布式服務系統中的各服務節點610相關的多個服務組件包等)中查找第一版本的服務組件包(或,服務節點610此時也可不到分布式服務系統組件倉庫620查找第一版本的服務組件包,而是請求分布式服務系統組件倉庫620下發第一版本的服務組件包,若分布式服務系統組件倉庫620當前存在第一版本的服務組件包,則分布式服務系統組件倉庫620可將第一版本的服務組件包,下發到分布式服務系統的ー個或多個服務節點的本地磁碟組件庫,若分布式服務系統組件倉庫620當前不存在第一版本的服務組件包,則分布式服務系統組件倉庫620可先從網際網路軟體中心獲取第一版本的服務組件包,並在從網際網路軟體中心獲取到第一版本的服務組件包之後,將第一版本的服務組件包下發至分布式服務系統的一個或多個其它服務節點610的本地磁碟組件庫,而後該服務節點610再從其本地磁碟組件庫中獲取第一版本的服務組件包進行安裝);若在該分布式服務系統組件倉庫620中查找到了第一版本的服務組件包,則服務節點610可從分布式服務系統組件倉庫620中獲取查找到的第一版本的服務組件包進行安裝(其中,服務節點610還可將從分布式服務系統組件倉庫620中獲取到的第一版本的服務組件包寫入其本地磁碟組件庫);若服務節點610在分布式服務系統組件倉庫620中未查找到第一版本的服務組件包,則服務節點610可從網際網路軟體中心(其中,網際網路軟體中心例如可包含當前已發布的各種常用版本的服務組件包)獲取第一版本的服務組件包進行安裝(或服務節點610此時也可通知分布式服務系統組件倉庫620下載第一版本的服務組件包,而後分布式服務系統組件倉庫620從網際網路軟體中心獲取第一版本的服務組件包,分布式服務系統組件倉庫620在從網際網路軟體中心獲取到第一版本的服務組件包之後,將第一版本的服務組件包下發給該分布式服務系統的ー個或多個服務節點610的本地磁碟組件庫,此後,服務節點610再從本地磁碟組件庫或從分布式服務系統組件倉庫620獲取第一版本的服務組件包進行安裝)。可以理解,若基於本地磁碟組件庫、分布式服務系統組件倉庫620(其中,分布式服務系統組件倉庫620可配置多個網際網路軟體中心鏡像)、網際網路軟體中心多級部署方式,服務節點610可從分布式服務系統組件倉庫620或者網際網路軟體中心下載服務組件包到本地磁碟庫,而分布式服務系統組件倉庫620又可從網際網路軟體中心下載服務組件包,這樣有利於簡化服務組件包的管理並提高抗災能力。 可以理解的是,本實施例的服務節點610可如上述實施例中的服務節點500,或可如上述方法實施例中的服務節點,其各個功能模塊上述的功能可以根據上述方法實施例中的方法具體實現,其具體實現過程可以參見上述方法實施例中的相關描述,在此不再贅述。參見圖7_a、本發明實施例還提供ー種業務處理系統,可包括客戶端720和至少ー個服務節點710 (圖7中以包括I個服務節點710為例進行說明);其中,客戶端720,用於發送攜帯有服務組件包版本信息的服務請求;服務節點710,用於接收來自客戶端720的服務請求;若確定出該服務請求對應的第一版本的服務組件包該服務節點710當前還未安裝,則獲取第一版本的服務組件包進行安裝,並保持基於當前已安裝的第二版本的服務組件包運行的服務,其中,第一版本的服務組件包和第二版本的服務組件包對應相同類型的服務,並且第一版本的服務組件包和第二版本的服務組件包能夠獨立運行。參見圖7_b,在本發明一些實施例中,業務處理系統還包括分布式服務系統組件倉庫730 ;其中,分布式服務系統組件倉庫存儲有與分布式服務系統中的各個服務節點相關的多個服務組件包。在本發明ー些實施例中,服務節點710可具體用於,接收來自客戶端720的服務請求;若確定出該服務請求對應的第一版本的服務組件包該服務節點710當前還未安裝,則在服務節點710的本地磁碟組件庫中查找第一版本的服務組件包;若在本地磁碟組件庫中查找到了第一版本的服務組件包,則從該本地磁碟組件庫中獲取查找到的第一版本的服務組件包進行安裝;若在本地磁碟組件庫中未查找第一版本的服務組件包,則在分布式服務系統組件倉庫730中查找第一版本的服務組件包;若在分布式服務系統組件倉庫730中查找到了第一版本的服務組件包,則從分布式服務系統組件倉庫730中獲取查找到的第一版本的服務組件包進行安裝;若在分布式服務系統組件倉庫730中未查找到第一版本的服務組件包,則從網際網路軟體中心獲取第一版本的服務組件包進行安裝,並保持基於當前已安裝的第二版本的服務組件包運行的服務,其中,第一版本的服務組件包和第二版本的服務組件包對應相同類型的服務,且第一版本的服務組件包和第二版本的服務組件包能夠獨立運行,網際網路軟體中心與服務節點710通信連接,且包含當前已發布的各種版本的服務組件包。在本發明ー些實施例中,服務組件包(如第一版本的服務組件包和第二版本的服務組件包)中可包含服務執行程序(服務執行程序例如可包括可執行的腳本、庫文件、ニ進位文件等,通過運行服務執行程序以提供對應服務)和描述文件,其中,該描述文件例如可用於描述該服務組件包的版本、服務執行程序對外提供的業務接ロ,當然服務組件包中的描述文件還可用於描述該服務組件包的其它相關信息。服務組件包被安裝到服務節點710後,服務節點710可將該服務組件包中的描述文件加載到內存,以便通過查詢內存中加載的描述文件來獲知對應服務組件包的版本、服務執行程序對外提供的業務接ロ等。在本發明ー些實施例中,服務節點710確定服務請求對應的第一版本的服務組件包是否已安裝的方式可以是多種多樣的,例如,假設服務節點710將已安裝的服務組件包中的描述文件加載到內存中,則服務節點710可在內存中查找是否有描述服務組件包的版本為第一版本的描述文件,若有(即,內存中有描述文件描述的服務組件包的版本為第一版本),則表示服務請求對應的第一版本的服務組件包已安裝,若沒有(即內存中沒有任何 描述文件描述的服務組件包的版本為第一版本),則表示服務請求對應的第一版本的服務組件包未安裝。當然,服務節點710還可通過其它方式來記錄已安裝的服務組件包的版本信息,通過查詢服務節點710記錄的已安裝服務組件包的版本信息,來確定服務請求對應的第一版本的服務組件包是否已安裝。此外,在本發明的一個實施例中,服務節點710若確定出服務請求對應的第一版本的服務組件包已安裝,則服務節點710還可用幹,利用第一版本的服務組件包中描述文件所描述的業務接ロ,調用第一版本的服務組件包中的服務執行程序以提供相應的業務服務,得到對應的服務結果數據。可以理解,提供同類型服務的不同版本的服務組件包具有不同的業務接ロ,服務節點710可根據提供同類型服務的不同版本的服務組件中的描述文件來獲取相應版本服務組件包的業務接ロ,進而利用該業務接ロ調用相應版本的服務組件包中的服務執行程序以提供相應的業務服務,得到對應的服務結果數據,這就實現了基於版本的服務請求分發控制。在本發明ー些實施例中,可採用異步響應方式進行請求響應,例如在接收到來自客戶端720的服務請求後,服務節點710還可用幹,向該客戶端720發送服務請求對應的請求響應(其中,服務節點710從接收到服務請求,到向客戶端720發送該服務請求對應請求響應之間的時間間隔可很短,例如不超過O. I秒、O. 5秒、I秒或其它時長),調用第一版本的服務組件包中的服務執行程序以提供相應的業務服務,得到對應的服務結果數據之後,向該客戶端720推送服務結果數據;或,在接收到來自客戶端720的服務請求後,服務節點710可先向該客戶端720發送該服務請求對應的攜帶有服務應答標識的請求響應(服務節點710從接收到服務請求,到向客戶端720發送該服務請求對應的攜帶有服務應答標識的請求響應之間的時間間隔可很短,如不超過O. I秒、O. 5秒、I秒或其它的時長);若接收到來自客戶端720根據所述請求響應發送的結果查詢請求(攜帯服務應答標識的結果查詢請求,其中,客戶端720可利用該服務應答標識向服務節點710輪詢服務結果數據),則在調用第一版本的服務組件包中的服務執行程序基於該服務請求得到服務結果數據後,服務節點710可向該客戶端720發送該服務結果數據。當然,服務節點710亦可採用其它方式向客戶端720反饋服務結果數據,若無需向客戶端720反饋服務結果數據,則可省略上述步驟。可以理解的是,本實施例的服務節點710可如上述實施例中的服務節點500,或可如上述方法實施例中的服務節點,其各個功能模塊上述的功能可以根據上述方法實施例中的方法具體實現,其具體實現過程可以參見上述方法實施例中的相關描述,在此不再贅述。在上述實施例中,對各個實施例的描述都各有側重,某個實施例中沒有詳述的部分,可以參見其他實施例的相關描述。綜上,本發明實施例中服務節點接收到來自客戶端的服務請求後,若確定出該服務請求對應的某版本的服務組件包當前還未安裝,則獲取該某版本的服務組件包進行安裝,並保持基於當前已安裝的其它版本的服務組件包運行的服務,其中,上述某版本的服務
組件包和上述其它版本的服務組件包對應相同類型的服務,且服務節點中提供某類型服務的各版本的服務組件包能夠獨立運行,基於上述機制,由於服務節點在升級提供某類型服務的服務組件包的過程中,服務節點中當前已安裝的提供相同類型服務的ー個或多個服務組件包還在線運行,這樣就有利於實現在服務節點升級服務組件包時也儘量不中斷相應類型的服務。進ー步的,通過多個版本的服務組件包同時在線運行,解決服務節點軟體不中斷升級和特性増加;通過在服務請求中攜帯服務類型信息、版本信息等來區別不同服務類型和版本的服務組件包;通過異步控制請求反饋和多級組件倉庫的部署,有利於保證多版本服務組件包運行和在線特性増加的可靠性;通過本地磁碟組件庫到分布式服務系統組件倉庫的部署,有利於簡化分布式系統的服務組件包管理。本領域普通技術人員可以理解上述實施例的各種方法中的全部或部分步驟是可以通過程序來指令相關的硬體來完成,該程序可以存儲於ー計算機可讀存儲介質中,存儲介質例如可以包括只讀存儲器、隨機存儲器、磁碟或光碟等。以上對本發明實施例所提供的業務處理方法和相關裝置及相關系統進行了詳細介紹,本文中應用了具體個例對本發明的原理及實施方式進行了闡述,以上實施例的說明只是用於幫助理解本發明的方法及其核心思想;同時,對於本領域的一般技術人員,依據本發明的思想,在具體實施方式
及應用範圍上均會有改變之處,綜上,本說明書內容不應理解為對本發明的限制。
權利要求
1.一種業務處理方法,其特徵在於,包括 服務節點接收客戶端發送的攜帶有服務組件包版本信息的服務請求; 所述服務節點若確定出所述服務請求對應的第一版本的服務組件包所述服務節點當前還未安裝,則獲取所述第一版本的服務組件包進行安裝,並保持基於當前已安裝的第二版本的服務組件包運行的服務,其中,所述第一版本的服務組件包和第二版本的服務組件包對應相同類型的服務,且所述第一版本的服務組件包和第二版本的服務組件包能夠獨立運行。
2.根據權利要求I所述的方法,其特徵在於,所述服務組件包中包含服務執行程序和描述文件,其中,所述描述文件用於描述該服務組件包的版本和所述服務執行程序對外提供的業務接口。
3.根據權利要求2所述的方法,其特徵在於, 所述方法還包括所述服務節點若確定出所述服務請求對應的第一版本的服務組件包已安裝,則利用所述第一版本的服務組件包中的描述文件所描述的業務接口,調用所述第一版本的服務組件包中的服務執行程序以提供相應的業務服務,得到對應的服務結果數據。
4.根據權利要求I至3任一項所述的方法,其特徵在於, 所述獲取第一版本的服務組件包進行安裝,包括 在所述服務節點的本地磁碟組件庫中查找所述第一版本的服務組件包; 若在所述本地磁碟組件庫中查找到了所述第一版本的服務組件包,則從所述本地磁碟組件庫中獲取查找到的所述第一版本的服務組件包進行安裝;若在所述本地磁碟組件庫中未查找所述第一版本的服務組件包,則在與所述服務節點通信連接的分布式服務系統組件倉庫中查找所述第一版本的服務組件包;若在所述分布式服務系統組件倉庫中查找到了所述第一版本的服務組件包,則從所述分布式服務系統組件倉庫中獲取查找到的所述第一版本的服務組件包進行安裝;若在所述分布式服務系統組件倉庫中未查找到所述第一版本的服務組件包,則從網際網路軟體中心獲取所述第一版本的服務組件包進行安裝,所述網際網路軟體中心與所述服務節點通信連接,且包含當前已發布的各種版本的服務組件包。
5.根據權利要求3所述的方法,其特徵在於, 所述方法還包括在調用所述第一版本的服務組件包中的服務執行程序以提供相應的業務服務,得到對應的服務結果數據後,向所述客戶端推送所述服務結果數據。
6.根據權利要求3所述的方法,其特徵在於, 所述方法還包括所述服務節點向所述客戶端發送與所述服務請求對應且攜帶有服務應答標識的請求響應;接收來自所述客戶端根據所述請求響應發送的結果查詢請求,在調用所述第一版本的服務組件包中的服務執行程序以提供相應的業務服務,得到對應的服務結果數據後,向所述客戶端發送所述服務結果數據。
7.一種服務節點,其特徵在於,包括 接收模塊,用於接收客戶端發送的攜帶有服務組件包版本信息的服務請求; 處理模塊,用於在確定出所述接收模塊接收的服務請求對應的第一版本的服務組件包所述服務節點當前還未安裝時,獲取所述第一版本的服務組件包進行安裝,並保持基於當前已安裝的第二版本的服務組件包運行的服務,所述第一版本的服務組件包和第二版本的服務組件包對應相同類型的服務,且所述第一版本的服務組件包和第二版本的服務組件包能夠獨立運行。
8.根據權利要求7所述的服務節點,其特徵在於,所述服務組件包中包含服務執行程序和描述文件,其中,所述描述文件用於描述該服務組件包的版本和所述服務執行程序對外提供的業務接口; 所述處理模塊還用於,若確定出所述接收模塊接收的服務請求對應的第一版本的服務組件包已安裝,則利用所述第一版本的服務組件包中的描述文件所描述的業務接口,調用所述第一版本的服務組件包中的服務執行程序以提供相應的業務服務,得到對應的服務結果數據。
9.根據權利要求8所述的服務節點,其特徵在於, 所述服務節點還包括 第一響應模塊,用於在所述處理模塊調用所述第一版本的服務組件包中的服務執行程序以提供相應的業務服務,得到對應的服務結果數據後,向所述客戶端推送所述服務結果數據;
10.根據權利要求8所述的服務節點,其特徵在於, 所述服務節點還包括第二響應模塊,用於向所述客戶端發送與所述服務請求對應且攜帶有服務應答標識的請求響應;接收來自所述客戶端根據所述請求響應發送的結果查詢請求,在調用所述第一版本的服務組件包中的服務執行程序以提供相應的業務服務,得到對應的服務結果數據後,向所述客戶端發送所述服務結果數據。
11.一種業務處理系統,其特徵在於,包括 客戶端,用於發送攜帶有服務組件包版本信息的服務請求; 至少一個服務節點,用於接收所述客戶端發送的攜帶有服務組件包版本信息的服務請求;若確定出該服務請求對應的第一版本的服務組件包所述服務節點當前還未安裝,則獲取第一版本的服務組件包進行安裝,並保持基於當前已安裝的第二版本的服務組件包運行的服務,其中,第一版本的服務組件包和第二版本的服務組件包對應相同類型的服務,且第一版本的服務組件包和第二版本的服務組件包能夠獨立運行。
12.根據權利要求11所述的業務處理系統,其特徵在於, 所述業務處理系統還包括分布式服務系統組件倉庫; 其中,所述分布式服務系統組件倉庫存儲有與分布式服務系統中的各個服務節點相關的多個服務組件包; 所述服務節點,具體用於接收所述客戶端發送的攜帶有服務組件包版本信息的服務請求,若確定出該服務請求對應的第一版本的服務組件包所述服務節點當前還未安裝,則在所述服務節點的本地磁碟組件庫中查找所述第一版本的服務組件包;若在所述本地磁碟組件庫中查找到了所述第一版本的服務組件包,則從所述本地磁碟組件庫中獲取查找到的所述第一版本的服務組件包進行安裝;若在所述本地磁碟組件庫中未查找所述第一版本的服務組件包,則在所述分布式服務系統組件倉庫中查找所述第一版本的服務組件包;若在所述分布式服務系統組件倉庫中查找到了所述第一版本的服務組件包,則從所述分布式服務系統組件倉庫中獲取查找到的所述第一版本的服務組件包進行安裝;若在所述分布式服務系統組件倉庫中未查找到所述第一版本的服務組件包,則從網際網路軟體中心獲取所述第一版本的服務組件包進行安裝,並保持基於當前已安裝的第二版本的服務組件包運行的服務,其中,第一版本的服務組件包和第二版本的服務組件包對應相同類型的服務,第一版本的服務組件包和第二版本的服務組件包能夠獨立運行,所述網際網路軟體中心與所述服務 節點通信連接,且包含當前已發布的各種版本的服務組件包。
全文摘要
本發明公開了一種業務處理方法和相關裝置及相關系統。其中,一種業務處理方法,可包括服務節點接收客戶端發送的攜帶有服務組件包版本信息的服務請求;服務節點若確定出該服務請求對應的第一版本的服務組件包服務節點當前還未安裝,則獲取第一版本的服務組件包進行安裝,並保持基於當前已安裝的第二版本的服務組件包運行的服務,其中,第一版本的服務組件包和第二版本的服務組件包對應相同類型的服務,且第一版本的服務組件包和第二版本的服務組件包能夠獨立運行。本發明實施例提供技術方案有利於在儘量不中斷服務的情況下,實現服務節點的組件包的升級服務。
文檔編號H04L12/24GK102684913SQ201210121208
公開日2012年9月19日 申請日期2012年4月23日 優先權日2012年4月23日
發明者程建傑 申請人:華為技術有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀