1.引言
隨著3G,LTE等移動通信技術的不斷發展,移動互聯網帶寬得到大幅度的提升,通過移動設備訪問互聯網,獲取自己所需的信息的方式,成為一種新的趨勢并逐漸融人到人們的日常生活中,催生出豐富的移動應用。為了緩解終端壓力,應當轉移終端應用的需求來源,云計算u}是一個很好的選擇。移動設備的易攜帶和移動性限制了其對資源的擁有。云計算雖然聚合了豐富的計算和存儲資源,但移動性較差。將云計算與移動互聯網有機結合,終端應用對資源的高需求轉移到云平臺上,在真正意義上實現輕量級終端訪問互聯網的瘦終端,滿足移動用戶對快速響應時間的期望,同時使移動用戶可以隨時、隨地獲取云計算服務,這正好體現了“anytime, anywhere”的思想。
本文研究基于云計算與SOA架構的移動應用,參照“云+端”的設計模式,移動設備以中間件的方式獲取云服務。針對移動設備的弱計算環境,造成訪問效率較低的特征,本文提出移動設備通過中間件方式訪問云服務,較好地解決了終端環境資源受限的瓶頸。
2.相關介紹
云計算是一種新型的計算模型,它通過互聯網將計算任務分布在大量計算機構成的資源池上,使用戶按需獲取各種信息服務。移動云計算在云計算基礎上發展而來,給移動互聯網的發展注人新的活力。目前,移動云計算在學術界得到廣泛的重視,各個研究機構紛紛開始做相關研究。惠普實驗室將云環境下的資源與SOA服務模式緊密相連,將云資源以服務提供的方式供用戶使用,降低了運營商的IT成本。但并沒有考慮移動終端用戶的環境因素,只是針對傳統的Web終端。加拿大徹溫大學對智能終端使用移動云服務做了相關研究,提出一種基于云計算的服務中間件,解決終端訪問云服務的關鍵問題。但對于該中間件應用的開發比較單一,不能為多終端異構平臺提供一個統一的編程接口。Berkeley有學者提出一種新穎的克隆云架構,將終端應用上資源密集型的計算或存儲轉移到具有終端運行環境的云平臺上,以此增強終端應用的能力。不足的是這種模型僅針對智能終端,并沒有對普通移動設備加以考慮。因此,針對移動應用調用云計算能力的缺陷,將中間件技術引人到終端應用的開發中,通過中間件提供的統一編程接口,來屏蔽多終端平臺之間的差異性,減少終端應用重復開發的成本,對移動應用的發展有比較深遠的意義。
3.面向移動設備的云服務中間件模型
Web服務為多終端異構平臺資源協同提供了有效的手段。但在移動環境中,網絡帶寬、內存大小、計算能力、存儲空間以及電源的續航能力等資源非常受限。傳統的Web服務已經無法較好地滿足移動環境下異構設備互聯互通的需求。因此,資源受限的移動設備如何有效地使用云服務,得到學術界、工業界的高度重視。云服務中間件集成了云計算能力的中間件平臺,能夠動態調度底層虛擬資源滿足云端業務需求,能夠對分布式存儲提供擴展支撐能力。資源受限的云服務是云計算與移動網絡、服務計算和嵌入式系統相結合的產物,在移動終端應用等領域有廣闊的應用前景。
眾所周知,云計算服務端聚合了豐富的計算和存儲資源,通過SOA技術將云計算資源以服務的形式發布出去,供不同的移動設備訪問,解決移動環境資源受限的瓶頸。移動設備通過中間件獲取云服務接口,充當移動設備和云服務端之間的橋梁,同時也是云服務的提供者和使用者。云服務中間件通過建立Web應用服務器實例,來屏蔽不同終端操作系統的異構性,提供統一的計算存儲平臺和運行環境。本文設計了一種面向移動設備的云服務中間件模型,其系統架構如圖1所示。
圖1 系統架構
移動設備端的邏輯結構較為簡單。Input/Output用于訪問中間件,把用戶輸人的參數發出去,等待返回結果,在移動設備上顯示出來。環境感知模塊用于實時監控設備的網絡狀況、電池容量等,當到達一定閉值時,中斷與中間件的連接。RM(record manager)用于保存數據記錄,可以將云服務端返回的數據保存在本地的移動設備上,便于用戶在網絡中斷后可以繼續訪問這些數據。
云服務器端主要業務邏輯體現在云服務注冊中,將計算和存儲資源以服務的形式發布出去,同時添加到云服務注冊模塊中,中間件層通過云服務接口對云服務進行訪問?紤]到移動設備的弱處理能力,對云服務返回的復雜數據進行相應處理,使得適應終端顯示。緩存模塊主要用于對云服務端返回的大量數據進行臨時存儲,緩解終端接收的壓力。
當中間件收到服務請求時,檢索用戶所要求的服務是否存在,如果請求的服務存在,就將云服務接口返回給服務調用模塊,由它完成具體服務的調用。如果沒有相對應的服務,表示服務不存在,給移動設備返回出錯信息。訪問流程如圖2所示。
圖2 系統訪問流程
4.關鍵技術
中間件作為移動終端和云服務器之間的一層支撐軟件,一方面給移動終端提供訪問云服務的平臺,以便移動用戶可以無縫地訪問云服務器上的資源。另一方面負責移動終端與云服務端的通信,符合“中間件二平臺+通信”的定義。由于移動環境的特殊性和移動網絡的不穩定性,因此面向云服務的移動中間件的關鍵技術包括以下兩個方面。
4.1 移動云服務發現機制
移動云服務是將網絡中的各種資源有效地聚合在一起,為移動用戶服務。因移動用戶要在多個無線網絡間不斷地切換,訪問云平臺提供的不同服務,因此需要采用云服務發現技術來找到所需的云服務。本文采用一種SOA服務發現機制UDDI (universal description, discovery andintegration,移動終端利用它可以發現暴露給終端的云服務。云平臺作為服務的提供者將自身的服務以WSDL發布到注冊中心,供請求方調用;移動終端作為服務請求方查找相應的服務,以WSDL調用服務,通過SOAP協議與云平臺進行交互,其體系結構如圖3所示。
圖3 體系結構
本文的移動云服務發現機制是一種用于建立高度動態C/S的協議集合,將移動端和云平臺之間的交互標準化。移動用戶與云平臺間最基本的交互是云服務的發現。云服務發現定義了移動終端用戶如何找到服務目錄,進行服務注冊或匹配的協議,支持多種協議形式,包括單播發現、多播發現和廣播發現等。云服務目錄提供了集中式的注冊機制,云服務在服務目錄中暴露其服務信息,移動用戶通過查找目錄或服務發現機制找到所需服務。在整個云服務發現過程中,中間件通過IaaS層的服務接口動態創建虛擬機,并完成業務邏輯的部署,根據云端業務的并發訪問情況動態調度云中底層的虛擬資源,實現資源對云端用戶的透明,集群技術能力向中間件上轉移的一種動態實現,真正實現計算和存儲能力的彈性伸縮。同時,還提供垃圾收集功能,主要是實現系統的自愈合功能,當服務退出網絡或出現異常導致云服務不再可用時,借助垃圾收集機制刪除服務的相關狀態信息,回收資源。
4.2 數據分塊并行處理
考慮到移動終端資源受限的瓶頸,在中間件平臺中用并行數據處理模塊來對數據進行相應的處理,使其滿足移動終端對數據實時響應和時延較小的要求。綜合移動終端的這些缺陷,將交互數據按2 MB大小進行分塊,并將其按一定次序標記,同時為每個數據塊分配一個線程。另外,新開辟一條線程用于發送控制信息,指明數據所對應的文件塊序號以及文件相關信息。云服務端將接收到的文件塊保存到一個臨時文件中,當接收到文件塊的數量與控制信息中數量一致時,則表示數據接收完成,同時按相應次序合并文件塊,刪除臨時文件。終端數據傳輸速度快,網絡利用率高,終端數據時延較小,用戶體驗度在很大程度上得到提高。其流程如圖4所示。
圖4 分塊處理流程
考慮到電源的續航能力,通過采用并行數據傳輸技術解決了終端海量數據傳輸的系統承載能力問題。該模塊的核心功能是將傳輸的數據按照一定的要求進行分塊處理,并按順序標記每塊數據,對中途數據塊傳輸失敗的數據支持斷點續傳,這在一定程度上解決了以往由于數據傳輸量過大而導致的傳輸耗時較長、數據傳輸頻繁失敗、數據更新不及時等問題。由于移動網絡是動態變化的,保證終端數據與云服務端的數據一致性,采用緩存技術來降低終端的負載,提高數據傳輸速度,增大用戶體驗度;同時存儲訪問度較高的數據,減少終端的時延。
5.實驗及性能分析
為了更好地對中間件做出評估,系統測試由硬件環境和軟件環境兩部分組成。硬件環境是由5臺普通PC機構成的集群系統;軟件環境由Ubunt 9.04和Mdroid 2.2模擬器構成。
為驗證模型的可行性與穩定性,在此基礎上開發了一個面向移動終端的云備份系統,將備份作為一種服務提供給移動終端,對云備份的數據傳輸速率進行測試,以判斷系統的穩定性,如圖5所示。從圖中可以看出,手機云備份系統的傳輸速率能夠維持在一個相當穩定的狀態下,從而間接說明該中間件模型的穩定性與可靠性。同時,基于中間件的云備份系統將終端數據備份到云平臺上,有效地解決了移動設備存儲空間的不足,在較大程度上解放終端受限的約束,用戶體驗度得到提高。
圖5 效果仿真
6.結束語
隨著移動終端設備的快速發展,云計算模式受到廣泛關注,未來將會有更多的移動用戶采用移動設備享用云服務。考慮到移動設備資源受限的瓶頸,本文結合云計算、中間件以及SOA的相關技術實現了面向云服務結構的移動中間件模型,為在移動環境下訪問云服務提供了一種通用解決方案;通過中間件技術將云服務封裝成一個統一的接口,降低了終端應用重復開發的成本,真正意義上實現了跨不同終端異構平臺之間的交互,同時利用多線程技術對終端數據進行并行分塊處理,使得數據傳輸速率得到提高,終端用戶體驗度增強。未來的工作將集中在提供多協議支持、安全以及離線處理上,并對服務質量保證做深人研究。
核心關注:拓步ERP系統平臺是覆蓋了眾多的業務領域、行業應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業務領域的管理,全面涵蓋了企業關注ERP管理系統的核心領域,是眾多中小企業信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網http://www.lukmueng.com/
本文標題:面向云服務的移動中間件研究