一種基於移動代理伺服器的對象請求裝配方法
2023-10-04 03:04:34 2
專利名稱:一種基於移動代理伺服器的對象請求裝配方法
技術領域:
本發明涉及一種網絡環境中分布式應用系統開發和運行支撐的基本框架,特別是一種基於可移動軟體代理的對象請求裝配方法。
背景技術:
構件技術是分布式應用系統的基礎技術,傳統的構件技術是一種基於「總線」的標準,其主要機制是對象請求中介方法。然而,在異構網絡計算環境中,這種方法靈活性差,即它只能表達單一的以數據傳輸為基礎的方法調用;效率不高,即調用構件和被調用構件之間的多次交互需要通過多次的方法調用來完成;堅定性不強,不能有效地支持調用構件和被調用構件間的斷開式交互;裝配欠靈活,即構件的功能和其結構機制往往融合在一起,難以對靈活的裝配手段提供有效支持。這些不足在某種意義下制約了對象請求中介方法在網絡環境下的廣泛應用。
上述對象請求中介方法的不足根本點在於其基於的遠程對象允引和調用。而新一代的可移動軟體代理技術可以有效地彌補上述技術的不足。基於此,本發明以可移動軟體代理的裝配為基礎取代遠程對象允引和調用機制,從而克服傳統的構件軟體系統的不足。
發明內容
本發明的目的是針對現有技術難以很好支持基於Internet的異構網絡應用系統開發的不足,採用可移動軟體代理技術,改進對象請求中介方法,以提供基於該方法設計和開發的系統的網絡適應能力。
為實現上述目的,本發明的技術方案是一種基於移動代理伺服器的對象請求裝配方法,該方法包括以下步驟1、從輸入器輸入組調用表和定位表;2、裝入分析器,對上述兩表進行分析,生成表分析對象;3、裝入編譯器,生成可移動請求代理;4、分析移動代理中的旅行計劃,若不為空,則執行步驟5,否則轉步驟9;5、移動代理根據旅行計劃通過移動代理伺服器和網絡設備進行網絡遷移;6、移動代理根據執行計劃進行服務裝配,驅動相應請求對象;
7、移動代理收集請求對象的運行結果;8、轉步驟4;9、如果構件請求尚未完成,則執行步驟10,否則轉步驟11;10、移動代理生成新的旅行計劃和執行計劃,並轉步驟5;11、移動代理按照執行計劃對前述步驟7中收集的結果進行處理;12、移動代理攜帶處理結果通過移動代理伺服器和網絡設備返回原請求節點;13、移動代理將處理結果交還請求構件;14、結束。
其中在上述第2步驟中,對兩表進行分析,生成表分析對象的步驟如下1、將輸入結果存為表文件;2、生成表對象框架;3、取文件下一標識,如果標識為文件結束符,轉步驟12;如果標識為」Location」(位置),轉步驟4,否則轉步驟6;4、生成LocationItem(位置項)實例,依次取下四個標識,記入LocationItem屬性;5、將該LocationItem實例記入表對象框架,轉步驟3;6、生成Group(調用組)實例;7、取出組類型標識,記入Group實例;8、取出後處理標識,記入Group實例;9、產生參數向量實例,取出參數標識序列,依次填入參數向量實例,並將該實例記入Group實例;10、取出「指引」標識,記入Group實例;11、轉步驟3;12、結束。
在第3步驟中,編譯過程的步驟如下1、分析器將表對象送交編譯器;2、生成移動代理實例對象;
3、生成移動代理構造函數;4、依次取表對象中的LocationItem,設置移動代理旅行計劃;5、依次取表對象中的Group,設置移動代理的裝配計劃;6、將生成的結果寫入文件;7、結束。
本發明主要包括以下幾個方面1、構件基本模型。
本發明中,構件由五個部分組成組調用表,定位表,請求和服務接口,及構件的功能體。構件的功能體實現了構件對外界提供的服務,它可用開發者喜歡的任何語言書寫。構件的智能線可移動軟體代理由組調用表和定位表生成,它與功能體完全分離。組調用表提供了軟體代理移動的控制邏輯,定位表為構件提供位置信息,這些信息對軟體代理的遷移至關重要。為使構件易於復用,必須首先定義好構件的接口,接口用OMG IDL書寫。
組調用表將一組相關的調用及調用後的處理組合在一起,形成一個邏輯單位。這一組調用請求通過可移動軟體代理,根據組調用表所提供的執行邏輯次序,流動到提供該服務的構件所在的節點完成請求的執行。組調用表的結構設計如下
定位表用於描述構件軟體系統所需的構件(包括構件對象的初值)所在的位置信息。可移動軟體代理正是根據定位表的信息來決定流動的目標節點。定位表的結構可以簡單描述如下
本發明與現有技術相比,其顯著優點採用了可移動軟體代理進行對象請求的裝配和驅動,可以有效提高網絡應用系統的網絡適應性。
四
圖1是本發明方法的流程圖。
圖2是表分析步驟流程圖。
圖3是移動代理生成步驟流程圖。
五具體實施例方式
使用本發明進行網絡應用軟體開發必須在藉助本發明的可移動軟體代理伺服器,用戶遵循本發明構件模型進行軟體開發,在提交了相關構件的組調用表和定位表後,軟體代理伺服器將按照上述流程對構件進行分析並編譯,一方面替換出現在兩表中的對象請求,另一方面將根據上述兩表生成一個或多個可移動的軟體請求代理,每個請求代理都具備網絡遷移能力,並至少包含旅行計劃和裝配計劃兩個部分。然後該請求代理將在代理伺服器的支持下,根據上述計劃在網絡上漫遊,代表用戶構件,裝配並驅動相應服務構件,收集並處理中間結果,並最終完成用戶構件請求,通過網絡設備返回原節點。具體步驟是1、從輸入器輸入組調用表和定位表;2、裝入分析器,對上述兩表進行分析,生成表分析對象;3、裝入編譯器,生成可移動請求代理;4、分析移動代理中的旅行計劃,若不為空,則執行步驟5,否則轉步驟9;5、移動代理根據旅行計劃通過移動代理伺服器和網絡設備進行網絡遷移;6、移動代理根據執行計劃進行服務裝配,驅動相應請求對象;7、移動代理收集請求對象的運行結果;8、轉步驟4;9、如果構件請求尚未完成,則執行步驟10,否則轉步驟11;10、移動代理生成新的旅行計劃和執行計劃,並轉步驟5;11、移動代理按照執行計劃對前述步驟7中收集的結果進行處理;12、移動代理攜帶處理結果通過移動代理伺服器和網絡設備返回原請求節點;13、移動代理將處理結果交還請求構件;14、結束。
權利要求
1.一種基於移動代理伺服器的對象請求裝配方法,其特徵在於該方法包括以下步驟(1)從輸入器輸入組調用表和定位表;(2)裝入分析器,對上述兩表進行分析,生成表分析對象;(3)裝入編譯器,生成可移動請求代理;(4)分析移動代理中的旅行計劃,若不為空,則執行步驟(5),否則轉步驟(9);(5)移動代理根據旅行計劃通過移動代理伺服器和網絡設備進行網絡遷移;(6)移動代理根據執行計劃進行服務裝配,驅動相應請求對象;(7)移動代理收集請求對象的運行結果;(8)轉步驟(4);(9)如果構件請求尚未完成,則執行步驟(10),否則轉步驟(11);(10)、移動代理生成新的旅行計劃和執行計劃,並轉步驟(5);(11)、移動代理按照執行計劃對前述步驟(7)中收集的結果進行處理;(12)、移動代理攜帶處理結果通過移動代理伺服器和網絡設備返回原請求節點;(13)、移動代理將處理結果交還請求構件;(14)結束。
2.根據權利要求1所述的一種基於移動代理伺服器的對象請求裝配方法,其特徵在於在第(2)步驟中,對兩表進行分析,生成表分析對象的步驟如下(1)將輸入結果存為表文件;(2)生成表對象框架;(3)取文件下一標識,如果標識為文件結束符,轉步驟(12);如果標識為「位置」,轉步驟(4),否則轉步驟(6);(4)生成位置項實例,依次取下四個標識,記入位置項屬性;(5)將該位置項實例記入表對象框架,轉步驟(3);(6)生成調用組實例;(7)取出組類型標識,記入調用組實例;(8)取出後處理標識,記入調用組實例;(9)產生參數向量實例,取出參數標識序列,依次填入參數向量實例,並將該實例記入調用組實例;(10)取出「指引」標識,記入調用組實例;(11)轉步驟(3);(12)結束。
3.根據權利要求1所述的一種基於移動代理伺服器的對象請求裝配方法,其特徵在於在第(3)步驟中,編譯過程的步驟如下(1)分析器將表對象送交編譯器;(2)生成移動代理實例對象;(3)生成移動代理構造函數;(4)依次取表對象中的位置項,設置移動代理旅行計劃;(5)依次取表對象中的調用組,設置移動代理的裝配計劃;(6)將生成的結果寫入文件;(7)結束。
全文摘要
本發明公開了一種基於移動代理伺服器的對象請求裝配方法,其步驟是1.輸入組調用表和定位表;2.生成表分析對象;3.生成可移動請求代理;4.分析旅行計劃,若不為空,則執行步驟5,否則轉步驟9;5.根據旅行計劃通過代理伺服器和網絡設備進行網絡遷移;6.根據執行計劃進行服務裝配,驅動相應請求對象;7.收集請求對象的運行結果;8.轉步驟4;9.如果構件請求尚未完成,則執行步驟10,否則轉步驟11;10.生成新的旅行計劃和執行計劃,並轉步驟5;11.對前述步驟7中收集的結果進行處理;12.攜帶處理結果通過代理伺服器和網絡設備返回原請求節點;13.將處理結果交還請求構件。本發明的優點是可以有效提高網絡應用系統的網絡適應性。
文檔編號H04L12/00GK1599318SQ20041004165
公開日2005年3月23日 申請日期2004年8月11日 優先權日2004年8月11日
發明者呂建, 陶先平, 馬曉星 申請人:南京大學