分布式軟體系統的部署方法
2023-05-04 19:05:41
專利名稱:分布式軟體系統的部署方法
技術領域:
本發明涉及企業級或電信級的分布式軟體系統,特別涉及分布式軟體系統的部署方法。
技術背景軟體系統一般有三種系統結構(一) 集中式體系結構由一個或多個伺服器構成中心伺服器,所有的用戶請求均被發往中心伺服器。中心服務 器存儲著所有的數據,並為所有的用戶提供服務。顯然這種結構簡單、易於管理,但是容易 造成網絡或伺服器系統的瓶頸現象。(二) 分層式體系結構分層式體系結構易於擴大服務範圍,分層的層次可以隨著服務範圍的大小而變化。這種 結構中,伺服器連接成樹型結構,中心伺服器被放置在樹根位置,由葉子節點上的伺服器為 用戶服務,每個葉子節點的伺服器都存放著父節點伺服器中的所有數據的子集。這種結構的缺點之一是數據可能要在許多個伺服器上有備份,造成存儲空間的浪費,而且用戶請求的數 據不在葉子節點伺服器上時,需要較長的響應時間。(三) 分布式體系結構從層次上看,分布式體系結構只有兩層,中心伺服器和本地伺服器。但是從系統設計和 實現的角度上看,存在有多個本地伺服器的分布管理,本地伺服器間的負載平衡以及中心服 務器和本地伺服器間的通信問題。企業級和電信級的規模的軟體系統中業務分布點數量比較多的情況下,就迫切需要一種 能夠方便的部署業務軟體的方法,並減少由於人工操作不慎帶來的軟體版本的不一致性等。發明內容為了克服現有技術的缺陷和不足,本發明的目的在於提供一種分布式軟體系統的部署方 法,能夠在電信級規模的軟體系統中業務分布點數量比較多的情況下,方便的部署業務軟體, 並減少由於人工操作不慎帶來的軟體版本的不一致性,同時可以減少大量的人工工作量。 為了達到上述目的,本發明一種分布式軟體系統的部署方法包括以下步驟- (1 )中心服務進程將業務軟體版本更新指令發送到獨立於業務分布點上業務流程的本地 代理進程;(2)本地代理進程根據該指令進行業務軟體版本更新;其中,所述中心服務進程和所述本地代理進程使用統一的二進位指令。優選地,所述步驟(1)具體為(11)中心服務進程向獨立於業務分布點上業務流程的本地代理進程發送版本升級或回 退指令。優選地,所述的步驟(2)具體為(21) 業務分布點上的主機和備機的本地代理進程根據該指令向版本伺服器獲取業務軟 件版本;(22) 業務分布點上的備機進行業務軟體版本升級或回退操作後在主機上執行雙機倒換任務;(23) 業務分布點上的主機進行業務軟體版本升級或回退操作後,向中心服務進程返回 升級或回退的結果信息。優選地,所述的步驟(21)具體為(211) 業務分布點上主機的本地代理進程收到該指令後向版本伺服器發送獲取業務軟體 版本請求;(212) 版本伺服器向主機上的本地代理進程返回業務軟體版本;(213) 該主機的本地代理進程向業務分布點上備機的本地代理進程發送版本升級或回退指令;(214) 該備機上的本地代理進程向該主機的本地代理進程發送獲取業務軟體版本請求;(215) 主機上的本地代理進程將該業務軟體版本發送給備機上的本地代理進程。 優選地,所述的步驟(22)具體為(221) 備機上的本地代理進程對數據和版本進行備份操作;(222) 備機上的本地代理進程進行業務軟體版本升級或者回退操作;
(223) 備機上的本地代理進程將業務軟體版本升級或者回退結果發送給主機上的本地代 理進程;(224) 在主機上執行雙機倒換任務。 優選地,所述的步驟(23)具體為(231) 主機上的本地代理進程對數據和版本進行備份操作;(232) 主機上的本地代理進程進行業務軟體版本的升級或者回退操作;(233) 主機上的本地代理進程向備機返回業務軟體版本升級或者回退的結果信息;(234) 備機上的本地代理進程向中心服務進程返回業務軟體升級或者回退結果信息。優選地,所述步驟(1)前還包括(A)操作員通過用戶操作進程,選擇相應的業務分布點,通過不同的操作來組合指令 庫中不同的軟體版本更新指令後發送到中心服務進程。優選地,所述用戶操作進程和中心服務進程之間的連接是通過瀏覽器/伺服器的模式或客 戶端/伺服器的模式。優選地,所述的本地代理進程是以作業系統服務的方式運行於業務分布點上。採用上述的方法後,由於採用了分布式體系結構,同時也結合了集中式體系結構的集中 管理的簡單性;使得整個部署軟體系統可以根據業務點的擴展而逐步擴展,因為整個部署軟 件系統採用了分布式的體系結構所以只有兩層,並且各個業務分布點的本地代理進程都從中 心服務進程更新業務軟體版本能夠使得企業級或者電信級的軟體系統的各個業務分布點的業 務軟體保持一致,從而避免了大量的人工操作及其由人工操作的不慎帶來的業務分布點的業 務軟體的不一致性。
圖l是本發明的分布式軟體部署系統邏輯結構圖;圖2是本發明在業務分布點為雙機倒換模式的分布式軟體部署系統工作時序圖。
具體實施方式
本發明提出的分布式系統的軟體部署方法,整個系統架構採用分布式體系結構,從層次 上看,整個系統有兩層,"中心服務進程"和"本地代理進程"。為了操作方便,在中心服務
器的前端還可有一個"用戶操作進程";用戶操作進程和中心服務進程之間可以採用B/S (瀏 覽器/伺服器)結構也可以採用C/S (客戶端/伺服器)結構。在本發明中,本地代理進程以作業系統服務或其他方式運行於業務分布點上;在中心服 務進程和本地代理進程上有統一的二進位指令庫;並且本地代理進程根據從中心服務進程接 收到的消息,來判斷是否要更新指令庫;操作員通過用戶操作進程,選擇相應的業務分布點, 通過不同的操作來組合指令庫中不同的業務軟體版本更新指令;然後中心服務進程將指令組 合發送到對應的業務分布點,業務分布點的本地代理進程根據指令組合來升級、回退本地的 業務進程、以及執行一些腳本,以及雙機倒換操作等。下面結合圖1、圖2對本發明的具體實施方式
作進一步的詳細說明圖1為本發明的系統邏輯結構圖,如圖1所示,分布式軟體部署系統本身是分布式的, 只有兩層結構;整個分布式軟體部署系統主要包括中心服務進程和本地代理進程,還包括版 本伺服器,其中,本地代理進程運行於業務分布點上,但是獨立於業務分布點的業務進程;版本伺服器運行於業務中心點上,但是獨立於業務中心點的業務進程;在各個業務點上分布 的本地代理進程都從中心服務進程獲取指令組合,並且本地的指令庫都保持和中心服務進程 所使用的指令庫一致。圖2是本發明在業務分布點為雙機倒換模式的系統工作時序圖,如圖2所示,包括中心 服務進程、版本伺服器、本地代理進程(主)和本地代理進程(備);本雙機倒換模式下軟體 部署包括以下流程1、 業務分布點主機上的本地代理進程收到中心服務進程的業務軟體版本升級或回退請求。2、 主機上的本地代理進程向版本伺服器發送獲取業務軟體版本請求。3、 版本伺服器向主機上的本地代理進程返回業務軟體版本響應。4、 主機上的本地代理進程向備機上的本地代理進程發送版本升級或回退請求。5、 備機上的本地代理進程向主機上的本地代理進程發送獲取業務軟體版本請求。6、 主機上的本地代理進程向備機上的本地代理進程返回業務軟體版本響應。7、 備機上的本地代理進程對數據和版本等備份。8、 備機上的本地代理進程進行版本的升級或回退操作。
9、 備機上的本地代理進程向主機上的本地代理進程返回版本升級或回退結果。
10、 在主機上執行雙機倒換。
11、 主機上的本地代理進程執行各種備份操作。
12、 主機上的本地代理進程升級或回退業務軟體版本。
13、 主機上的本地代理進程向備機返回版本升級或回退結果。
14、 備機上的本地代理進程向中心服務進程返回版本升級或者回退結果。
這樣,由於採用了分布式體系結構,同時也結合了集中式體系結構的集中管理的簡單性; 使得整個部署軟體系統可以根據業務點的擴展而逐步擴展,因為整個部署軟體系統採用了分 布式的體系結構所以只有兩層,並且各個業務分布點的本地代理進程都從中心服務進程更新 業務軟體版本能夠使得企業級或者電信級的軟體系統的各個業務分布點的業務軟體保持一 致,從而避免了大量的人工操作及其由人工操作的不慎帶來的業務分布點的業務軟體的不一 致性。
權利要求
1、一種分布式軟體系統的部署方法,其特徵在於,包括以下步驟(1)中心服務進程將業務軟體版本更新指令發送到獨立於業務分布點上業務流程的本地代理進程;(2)本地代理進程根據該指令進行業務軟體版本更新;其中,所述中心服務進程和所述本地代理進程使用統一的二進位指令。
2、 按照權利要求1所述的分布式軟體系統的部署方法,其特徵在於,所述步驟(1)具 體為(11)中心服務進程向獨立於業務分布點上業務流程的本地代理進程發送版本升級或回退指令。
3、 按照權利要求2所述的分布式軟體系統的部署方法,其特徵在於,所述的步驟(2) 具體為-(21) 業務分布點上的主機和備機的本地代理進程根據該指令向版本伺服器獲取業務軟 件版本;(22) 業務分布點上的備機進行業務軟體版本升級或回退操作後在主機上執行雙機倒換任務;(23) 業務分布點上的主機進行業務軟體版本升級或回退操作後,並向中心服務進程返 回升級或回退的結果信息。
4、 按照權利要求3所述的分布式軟體系統的部署方法,其特徵在於,所述的步驟(21) 具體為(2H)業務分布點上主機的本地代理進程收到該指令後向版本伺服器發送獲取業務軟體 版本請求;(212) 版本伺服器向主機上的本地代理進程返回業務軟體版本;(213) 該主機的本地代理進程向業務分布點上備機的本地代理進程發送版本升級或回退指令;(214) 該備機上的本地代理進程向該主機的本地代理進程發送獲取業務軟體版本請求;(215) 主機上的本地代理進程將該業務軟體版本發送給備機上的本地代理進程。
5、 按照權利要求3所述的分布式軟體系統的部署方法,其特徵在於,所述的步驟(22) 具體為-(221) 備機上的本地代理進程對數據和版本進行備份操作;(222) 備機上的本地代理進程進行業務軟體版本升級或者回退操作;(223) 備機上的本地代理進程將業務軟體版本升級或者回退結果發送給主機上的本地代理進程;(224) 在主機上執行雙機倒換任務。
6、 按照權利要求3所述的分布式軟體系統的部署方法,其特徵在於,所述的步驟(23) 具體為(231) 主機上的本地代理進程對數據和版本進行備份操作;(232) 主機上的本地代理進程進行業務軟體版本的升級或者回退操作;(233) 主機上的本地代理進程向備機返回業務軟體版本升級或者回退的結果信息;(234) 備機上的本地代理進程向中心服務進程返回業務軟體升級或者回退結果信息。
7、 按照權利要求1所述的分布式軟體系統的部署方法,其特徵在於,所述步驟(1)前還包括(A)操作員通過用戶操作進程,選擇相應的業務分布點,通過不同的操作來組合指令 庫中不同的軟體版本更新指令後發送到中心服務進程。
8、 按照權利要求7所述的分布式軟體系統的部署方法,其特徵在於,所述用戶操作進程 和中心服務進程之間的連接是通過瀏覽器/伺服器的模式或客戶端/伺服器的模式。
9、 按照權利要求1所述的分布式軟體系統的部署方法,其特徵在於,所述的本地代理進 程是以作業系統服務的方式運行於業務分布點上。
全文摘要
本發明公開了一種分布式軟體系統的部署方法。為解決現有技術中業務分布點數量比較多,部署業務軟體困難,並且人工操作容易不慎帶來的軟體版本不一致性的問題而發明。本發明包括以下步驟(1)中心服務進程將業務軟體版本更新指令發送到獨立於業務分布點上業務流程的本地代理進程;(2)本地代理進程根據該指令進行業務軟體版本更新;其中,所述中心服務進程和所述本地代理進程使用統一的二進位指令。這樣,各個業務分布點的本地代理進程都從中心服務進程更新業務軟體版本能夠使得企業級或者電信級的軟體系統的各個業務分布點的業務軟體保持一致,從而避免了大量的人工操作不慎帶來的業務軟體不一致性,並且可以方便的部署業務軟體。
文檔編號H04L12/24GK101105745SQ200610099028
公開日2008年1月16日 申請日期2006年7月14日 優先權日2006年7月14日
發明者印和平, 王印龍, 捷 胡, 亮 郭, 源 陶 申請人:中興通訊股份有限公司