專利名稱:仿真業務處理方法、裝置及系統的制作方法
技術領域:
本發明涉及計算機應用技術領域,尤其涉及一種仿真業務處理方法、裝置及系統。
背景技術:
云計算是當前電信和IT (Information Technology,信息技術)最熱的技術之一, 云計算的目標之一是通過眾多的便宜的硬件,搭建高可用的系統。云計算相關技術中,分布 式技術是成熟度最高的,業界已經有很多分布式技術規范。一種典型的分布式系統主要包括=Adapter (適配器)、Naming (命名中心)和各個 Component (組件)實例。Adapter是整個系統對外的唯一的入口,系統內部的Adapter與 Component實例之間、Component實例與Component實例之間調用需要通過Naming(命名中 心)。現有技術中的分布式系統的軟件升級的方法為逐個實例升級方法。該方法不需 要將分布式系統停機,是指先卸載一個舊版本Component實例,再安裝、加載一個對應的新 版本Component實例。在安裝、加載上述新版本Component實例時,其他舊版本Component 實例仍然可處理用戶業務,并且,新版本Component實例安裝后,也立即處理用戶業務。在 上述新版本Component實例加載完成后,通過測試工具或手工對分布式系統進行功能驗 證,觀察上述新版本Component實例的業務處理是否正確。上述現有技術的軟件升級的方法至少存在如下問題新版本Component實例在安 裝后,Adapter接收到任意一個業務消息時會直接發送給Component實例,由Component實 例來處理用戶業務,如果新版本Component實例有問題時,會影響部分用戶業務的處理。
發明內容
本發明的實施例提供了一種仿真業務處理方法及裝置,以實現解決新版本 Component實例在安裝后,Adpater直接將任一業務消息發送給新版本的Component實例, 可能會出現新版本Component實例處理用戶業務帶來的不穩定問題。一種仿真業務處理方法,包括根據業務消息中的屬性信息確定所述業務消息是仿真業務消息;將所述仿真業務消息發送到第一組件實例,所述第一組件實例為新版本的組件實 例。一種仿真業務處理裝置,包括仿真業務消息確定模塊,用于根據業務消息中的屬性信息確定所述業務消息是仿 真業務消息;消息分發模塊,用于將所述仿真業務消息發送到第一組件實例,所述第一組件實 例為新版本的組件實例。一種仿真業務系統,包括仿真業務處理裝置,用于根據業務消息中的屬性信息,確定所述業務消息是仿真業務消息,將所述仿真業務消息發送到第一組件實例,所述第一組件實例為新版本的組件 實例;第一組件實例,用于接收所述仿真業務處理裝置發送的仿真業務消息,所述仿真 業務消息攜帶了業務標志,該業務標志包括仿真標志和路由開關。由上述本發明的實施例提供的技術方案可以看出,本發明實施例可以實現將確定 業務消息為仿真業務消息,將仿真業務消息分發給相應的新版本的Component實例,從而 仿真業務準確分發到新版本Component實例,進而對新版本Component實例進行有效的在 線業務驗證,可以及時發現新版本Component實例的問題,降低分布式系統的軟件升級風 險。
為了更清楚地說明本發明實施例的技術方案,下面將對實施例描述中所需要使用 的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于本 領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其他 的附圖。圖1為本發明實施例一提供的一種分布式系統的邏輯結構圖;圖2為本發明實施例一提供的一種軟件升級過程中的業務處理方法的流程圖;圖3為本發明實施例二提供的一種軟件升級過程中的業務處理方法的流程圖;圖4為本發明實施例二提供的一種業務標志的示意圖;圖5為本發明實施例提供的一種仿真業務處理裝置的結構示意圖;圖6為本發明實施例提供的另一種仿真業務處理裝置的結構示意圖;圖7為本發明實施例提供的一種仿真業務處理系統的結構示意圖。
具體實施例方式本發明實施例中,適配器接受各個組件實例的注冊,保存各個組件實例的注冊信 息。適配器根據接收到的業務消息中的屬性信息確定仿真業務消息,根據其保存的組件實 例的注冊信息,將所述仿真業務消息發送給新版本的組件實例。為便于對本發明實施例的理解,下面將結合附圖以幾個具體實施例為例做進一步 的解釋說明,且各個實施例并不構成對本發明實施例的限定。實施例一該實施例提供的一種典型的分布式系統的邏輯結構如圖1所示,基于上述圖1所 示的分布式系統,該實施例提供的一種分布式系統的軟件升級過程中的業務處理方法的處 理流程如圖2所示,包括如下的處理步驟步驟21、根據業務消息中的屬性信息確定業務消息是仿真業務消息。adapter收到業務消息后,獲取業務消息中的屬性信息。上述屬性信息包括業務 消息中包含了主叫流程的主叫號碼或被叫流程的被叫號碼。判斷所述主叫號碼或被叫號碼 是否屬于預先設置的仿真業務號碼;如果是,則所述適配器確定所述業務消息是仿真業務 消息;否則,所述適配器確定所述業務消息是正常業務消息。或者,adapter收到業務消息后,根據接收到的業務消息攜帶的號碼類型判斷所述業務消息是仿真業務消息或者正常業務消息。步驟22、將所述仿真業務消息發送到第一組件實例,所述第一組件實例為新版本 的組件實例。分布式系統中的各個Component實例在Naming中注冊,并被Naming激活后,需要 再到adapter中進行注冊,在Adapter中保存各個Component實例的注冊信息,注冊信息可 以包含Component實例標識,服務名以及版本號。上述adapter根據預先設定的路由規則,確定所述仿真業務消息需要發送的第一 Component實例,并根據上述第一 Component實例的注冊信息確定第一 Component實例的接
口 fn 息 ο然后,上述adapter根據獲取的第一組件實例的接口信息,將業務消息發送到相 應的第一 Component實例。該實施例可以實現將確定業務消息為仿真業務消息,將仿真業務消息分發給相應 的新版本的Component實例,從而仿真業務準確分發到新版本Component實例,進而對新版 本Component實例進行有效的在線業務驗證,可以及時發現新版本Component實例的問題, 降低分布式系統的軟件升級風險。實施例二該實施例提供的一種分布式系統的軟件升級過程中的業務處理的流程如圖3所 示,包括如下的處理步驟步驟31、在Adapter中保存各個Component實例的注冊信息。在軟件升級之前,分布式系統中的各個Component實例在Naming中進行注冊, Naming保存了各個Component實例的注冊信息,注冊信息可以包含Component實例的 DOID (標識),ServiceName (服務名)以及 Version (版本號)。在 Component 實例被 Naming 激活后,該Component實例還需要在Adapter中進行注冊,也就是說還需要在Adapter保存 各個Component實例的注冊信息。 Adapter和Naming可以利用如下述表一方式來保存各個Component實例的注冊信
肩、ο
權利要求
1.一種仿真業務處理方法,其特征在于,包括根據業務消息中的屬性信息確定所述業務消息是仿真業務消息;將所述仿真業務消息發送到第一組件實例,所述第一組件實例為新版本的組件實例。
2.根據權利要求1所述的仿真業務的處理方法,其特征在于,所述根據業務消息中的 屬性信息確定所述業務消息是仿真業務消息,包括在主叫流程中,獲取接收到的業務消息對應的主叫號碼;或者,在被叫流程中,獲取接 收到的業務消息對應的被叫號碼;當所述主叫號碼或被叫號碼屬于預先設置的仿真業務號碼時,確定所述業務消息是仿 真業務消息。
3.根據權利要求1所述的仿真業務的處理方法,其特征在于,所述根據業務消息中的 屬性信息確定所述業務消息是仿真業務消息,包括當所述業務消息攜帶的號碼類型為仿 真業務類型時,確定所述業務消息是仿真業務消息。
4.根據權利要求1所述的仿真業務的處理方法,其特征在于,所述將所述仿真業務消 息發送到第一組件實例,包括根據預先設定的路由規則,確定所述仿真業務消息需要發送的第一組件實例;根據所述第一組件實例的注冊信息,獲取所述第一組件實例的接口信息;根據所述第一組件實例的接口信息,將所述仿真業務消息分發到所述第一組件實例。
5.根據權利要求1-4任一所述的仿真業務的處理方法,其特征在于,還包括確定所述業務消息是仿真業務消息后,在所述仿真業務消息中設置業務標志,所述業 務標志包含仿真標志和路由開關;當接收到所述仿真業務消息的第一組件實例需要將所述仿真業務消息發送給第二組 件實例時,所述第一組件實例向命名中心發送攜帶所述業務標志和指定服務名的查詢消 息;所述命名中心根據所述查詢消息中的業務標志和指定服務名,以及所述命名中心保存 的服務名和組件實例的標識的映射關系,向所述第一組件實例返回所述第二組件實例的標 識信息;所述第一組件實例根據所述命名中心返回的所述第二組件實例的標識信息,獲取所述 第二組件實例的接口信息,根據所述接口信息將所述仿真業務消息發送給所述第二組件實 例。
6.根據權利要求5所述的仿真業務的處理方法,其特征在于,所述命名中心根據所述 查詢消息中的業務標志和指定服務名,以及所述命名中心保存的服務名和組件實例的標識 的映射關系,向所述第一組件實例返回所述第二組件實例的標識信息,包括當所述業務標志中的仿真標志表示仿真業務消息,并且所述路由開關表示將仿真業務 消息只發送到新版本的組件實例時,則所述命名中心向所述第一組件實例返回所述指定服 務名對應的新版本的第二組件實例的標識信息;當所述業務標志中的仿真標志表示仿真業務消息,并且所述路由開關表示將仿真業務 消息發送給任意一個組件實例時,則所述命名中心向所述第一組件實例返回所述指定服務 名對應的任意一個第二組件實例的標識信息。
7.根據權利要求1所述的仿真業務的處理方法,其特征在于,所述方法還包括根據業務消息中的屬性信息確定所述業務消息是正常業務消息;根據路由規則,將所述正常業務消息發送到第三組件實例。
8.根據權利要求7所述的仿真業務的處理方法,其特征在于,所述方法還包括在確定所述業務消息是正常業務消息后,在所述正常業務消息中設置業務標志,所述 業務標志包含仿真標志和路由開關;當接收到所述正常業務消息的第三組件實例需要將所述正常業務消息發送給第四組 件實例時,所述第三組件實例向命名中心發送攜帶所述業務標志和指定服務名的查詢消 息;所述命名中心根據所述查詢消息中的業務標志和指定服務名,以及所述命名中心保存 的服務名和組件實例的標識的映射關系,向所述第三組件實例返回所述第四組件實例的標 識信息;所述第三組件實例根據所述命名中心返回的所述第四組件實例的標識信息,獲取所述 第四組件實例的接口信息,通過所述接口信息將所述正常業務消息發送給所述第四組件實 例。
9.根據權利要求8所述的仿真業務的處理方法,其特征在于,所述命名中心根據所述 查詢消息中的業務標志和指定服務名,以及所述命名中心保存的服務名和組件實例的標識 的映射關系,向所述第三組件實例返回所述第四組件實例的標識信息,包括當所述業務標志中的仿真標志標識正常業務消息,并且所述路由開關表示將正常業務 消息只路由到舊版本的組件實例時,則所述命名中心向所述第三組件實例返回所述指定服 務名對應的舊版本的第四組件實例的標識信息;當所述業務標志中的仿真標志表示正常業務消息,并且所述路由開關表示將正常業務 消息路由給任意一個第四組件實例時,則所述命名中心向所述第三組件實例返回所述指定 服務名對應的任意一個第四組件實例的標識信息。
10.一種仿真業務處理裝置,其特征在于,包括仿真業務消息確定模塊,用于根據業務消息中的屬性信息確定所述業務消息是仿真業 務消息;消息分發模塊,用于將所述仿真業務消息發送到第一組件實例,所述第一組件實例為 新版本的組件實例。
11.根據權利要求10所述的仿真業務處理裝置,其特征在于,所述仿真業務消息確定 模塊包括第一確定子單元或者第二確定子單元,所述第一確定子單元,用于在主叫流程中,獲取接收到的業務消息對應的主叫號碼;或 者,在被叫流程中,獲取接收到的業務消息對應的被叫號碼;當所述主叫號碼或被叫號碼屬 于預先設置的仿真業務號碼時,確定所述業務消息是仿真業務消息;所述第二確定子單元,用于當所述業務消息攜帶的號碼類型為仿真業務類型時,確定 所述業務消息是仿真業務消息。
12.根據權利要求10所述的仿真業務處理裝置,其特征在于,所述消息分發模塊,包括路由確定子單元,用于根據預先設定的路由規則,確定所述仿真業務消息需要發送的 第一組件實例;獲取子單元,用于根據所述路由確定子單元確定的所述第一組件實例的注冊信息,獲 取所述第一組件實例的接口信息;分發子單元,用于根據獲取子單元獲取到的所述第一組件實例的接口信息,將所述業 務消息分發到所述第一組件實例。
13.根據權利要求10所述的仿真業務處理裝置,其特征在于,所述仿真業務處理裝置 還包括正常業務消息處理模塊,用于根據業務消息中的屬性信息確定所述業務消息是正常業 務消息;根據路由規則,將所述正常業務消息發送到第三組件實例。
14.根據權利要求10所述的仿真業務處理裝置,其特征在于,所述仿真業務處理裝置 還包括設置模塊,用于在業務消息中設置業務標志,所述業務標志包含了仿真標志和路由開關。
15.一種仿真業務系統,其特征在于,包括仿真業務處理裝置,用于根據業務消息中的屬性信息,確定所述業務消息是仿真業 務消息,將所述仿真業務消息發送到第一組件實例,所述第一組件實例為新版本的組件實 例;第一組件實例,用于接收所述仿真業務處理裝置發送的仿真業務消息,所述仿真業務 消息攜帶了業務標志,該業務標志包括仿真標志和路由開關。
16.根據權利要求15所述的仿真業務處理系統,其特征在于,所述第一組件實例還用 于,當需要將所述仿真業務消息發送給第二組件實例時,獲取所述仿真業務消息中攜帶的 業務標志,向命名中心發送攜帶所述業務標志和指定服務名的查詢消息,并接收所述命名 中心返回所述第二組件實例的標識信息,并根據所述第二組件實例的標識信息,獲取所述 第二組件實例的接口信息,通過所述接口信息將所述仿真業務消息發送給所述第二組件實 例。
17.根據權利要求16所述的仿真業務處理系統,其特征在于,所述仿真業務處理系統 還包括命名中心,用于接收所述第一組件實例發送的查詢消息,并根據所述查詢消息中攜帶 的業務標志和指定服務名,以及所述命名中心保存的服務名和組件實例的標識的映射關 系,向所述第一組件實例返回所述第二組件實例的標識信息。
全文摘要
本發明實施例提供了一種仿真業務處理方法和裝置。該方法主要包括根據業務消息中的屬性信息確定所述業務消息是仿真業務消息;將所述仿真業務消息發送到第一組件實例,所述第一組件實例為新版本的組件實例。利用本發明,可以實現仿真業務準確分發到新版本Component實例,進而對新版本Component實例進行有效的在線業務驗證,可以及時發現新版本Component實例的問題,降低分布式系統的軟件升級風險。
文檔編號H04L12/58GK102143197SQ201010263089
公開日2011年8月3日 申請日期2010年8月25日 優先權日2010年8月25日
發明者韋光勝 申請人:華為技術有限公司