[發明專利]基于BOOST的出站式RFI/RMI服務實現方法及通信系統有效
| 申請號: | 201210521645.0 | 申請日: | 2012-12-06 |
| 公開(公告)號: | CN103019820A | 公開(公告)日: | 2013-04-03 |
| 發明(設計)人: | 侯紹東 | 申請(專利權)人: | 廈門市美亞柏科信息股份有限公司 |
| 主分類號: | G06F9/46 | 分類號: | G06F9/46 |
| 代理公司: | 深圳市博銳專利事務所 44275 | 代理人: | 張明 |
| 地址: | 361000 福建省廈門*** | 國省代碼: | 福建;35 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 boost 出站 rfi rmi 服務 實現 方法 通信 系統 | ||
技術領域
本發明涉及計算機網絡通信技術領域,尤其涉及一種基于BOOST的出站式RFI/RMI服務實現方法及通信系統。
背景技術
Sun?Java?RMI(Remote?Method?Invocation)是一項由客戶端向服務器發起連接,發送請求并得到應答的信息交互技術。在分布式服務情況下,由接入計算機提供應答服務,并由中心調度計算機發出請求。在分布式計算模型中,當計算節點需要動態擴展時,中心節點無法直接獲得計算節點的連接地址,故需要由計算節點向中心節點發起連接同時提供服務接口,其具體的實現步驟是:1)計算節點向中心節點發起連接;2)中心節點發出握手請求,計算節點返回基本信息,完成握手;3)中心節點將遠程服務的調用參數編碼成數據流,通過網絡將服務請求發送到計算節點;4)計算節點提取請求參數,調用本地服務,將計算結果編碼成數據流,發送回中心節點。其中,基于會話的請求需要計算節點維護中間狀態或鎖定計算資源,這種情況下,需要將上面的服務封裝成基于會話的資源管理器,在會話階段持續維護計算所需的資源(如文件)和計算的中間結果。由于C++語言沒有提供反射機制,即使開啟了RTTI(運行時類型信息),也只能為類提供部分運行時特性,無法為程序提供自描述能力。WCF由于部署較為麻煩,且效率不如C++高。RCF和WCF一樣,只提供了入站式的服務,并且不支持持續會話。而用傳統的設計方式實現上述的通信過程中,通信雙方耦合性很大,信息交互的時間長,降低了通信的可靠性。
發明內容
本發明提出了一種基于BOOST的出站式RFI/RMI服務實現方法及通信系統,能夠解決客戶端遠程調用所需要的函數契約問題,能夠提高客戶端與服務端間的通信靈活度,極大簡化客戶端的調用程序,增加通信的可靠性。
為解決上述技術問題,本發明采用的一個技術方案是:提供一種基于BOOST的出站式RFI/RMI服務實現方法,包括如下步驟:
S01、中心節點接收計算節點發出的請求連接信號,所述中心節點對請求連接信號處理后向計算節點發送握手請求;
S02、中心節點接收計算節點的握手應答后,利用第一代理函數將中心節點的服務函數中遠程調用服務參數序列化后生成參數輸入流,并將包含有服務函數名和序列化遠程調用服務參數的參數輸入流發送至計算節點;
S03、計算節點接收中心節點發送的參數輸入流,并根據參數輸入流中的函數名查詢服務函數的第二代理函數,并利用第二代理函數將序列化的遠程調用服務參數反序列化,調用服務函數,計算反序列化后遠程調用服務參數的結果并輸出遠程調用服務參數,利用第二代理函數對遠程調用服務參數的結果進行序列化后,生成包含結果序列與輸出參數的參數輸出流,其中,第一代理函數及第二代理函數均由代理函數模板生成,第一代理函數與第二代理函數相對應,代理函數模板由基于boost庫中的迭代宏遞歸定義;
S04、計算節點將參數輸出流返回給中心節點并由中心節點對參數輸出流進行處理,通信結束。
其中,步驟S03中還包括判斷遠程調用服務參數的類型,若接收的參數輸入流中的參數類型與計算節點中服務函數相應的參數相同,則根據該參數計算出對應的計算結果,并返回結果真;若接收的參數與服務函數中的參數不同,則停止計算結果,并返回結果假。
其中,所述步驟S03中,所述代理函數的生成,包括如下步驟:
S21、生成代理函數的模板文件并定義迭代宏,該迭代宏包含全部的遠程服務調用參數個數;
S22、代理函數模板文件根據迭代宏中的遠程服務調用參數生成指定參數個數的代理函數模板;
S23、調用生成代理函數模板時,根據服務函數的自動匹配參數個數和參數類型,并生成相應的代理函數。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于廈門市美亞柏科信息股份有限公司,未經廈門市美亞柏科信息股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210521645.0/2.html,轉載請聲明來源鉆瓜專利網。





