專利名稱:基于分布式環(huán)境的功能擴展方法和系統(tǒng)的制作方法
技術領域:
本發(fā)明涉及電信設備網絡管理領域,具體涉及一種可用于實現(xiàn)分布式 電信設備網管的功能擴展方法和系統(tǒng)。
背景技術:
隨
目前業(yè)界常用的功能擴展方法,如圖1所示,通過功能擴展管理將基 本應用功能中的功能擴展點和應用功能擴展實現(xiàn)進行綁定,基本應用功能 在執(zhí)行到功能擴展點時通過本地調用執(zhí)行應用功能擴展實現(xiàn)的業(yè)務邏輯, 應用功能擴展實現(xiàn)將其執(zhí)行結果返回給基本應用功能,基本應用功能根據(jù) 該功能擴展實現(xiàn)的返回結果執(zhí)行基本應用功能后續(xù)的業(yè)務處理邏輯。因為 基本應用功能執(zhí)行應用功能擴展實現(xiàn)的業(yè)務邏輯是本地調用,而在分布式 環(huán)境下,基本應用功能和應用功能擴展實現(xiàn)可能并不在同一個進程中,在 這種情況下,基本應用功能不能通過本地調用的方式執(zhí)行應用功能擴展實 現(xiàn)的業(yè)務邏輯,所以現(xiàn)有的這種功能擴展方法無法在分布式環(huán)境下使用。
發(fā)明內容
本發(fā)明所要解決的技術問題就是提供一種可工作于分布式環(huán)境的功能 擴展方法和系統(tǒng)。
本發(fā)明的技術問題是通過以下技術方案加以解決的一種基于分布式環(huán)境的功能擴展方法,包括以下步驟
A. 在基本應用功能模塊中設置多個功能擴展點,并在功能擴展管理模 塊中建立功能擴展點與各應用功能擴展實現(xiàn)模塊之間的對應關系;
B. 當運行到功能擴展點時根據(jù)功能擴展管理模塊中對應關系,査找該 功能擴展點所對應的應用功能擴展實現(xiàn)模塊,
C. 基本應用功能模塊通過消息來調用上述査找到的應用功能擴展實 現(xiàn)模塊。
所述步驟C具體包括以下步驟
Cl.基本應用功能模塊向步驟B獲得的應用功能擴展實現(xiàn)模塊發(fā)送包 含執(zhí)行請求的同步消息;
C2.應用功能擴展實現(xiàn)模塊響應上述請求,執(zhí)行擴展的應用業(yè)務邏輯, 并將執(zhí)行結果通過返回消息發(fā)送給基本應用功能模塊。
所述步驟A具體包括以下步驟-
Al.獲取當前進程中所有基本應用功能模塊的功能擴展點聲明定義 配置,該配置中包括功能擴展點ID;
A2.獲取當前進程中所有應用功能擴展實現(xiàn)模塊配置,該配置中包括 與功能擴展點ID的對應關系;
A3.根據(jù)步驟A1中的功能擴展點ID和步驟A2中的對應關系建立功 能擴展點與應用功能擴展實現(xiàn)模塊的對應關系。 所述步驟C中的調用是通過消息總線實現(xiàn)的。
所述步驟A還包括將功能擴展點與應用功能擴展實現(xiàn)模塊的對應關系 存儲在功能擴展注冊表中的過程;所述步驟B通過査詢該注冊表獲得功能 擴展點相對應的應用功能擴展實現(xiàn)模塊。
所述步驟A還包括通過調用消息總線發(fā)送包含功能擴展點與應用功能 擴展實現(xiàn)模塊對應關系的消息,通知其他進程更新其所包含的功能擴展注 冊表的過程。
一種基于分布式環(huán)境的功能擴展系統(tǒng),包括多個進程,所述進程包括 功能擴展管理模塊、基本應用功能模塊和應用功能擴展實現(xiàn)模塊,所述功 能擴展管理模塊用于建立功能擴展點與應用功能擴展實現(xiàn)模塊的對應關 系;所述基本應用功能模塊用于實現(xiàn)基本的應用業(yè)務邏輯,運行到功能擴展點時根據(jù)所述對應關系査找該功能擴展點所對應的應用功能擴展實現(xiàn)模 塊,并通過消息調用該功能擴展點所對應的應用功能擴展實現(xiàn)模塊。
所述基本應用功能模塊還用于向査找到的所述應用功能擴展實現(xiàn)模塊 發(fā)送包含執(zhí)行請求的同步消息;所述應用功能擴展實現(xiàn)模塊用于響應所述 執(zhí)行請求,執(zhí)行擴展的應用業(yè)務邏輯,并將執(zhí)行結果通過返回消息發(fā)送給 所述基本應用功能模塊。
還包括消息總線,所述消息總線用于調用所述消息。
所述功能擴展管理模塊中設有功能擴展注冊表,用于存儲所述功能擴 展管理模塊建立的所述對應關系;所述功能擴展管理模塊還用于通過調用 所述消息總線發(fā)送包含功能擴展點與應用功能擴展實現(xiàn)模塊對應關系的消 息,通知其他進程更新其所包含的功能擴展注冊表。
本發(fā)明同現(xiàn)有技術相比較的有益效果是
(1) 利用消息可以在分布式環(huán)境中傳遞的特點,將應用功能擴展實現(xiàn)的 調用采用發(fā)送消息的方式進行,解決了本地調用所無法完成的不同進程之 間的功能調用,從而完成了分布式環(huán)境中的功能擴展。
(2) 采用同步消息傳遞,使得調用者在獲得調用結果后再根據(jù)該結果決 定后續(xù)流程,解決了進程間的同步問題;
(3) 采用消息總線進行消息傳遞,實現(xiàn)方式簡單。
(4) 利用功能擴展注冊表存儲功能擴展點與應用功能擴展實現(xiàn)之間的 對應關系,査詢該注冊表可獲得對應關系及對應用功能擴展實現(xiàn)的接收地 址,該實現(xiàn)方式能在現(xiàn)有本地調用的功能擴展方式上改進獲得,保持了較 好的兼容性;
(5) —個進程的功能擴展注冊表的變化通過調用消息總線發(fā)送包含功 能擴展點與應用功能擴展實現(xiàn)對應關系的消息,通知其他進程進行功能擴 展注冊表的更新,保證了分布式環(huán)境中進程間的功能擴展管理的同步,提 高了效率。
圖1是本地調用時的結構示意圖2是本發(fā)明系統(tǒng)具體實施方式
工作于分布式環(huán)境的結構示意圖; 圖3是本發(fā)明方法具體實施方式
功能擴展管理初始化流程圖; 圖4是本發(fā)明方法具體實施方式
調用應用功能擴展實現(xiàn)流程圖;圖5是本發(fā)明方法具體實施方式
消息總線工作流程圖。
具體實施例方式
下面通過具體實施方式
結合附圖對本發(fā)明做進一步詳細說明。
本發(fā)明基于分布式環(huán)境的功能擴展系統(tǒng),其一種實施方式如圖1所示, 工作于本地調用,與現(xiàn)有技術相同。
其另一種實施方式如圖2所示,工作于分布式電信網管環(huán)境,包括多 個進程,各進程分別包括功能擴展管理模塊、基本應用功能模塊、應用功 能擴展實現(xiàn)模塊和消息總線。
功能擴展管理模塊包括功能擴展注冊表,用于存儲系統(tǒng)中功能擴展點、 應用功能擴展實現(xiàn)模塊以及二者之間的對應關系,在分布式環(huán)境下的每個 進程中都有一個相同的功能擴展注冊表。功能擴展管理模塊用于初始化功 能擴展點、初始化應用功能擴展實現(xiàn)模塊和管理功能擴展注冊表。功能擴 展點的初始化負責搜索當前進程基本應用功能的功能擴展點聲明定義配 置;應用功能擴展實現(xiàn)模塊的初始化負責搜索當前進程應用功能擴展實現(xiàn) 配置,建立功能擴展點聲明定義配置和應用功能擴展實現(xiàn)配置之間的對應 關系,即功能擴展點與應用功能擴展實現(xiàn)模塊之間的對應關系,并將該對 應關系存儲到功能擴展注冊表中。功能擴展管理模塊負責對功能擴展注冊 表中的信息進行增加、刪除、修改和查詢,還負責同步各進程的功能擴展 注冊表內容,即在當前進程功能擴展注冊表內容發(fā)生變化時,如在建立功 能擴展點和應用功能擴展實現(xiàn)之間的對應關系時,通過調用消息總線發(fā)送 包含功能擴展點與應用功能擴展實現(xiàn)模塊對應關系的消息,通知其他進程 的功能擴展管理模塊,其他進程的功能擴展管理模塊收到包含這個對應關 系的消息后,將該對應關系更新到所在進程的功能擴展注冊表中。在分布 式環(huán)境下的每個進程中都有功能擴展管理模塊,執(zhí)行的功能也基本相同。
基本應用功能模塊用于實現(xiàn)適應于大多數(shù)電信設備的網管系統(tǒng)公用功 能,實現(xiàn)基本的網管應用業(yè)務邏輯,在業(yè)務處理流程中存在特殊需求的地 方聲明功能擴展點,還根據(jù)應用功能擴展實現(xiàn)模塊的執(zhí)行結果決定網管應 用業(yè)務邏輯的后續(xù)處理流程?;镜木W管應用業(yè)務邏輯是指適合絕大多數(shù) 情況的通用應用功能。
應用功能擴展實現(xiàn)模塊,用于實現(xiàn)特殊需求的應用功能,即提供同步 消息的消息處理對象和應用功能擴展實現(xiàn)配置,實現(xiàn)擴展的網管應用業(yè)務邏輯,并將其執(zhí)行結果通過消息總線返回給基本應用功能模塊。本實施方 式中,應用功能擴展實現(xiàn)模塊有多個,分布在多個進程中,且與基本應用 功能模塊的功能擴展點是多對一的對應關系。不同進程中,基本應用功能 模塊、應用功能擴展實現(xiàn)模塊所處理的業(yè)務邏輯可能不相同,但功能擴展 管理模塊和消息總線所處理的業(yè)務邏輯完全相同,只是處理的數(shù)據(jù)不同。
消息總線,用于調用消息,如用于發(fā)送基本應用功能模塊和應用功能 擴展實現(xiàn)模塊之間的同步消息及其響應消息,用于將本進程中的功能擴展 點和應用功能擴展實現(xiàn)之間的對應關系通知其他進程的功能擴展管理模 塊,還用于消息打包、消息解析、消息發(fā)送異常處理、同步消息處理等工 作。本實施方式中,消息總線用于為消息分配唯一的標識、將消息打包、 根據(jù)消息中指定的目的地址與消息的目的進程建立鏈接并將打包的消息發(fā) 送給目的進程。
本發(fā)明基于分布式環(huán)境的功能擴展方法,其一種實施方式,包括如下 步驟
步驟A:在基本應用功能模塊中設置多個功能擴展點,并在功能擴展 管理模塊中建立功能擴展點與各應用功能擴展實現(xiàn)模塊之間的對應關系。 功能擴展管理模塊初始化,在系統(tǒng)啟動之初獲取系統(tǒng)中所有基本應用功能 模塊的功能擴展點,如圖3所示,該初始化過程具體包括以下步驟
步驟301:獲取當前進程中所有基本應用功能模塊功能擴展點的聲明 定義配置。基本應用功能模塊的功能擴展點通過定義配置進行聲明, 一個 功能擴展點的聲明定義配置包括功能擴展點ID、功能擴展點消息ID、功 能擴展點消息格式定義等信息。在系統(tǒng)啟動時,通過搜索獲取當前進程所 在目錄下所有基本應用功能模塊的功能擴展點的聲明定義配置;
步驟302:獲取當前進程中所有應用功能擴展實現(xiàn)模塊配置。應用功
能擴展實現(xiàn)模塊由消息處理對象和應用功能擴展實現(xiàn)模塊配置組成。消息 處理對象負責接收基本應用功能模塊發(fā)送的消息,并開始執(zhí)行應用功能擴
展實現(xiàn)模塊自身擴展的業(yè)務邏輯;應用功能擴展實現(xiàn)模塊配置則配置應用 功能擴展實現(xiàn)模塊的消息接收地址、消息處理類以及與基本應用功能模塊 的功能擴展點ID之間的對應關系。在獲取系統(tǒng)中所有基本應用功能模塊 的功能擴展點的聲明定義配置后,再搜索獲取當前進程所在目錄下所有應 用功能擴展實現(xiàn)模塊配置;
步驟303:建立基本應用功能模塊的功能擴展點和應用功能擴展實現(xiàn)模塊之間的對應關系。首先將獲取的基本應用功能模塊的功能擴展點的聲 明定義配置和應用功能擴展實現(xiàn)模塊配置分別轉換為基本應用功能模塊的
功能擴展點和應用功能擴展實現(xiàn)模塊配置對象,并通過功能擴展點ID建 立二者之間的對應關系;
步驟304:將基本應用功能模塊的功能擴展點和應用功能擴展實現(xiàn)模 塊配置對象的對應關系存放到功能擴展注冊表中;
步驟305:通過消息總線通知其他進程本進程中功能擴展注冊表的變 化,其他進程更新其所在進程的功能擴展注冊表。
步驟B:當運行到功能擴展點時,根據(jù)功能擴展管理模塊中對應關系, 查找該功能擴展點所對應的應用功能擴展實現(xiàn)模塊。 一種實施方式,是調 用功能擴展管理模塊的査詢方法從功能擴展注冊表中獲?。?br>
步驟C:基本應用功能模塊通過消息調用該功能擴展點所對應的功能 擴展實現(xiàn)模塊。如圖4所示,其具體包括如下步驟
步驟401:基本應用功能模塊從查找到的應用功能擴展實現(xiàn)模塊中獲
取同步消息的目的地,構造好需發(fā)送到對應的應用功能擴展實現(xiàn)模塊的同
步消息,該同步消息包含執(zhí)行應用功能擴展實現(xiàn)模塊的執(zhí)行請求;
步驟402:基本應用功能模塊調用消息總線發(fā)送包含執(zhí)行請求的同步
消息給對應的應用功能擴展實現(xiàn)模塊;
步驟403:應用功能擴展實現(xiàn)模塊響應請求完成業(yè)務邏輯處理,發(fā)送
包含處理結果的返回消息給基本應用功能模塊。
因為是同步消息,所以在應用功能擴展實現(xiàn)的業(yè)務邏輯處理過程中, 基本應用功能的業(yè)務邏輯處于等待狀態(tài)。
消息總線對同步消息的處理流程如圖5所示,包括以下步驟 步驟501:基本應用功能模塊調用消息總線接口發(fā)送消息; 步驟502:消息總線為消息分配唯一的標識,本實施方式中,該標識 為消息的序列號;
步驟503:消息總線將消息打包,本實施方式中,消息包括同步消息 和返回消息,將消息打包是將消息轉化為可基于socket傳送的byte數(shù)組;
步驟504:消息總線根據(jù)消息中指定的目的地址與消息的目的進程建 立socket鏈接;
步驟505:消息總線將打包的消息發(fā)送給目的進程,并等待返回消息; 步驟506、消息總線判斷返回消息是否超時,如果超時則轉步驟508;未超時則轉步驟507;
步驟507:將返回消息進行解析后返回給基本應用功能模塊,流程結束。
步驟508:向基本應用功能模塊提示超時異常,流程結束。
基本應用功能模塊收到同步返回消息后,根據(jù)返回消息決定基本應用 功能模塊的基本業(yè)務邏輯的后續(xù)執(zhí)行流程,并繼續(xù)執(zhí)行其基本業(yè)務邏輯。
以上內容是結合具體的優(yōu)選實施方式對本發(fā)明所作的進一步詳細說 明,不能認定本發(fā)明的具體實施只局限于這些說明。對于本發(fā)明所屬技術 領域的普通技術人員來說,在不脫離本發(fā)明構思的前提下,還可以做出若 干簡單推演或替換,都應當視為屬于本發(fā)明的保護范圍。
權利要求
1. 一種基于分布式環(huán)境的功能擴展方法,其特征在于,包括以下步驟A. 在基本應用功能模塊中設置多個功能擴展點,并在功能擴展管理模塊中建立功能擴展點與各應用功能擴展實現(xiàn)模塊之間的對應關系;B. 當運行到功能擴展點時,根據(jù)功能擴展管理模塊中對應關系,查找該功能擴展點所對應的應用功能擴展實現(xiàn)模塊;C. 基本應用功能模塊通過消息來調用上述查找到的應用功能擴展實現(xiàn)模塊。
2. 根據(jù)權利要求1所述的功能擴展方法,其特征在于,所述步驟C具 體包括以下步驟Cl.基本應用功能模塊向步驟B獲得的應用功能擴展實現(xiàn)模塊發(fā)送包 含執(zhí)行請求的同步消息;C2.應用功能擴展實現(xiàn)模塊響應上述請求,執(zhí)行擴展的應用業(yè)務邏輯, 并將執(zhí)行結果通過返回消息發(fā)送給基本應用功能模塊。
3. 根據(jù)權利要求1所述的功能擴展方法,其特征在于,所述步驟A具 體包括以下步驟Al.獲取當前進程中所有基本應用功能模塊的功能擴展點聲明定義 配置,該配置中包括功能擴展點ID;A2.獲取當前進程中所有應用功能擴展實現(xiàn)模塊配置,該配置中包括 與功能擴展點ID的對應關系;A3.根據(jù)步驟Al中的功能擴展點ID和步驟A2中的對應關系建立功 能擴展點與應用功能擴展實現(xiàn)模塊的對應關系。
4. 根據(jù)權利要求1至3中任意一項所述的功能擴展方法,其特征在于, 所述步驟C中的調用是通過消息總線實現(xiàn)的。
5. 根據(jù)權利要求1至3中任意一項所述的功能擴展方法,其特征在于, 所述步驟A還包括將功能擴展點與應用功能擴展實現(xiàn)模塊的對應關系存儲 在功能擴展注冊表中的過程;所述步驟B通過査詢該注冊表獲得功能擴展 點相對應的應用功能擴展實現(xiàn)模塊。
6. 根據(jù)權利要求5所述的功能擴展方法,其特征在于,所述步驟A還 包括通過調用消息總線發(fā)送包含功能擴展點與應用功能擴展實現(xiàn)模塊對應 關系的消息,通知其他進程更新其所包含的功能擴展注冊表的過程。
7. —種基于分布式環(huán)境的功能擴展系統(tǒng),其特征在于,包括多個進程, 所述進程包括功能擴展管理模塊、基本應用功能模塊和應用功能擴展實現(xiàn) 模塊,所述功能擴展管理模塊用于建立功能擴展點與應用功能擴展實現(xiàn)模 塊的對應關系;所述基本應用功能模塊用于實現(xiàn)基本的應用業(yè)務邏輯,運 行到功能擴展點時根據(jù)所述對應關系査找該功能擴展點所對應的應用功能 擴展實現(xiàn)模塊,并通過消息調用該功能擴展點所對應的應用功能擴展實現(xiàn) 模塊。
8. 根據(jù)權利要求7所述的功能擴展系統(tǒng),其特征在于,所述基本應用 功能模塊還用于向査找到的所述應用功能擴展實現(xiàn)模塊發(fā)送包含執(zhí)行請求 的同步消息;所述應用功能擴展實現(xiàn)模塊用于響應所述執(zhí)行請求,執(zhí)行擴 展的應用業(yè)務邏輯,并將執(zhí)行結果通過返回消息發(fā)送給所述基本應用功能 模塊。
9. 根據(jù)權利要求7或8所述的功能擴展系統(tǒng),其特征在于,還包括消 息總線,所述消息總線用于調用所述消息。
10. 根據(jù)權利要求9所述的功能擴展系統(tǒng),其特征在于,所述功能擴 展管理模塊中設有功能擴展注冊表,用于存儲所述功能擴展管理模塊建立 的所述對應關系;所述功能擴展管理模塊還用于通過調用所述消息總線發(fā) 送包含功能擴展點與應用功能擴展實現(xiàn)模塊對應關系的消息,通知其他進 程更新其所包含的功能擴展注冊表。
全文摘要
本發(fā)明公開了一種基于分布式環(huán)境的功能擴展方法,包括以下步驟A.在基本應用功能模塊中設置多個功能擴展點,并在功能擴展管理模塊中建立功能擴展點與各應用功能擴展實現(xiàn)模塊之間的對應關系;B.當運行到功能擴展點時根據(jù)功能擴展管理模塊中對應關系,查找該功能擴展點所對應的應用功能擴展實現(xiàn)模塊;C.基本應用功能模塊通過消息來調用上述查找到的應用功能擴展實現(xiàn)模塊。本發(fā)明還公開了一種基于分布式環(huán)境的功能擴展系統(tǒng)。本發(fā)明利用消息可以在分布式環(huán)境中傳遞的特點,將應用功能擴展實現(xiàn)的調用采用發(fā)送消息的方式進行,解決了本地調用所無法完成的不同進程之間的功能調用,從而完成了分布式環(huán)境中的功能擴展。
文檔編號H04M3/24GK101499931SQ20091010598
公開日2009年8月5日 申請日期2009年3月13日 優(yōu)先權日2009年3月13日
發(fā)明者唐文彬, 蓉 張, 汪德彬, 珂 田 申請人:中興通訊股份有限公司