專利名稱:一種基于配置自動改變應用軟件分層部署架構的實現方法
技術領域:
本發明涉及基于.Net平臺的ERP軟件開發部署技術領域,特別涉及一種基于配置自動改變應用軟件分層部署架構的實現方法。
背景技術:
隨著IT技術的發展,更多的應用軟件采用面向服務設計思想(SOA)開發,這樣,開發時將應用軟件分為表現層、業務邏輯層和數據庫訪問層。
基于安全方面的考慮,分層開發的應用軟件部署時,一般采用多層部署架構。大型企業集團在部署ERP (企業資源計劃)系統時,大多采用三層部署。三層分別是客戶端、Web及應用服務器、數據庫服務器,三層之間使用防火墻進行隔離。
但是,在某些行業中,例如金融、保險,由于對安全性有更高的要求。在軟件部署時需要采用四層部署。四層部署將Web服務器和應用服務器隔離。這樣四層分別是客戶端、Web服務器、應用服務器和數據庫服務器。四層之間使用防火墻進行隔離,只有相鄰的兩層之間的服務器可以互相訪問。
常規的SOA服務很容易滿足三層部署模式。對于通用產品,提供的應用服務要同時支持三層部署模式和四層部署模式。對于不同模式的支持,不應該通過開發多個不同的產品模塊來實現。相反的,應該使用同一個產品模塊,采用不同的部署方案和配置實現對于不同模式的支持。
目前,尚未有 方法能夠使得產品模塊能夠同時支持三層/四層部署架構。發明內容
為了解決現有技術的問題,本發明提供了一種基于配置自動改變應用軟件分層部署架構的實現方法,其通過配置來同時支持三層部署架構和四層部署架構。
本發明所采用的技術方案如下: 一種基于配置自動改變應用軟件分層部署架構的實現方法,包括開發階段的實現方法和項目實施階段的實現方法,其中, 所述的開發階段的實現方法具體包括以下步驟: A、定義統一的應用服務框架,所述的應用服務框架用于接收并處理來自客戶端的各種協議的應用服務請求; B、定義具體的業務邏輯實現; C、管理業務邏輯實現; D、定義部署架構管理,針對不同的部署架構,調用本地或者遠程服務提供的業務邏輯實現; 所述的項目實施階段的實現方法具體包括以下步驟: E、部署統一所述的應用服務框架; F、部署所述的業務邏輯實現;G、配置所述的業務邏輯實現; H、配置應用服務框架分層架構。
步驟A中,對于應用服務框架的客戶端請求處理,將接收到的請求按照不同的配置規則轉向不同的處理應用服務。
步驟A中,對于應用服務框架中的應用服務實現,增加部署模式的配置項,可將該配置項設置為“三”或者“四”,分別對應三層部署架構和四層部署架構,如果部署模式設置為“三”,則以反射方式調用本地業務邏輯實現;如果部署模式為“四”,需要配置處理客戶端請求的遠端服務地址,將請求轉發到配置的遠端服務。
步驟B中,對于具體的業務邏輯,定義統一的業務邏輯操作接口,接口定義與步驟A中的應用服務框架中應用服務提供的服務接口匹配。
步驟C中,對于管理業務邏輯實現,使用統一的配置文件進行管理,配置文件定義了業務邏輯實現的類型、實現的程序集和對象名稱。
步驟E中,統一應用服務框架以Web應用的方式發布在互聯網信息服務中。
步驟E中,采用三層部署架構時,統一應用服務框架部署在Web服務器上,采用四層部署架構時,統一應用服務框架分別部署在Web服務器和應用服務器上。
步驟F中,所有業務邏輯實現的dll部署在統一應用服務框架指定目錄下。
步驟G中,配置業務邏輯實現時,將業務邏輯類型與實現該業務邏輯的dll文件、類名進行關聯。
步驟H中,如果沒有配置部署模式,應用軟件將采用默認的三層部署架構進行工作;如果部署模式配置非法,應用軟件將采用默認的三層部署架構進行工作;如果配置采用四層部署架構,并且沒有配置遠端服務地址,應用軟件將向客戶端返回“配置錯誤”信息。
本發明提供的技術方案帶來的有益效果是: 本發明通過在實施階段對部署架構的配置,實現了在三層/四層部署時對客戶端請求的處理,使得企業在ERP系統的部署時,三層/四層部署時可以采用同一套產品模塊,解決了使用同一套產品支持三層/四層部署架構的問題。通過開發可配置的.Net應用軟件統一服務框架,匹配使用者需求,自動改變軟件部署架構,避免因為部署要求改變帶來的應用軟件修改,降低時間資源和人力資源的浪費。
圖1為本發明的一種基于配置自動改變應用軟件分層部署架構的實現方法在三層部署架構時的部署圖; 圖2為本發明的一種基于配置自動改變應用軟件分層部署架構的實現方法在四層部署架構時的部署圖; 圖3為本發明的一種基于配置自動改變應用軟件分層部署架構的實現方法在開發階段的實現類圖。
具體實施方式
為使本發明的目的、技術方案和優點更加清楚,下面將結合附圖對本發明實施方式作進一步地詳細描述。
實施例一 一種基于配置自動改變應用軟件分層部署架構的實現方法,包括開發階段的實現方法和項目實施階段的實現方法,其中, 所述的開發階段的實現方法具體包括以下步驟: A、定義統一的應用服務框架,所述的應用服務框架用于接收并處理來自客戶端的各種協議的應用服務請求; 對于應用服務框架的客戶端請求處理,將接收到的請求按照不同的配置規則轉向不同的處理應用服務。
對于應用服務框架中的應用服務實現,增加部署模式的配置項,可將該配置項設置為“三”或者“四”,分別對應三層部署架構和四層部署架構,如果部署模式設置為“三”,則以反射方式調用本地業務邏輯實現;如果部署模式為“四”,需要配置處理客戶端請求的遠端服務地址,將請求轉發到配置的遠端服務。
B、定義具體的業務邏輯實現;對于具體的業務邏輯,定義統一的業務邏輯操作接口,接口定義與步驟A中的應用服務框架中應用服務提供的服務接口匹配。
C、管理業務邏輯實現;對于管理業務邏輯實現,使用統一的配置文件進行管理,配置文件定義了業務邏輯實現的類型、實現的程序集和對象名稱。
D、定義部署架構 管理,針對不同的部署架構,調用本地或者遠程服務提供的業務邏輯實現; 所述的項目實施階段的實現方法具體包括以下步驟: E、部署統一所述的應用服務框架;統一應用服務框架以Web應用的方式發布在互聯網信息服務中。
如附圖1所示,采用三層部署架構時,統一應用服務框架部署在Web服務器上,如附圖2所示,采用四層部署架構時,統一應用服務框架分別部署在Web服務器和應用服務器上。
F、部署所述的業務邏輯實現;所有業務邏輯實現的dll部署在統一應用服務框架指定目錄下。
G、配置所述的業務邏輯實現;配置業務邏輯實現時,將業務邏輯類型與實現該業務邏輯的dll文件、類名進行關聯。
H、配置應用服務框架分層架構。
如果沒有配置部署模式,應用軟件將采用默認的三層部署架構進行工作;如果部署模式配置非法,應用軟件將采用默認的三層部署架構進行工作;如果配置采用四層部署架構,并且沒有配置遠端服務地址,應用軟件將向客戶端返回“配置錯誤”信息。
以下將通過ERP系統中的財務會計憑證的查詢服務實現的詳細描述,使本發明的上述目標、特征和優點更加清晰、易懂。
首先在開發階段,圖3定義了開發階段的實現類圖: (一)定義應用服務框架。
應用服務采用微軟WCF框架,定義服務契約IBusinessService和服務實現類BusinessService 類。BusinessService 服務實現 Query (string)方法。Query 方法參數是業務類型,返回類型為json字符串。
權利要求
1.一種基于配置自動改變應用軟件分層部署架構的實現方法,包括開發階段的實現方法和項目實施階段的實現方法,其中, 所述的開發階段的實現方法具體包括以下步驟: A、定義統一的應用服務框架,所述的應用服務框架用于接收并處理來自客戶端的各種協議的應用服務請求; B、定義具體的業務邏輯實現; C、管理業務邏輯實現; D、定義部署架構管理,針對不同的部署架構,調用本地或者遠程服務提供的業務邏輯實現; 所述的項目實施階段的實現方法具體包括以下步驟: E、部署統一所述的應用服務框架; F、部署所述的業務邏輯實現; G、配置所述的業務邏輯實現; H、配置應用服務框架分層架構。
2.根據權利要求1所述的一種基于配置自動改變應用軟件分層部署架構的實現方法,其特征在于,所述的步驟A中,對于應用服務框架的客戶端請求處理,將接收到的請求按照不同的配置規則轉向不同的處理應用服務。
3.根據權利要求1或2所述的一種基于配置自動改變應用軟件分層部署架構的實現方法,其特征在于,所述的步驟A中,對于應用服務框架中的應用服務實現,增加部署模式的配置項,可將該配置項設置為“三”或者“四”,分別對應三層部署架構和四層部署架構,如果部署模式設置為“三”,則以反射方式調用本地業務邏輯實現;如果部署模式為“四”,需要配置處理客戶端請求的遠端服務地址,將請求轉發到配置的遠端服務。
4.根據權利要求1所述的一種基于配置自動改變應用軟件分層部署架構的實現方法,其特征在于,所述步驟B中,對于具體的業務邏輯,定義統一的業務邏輯操作接口,接口定義與步驟A中的應用服務框架中應用服務提供的服務接口匹配。
5.根據權利要求1所述的一種基于配置自動改變應用軟件分層部署架構的實現方法,其特征在于,所述步驟C中,對于管理業務邏輯實現,使用統一的配置文件進行管理,配置文件定義了業務邏輯實現的類型、實現的程序集和對象名稱。
6.根據權利要求1所述的一種基于配置自動改變應用軟件分層部署架構的實現方法,其特征在于,所述步驟E中,統一應用服務框架以Web應用的方式發布在互聯網信息服務中。
7.根據權利要求1所述的一種基于配置自動改變應用軟件分層部署架構的實現方法,其特征在于,所述步驟E中,采用三層部署架構時,統一應用服務框架部署在Web服務器上,采用四層部署架構時,統一應用服務框架分別部署在Web服務器和應用服務器上。
8.根據權利要求1所述的一種基于配置自動改變應用軟件分層部署架構的實現方法,其特征在于,所述步驟F中,所有業務邏輯實現的dll部署在統一應用服務框架指定目錄下。
9.根據權利要求1所述的一種基于配置自動改變應用軟件分層部署架構的實現方法,其特征在于,所述步驟G中,配置業務邏輯實現時,將業務邏輯類型與實現該業務邏輯的dll文件、類名進行關聯。
10.根據權利要求1所述的一種基于配置自動改變應用軟件分層部署架構的實現方法,其特征在于,所述步驟H中,如果沒有配置部署模式,應用軟件將采用默認的三層部署架構進行工作;如果部署模式配置非法,應用軟件將采用默認的三層部署架構進行工作;如果配置采用四層部署架構,并且沒有配置遠端服務地址,應用軟件將向客戶端返回“配置錯誤”信息。·
全文摘要
本發明涉及基于.Net平臺的ERP軟件開發部署技術領域,特別涉及一種基于配置自動改變應用軟件分層部署架構的實現方法。其方法包括統一應用服務框架的定義、業務邏輯的實現與管理、部署模式配置和運行時服務的自動調用。本發明通過開發可配置的.Net應用軟件統一服務框架,匹配使用者需求,自動改變軟件部署架構,避免因為部署要求改變帶來的應用軟件修改,降低時間資源和人力資源的浪費。
文檔編號G06F9/44GK103218234SQ201310174430
公開日2013年7月24日 申請日期2013年5月13日 優先權日2013年5月13日
發明者董亮 申請人:浪潮集團山東通用軟件有限公司