程 莉
(中國商飛上海航空工業(yè)(集團)有限公司信息化中心,上海201206)
近年來,移動網(wǎng)絡通信技術和移動設備制造技術的快速發(fā)展,以及伴隨著移動智能終端在公眾的迅速普及,使得移動互聯(lián)網(wǎng)進入一個黃金發(fā)展時期,于是移動辦公的概念應運而生[1]。相對于傳統(tǒng)的辦公自動化方式而言,移動辦公最直接的好處就是將人們從桌面辦公解放出來,并有效地提高工作效率。原來必須要在辦公室才能處理的工作,通過移動辦公可以在任何時間任何地點進行處理[2]。
移動辦公平臺作為移動端企業(yè)信息資源和應用服務的集成平臺,整合了一系列的功能應用,這些功能應用類型多樣、結構各異,調用方法存在較大差異,應用管理成本較大。另外,傳統(tǒng)的移動辦公是利用移動終端設備直接發(fā)送SQL語句,然后遠程操作企業(yè)內部數(shù)據(jù)庫,這種數(shù)據(jù)訪問模式存在嚴重的數(shù)據(jù)安全隱患[3]。針對以上問題,本文利用中間件技術,設計了一個基于中間件的移動辦公平臺,以達到增強系統(tǒng)的可擴展性、易管理性、高可用性和可移植性的目的。
近幾年國內外移動辦公系統(tǒng)快速發(fā)展,在移動辦公行業(yè)出現(xiàn)了比較多的解決方案和技術,目前主流的實現(xiàn)移動辦公的技術主要有以下三種[4]:
(1)利用HTML5網(wǎng)站開發(fā)技術實現(xiàn)移動辦公系統(tǒng)?;贖TML5、CSS和JavaScript,創(chuàng)建跨平臺移動應用程序的快速開發(fā)平臺。
(2)利用虛擬化技術實現(xiàn)移動辦公系統(tǒng)。虛擬桌面的應用實現(xiàn)了移動終端設備到服務器的跨越,用戶通過虛擬桌面直接訪問服務器上的應用,從而實現(xiàn)企業(yè)的移動辦公。
(3)利用客戶端方式建立移動辦公系統(tǒng)。針對具體的手機操作系統(tǒng),采用手機操作系統(tǒng)提供的開發(fā)語言和開發(fā)方法,利用其對應的SDK(軟件開發(fā)工具包)進行移動辦公系統(tǒng)客戶端的開發(fā)。
中間件是位于操作系統(tǒng)平臺和應用程序之間的通用服務系統(tǒng),它提供了統(tǒng)一的協(xié)議與標準接口,在不同的硬件和操作系統(tǒng)平臺上實現(xiàn)了數(shù)據(jù)的共享與應用的互操作[5]。
中間件的分類方法很多,按照IDC(互聯(lián)網(wǎng)數(shù)據(jù)中心)的分類方法,中間件平臺可以分為六類[6]:
(1)終端仿真/屏幕轉換中間件。用以實現(xiàn)客戶機圖形用戶接口與已有的字符接口方式的服務器應用程序之間的互操作。
(2)數(shù)據(jù)訪問中間件。為了建立數(shù)據(jù)應用資源互操作的模式,對異構環(huán)境下的數(shù)據(jù)庫實現(xiàn)聯(lián)接或文件系統(tǒng)實現(xiàn)聯(lián)接的中間件。適用于應用程序與數(shù)據(jù)源之間的互操作模型,客戶端使用面向數(shù)據(jù)庫的API,以提請直接訪問和更新基于服務器的數(shù)據(jù)源。
(3)遠程過程調用中間件。通過遠程過程調用機制,應用程序執(zhí)行一個位于不同地址空間里的過程,并且從效果上看和執(zhí)行本地調用相同。
(4)消息中間件。用來屏蔽掉各種平臺及協(xié)議之間的特性,實現(xiàn)在不同平臺之間通信,實現(xiàn)分布式系統(tǒng)中可靠的、高效的、實時的跨平臺數(shù)據(jù)傳輸,實現(xiàn)應用程序之間的協(xié)同。
(5)交易中間件。是在分布、異構環(huán)境下提供保證交易完整性和數(shù)據(jù)完整性的一種環(huán)境平臺,用于進行事務管理與協(xié)調、負載平衡、失敗恢復等,以提高系統(tǒng)的整體性能,可以被看作是事務處理應用程序的“操作系統(tǒng)”。
(6)對象中間件。在分布、異構的網(wǎng)絡計算環(huán)境中,可以將各種分布對象有機地結合在一起,使得對象可以透明地向其他位于本地或位于遠程機器的對象發(fā)出請求或接受其他對象的響應,以完成系統(tǒng)的快速集成,實現(xiàn)對象重用。
本文利用中間件技術,設計了一個基于中間件的移動辦公平臺,以解決平臺多應用集成帶來的異構性問題,達到增強系統(tǒng)的可擴展性、易管理性、高可用性和可移植性的目的。
該平臺體系結構分為三層:前端、中間層和后臺。前端即客戶端,采用HTML5網(wǎng)站開發(fā)技術;中間層利用中間件技術,主體部分由應用訪問中間件和數(shù)據(jù)訪問中間件組成,并通過任務隊列完成任務傳遞;后臺為數(shù)據(jù)存儲。移動辦公平臺的結構如圖1所示。
圖1 移動辦公平臺基本結構圖
應用訪問中間件是構成移動辦公平臺的關鍵部分之一,用以屏蔽所集成的各類功能應用的差異性,支持各種應用之間靈活的信息交換和共享,為前端提供統(tǒng)一的應用訪問接口,為數(shù)據(jù)訪問中間件提供規(guī)范的執(zhí)行操作。
應用訪問中間件由五個模塊組成,分別是APP API、請求解析模塊、應用倉庫、任務執(zhí)行模塊、結果反饋模塊,如圖2所示。
圖2 應用訪問中間件模塊關系圖
這五個模塊的主要功能如下:
(1)APPAPI:是接收外部用戶請求、返回任務執(zhí)行結果的統(tǒng)一接口。
(2)請求解析模塊:負責對用戶提出的請求進行解析,判斷其請求類型,并調用應用倉庫獲取相關應用信息,將解析結果打包發(fā)給任務執(zhí)行模塊。
(3)應用倉庫:管理注冊應用,并維護應用信息目錄,如應用標識、應用描述信息、應用源路徑集、存儲規(guī)則等。
(4)任務執(zhí)行模塊:是用戶應用訪問的執(zhí)行模塊,根據(jù)請求解析模塊發(fā)送的解析結果執(zhí)行相應應用訪問操作,并將其整合成對數(shù)據(jù)源的操作代碼,寫入任務隊列。
(5)結果反饋模塊:接收由數(shù)據(jù)訪問中間件反饋的任務執(zhí)行結果,并通過APP API返回客戶端。
應用訪問中間件的工作流程設計如圖3所示。
圖3 應用訪問中間件工作流程圖
數(shù)據(jù)訪問中間件同樣是構成移動辦公平臺的關鍵部分之一,為應用訪問中間件和數(shù)據(jù)源服務器之間提供了專門的通信通道,實現(xiàn)業(yè)務服務層和數(shù)據(jù)層之間的交互操作,將用戶與數(shù)據(jù)訪問的復雜性相隔離,減少對應用層的維護開銷。
數(shù)據(jù)訪問中間件主要由四個模塊組成,分別是監(jiān)控模塊、連接池管理模塊、任務執(zhí)行模塊、結果反饋模塊,如圖4所示。
圖4 數(shù)據(jù)訪問中間件模塊關系圖
這四個模塊的主要功能如下:
(1)監(jiān)控模塊:是數(shù)據(jù)訪問中間件的核心模塊,用于監(jiān)聽任務隊列,并協(xié)調各模塊間工作。當每監(jiān)聽到任務隊列中有任務請求時,便調用連接池管理模塊判斷是否有空閑資源處理任務,若有空閑資源,則獲取一個空閑連接并調用任務執(zhí)行模塊執(zhí)行數(shù)據(jù)庫操作,否則判斷是否達調用次數(shù)上限,未達到則繼續(xù)調用連接池管理模塊,若已達到則將執(zhí)行失敗結果寫入結果反饋模塊。
(2)連接池管理模塊:用于管理數(shù)據(jù)訪問中間件中一池“預先建立的”數(shù)據(jù)庫連接。為任務分配連接,任務完成后收回連接;自動進行連接池數(shù)量的優(yōu)化配置;定時檢查有效連接的數(shù)目。
(3)任務執(zhí)行模塊:通過監(jiān)控模塊創(chuàng)建并啟動,是對數(shù)據(jù)庫訪問的最終實現(xiàn)。根據(jù)監(jiān)控模塊傳來的數(shù)據(jù)請求信息執(zhí)行對應的數(shù)據(jù)庫訪問操作,并將操作結果封裝成固定的數(shù)據(jù)包形式寫入結果反饋模塊。
(4)結果反饋模塊:將數(shù)據(jù)訪問中間件的處理結果返回給應用訪問中間件的結果反饋模塊。
數(shù)據(jù)訪問中間件的工作流程設計如圖5所示。
圖5 數(shù)據(jù)訪問中間件工作流程圖
作為移動端企業(yè)信息資源和應用服務的集成平臺,移動辦公平臺整合了一系列的功能應用。為了屏蔽各類應用的差異性,為前端提供統(tǒng)一的接口標準及規(guī)范,減少應用開發(fā)的復雜性,本文設計了一個基于中間件的移動辦公平臺,通過應用訪問中間件和數(shù)據(jù)訪問中間件實現(xiàn)了將用戶和應用訪問、數(shù)據(jù)訪問的復雜性相隔離,減少了系統(tǒng)的維護開銷,增強了可擴展性和可移植性。
下一步將針對應用倉庫管理,進一步研究其應用注冊模式和管理方式,制定應用集成統(tǒng)一規(guī)范和標準,以更好地支持移動辦公平臺的應用集成訪問。
[1]寧義雙.基于HTML5的移動終端應用中間件平臺的研究與設計[D].北京:北京工業(yè)大學,2013.
[2]孫盛婷.移動辦公系統(tǒng)行業(yè)集成解決方案的應用與研究[J].微型電腦應用,2013,29(1):34-37
[3]許小晴.基于中間件的移動辦公系統(tǒng)的研究與實現(xiàn)[D].西安:西南交通大學,2011.
[4]韓東廣.基于中間件的手機辦公應用[D].濟南:山東大學,2012.
[5]董洪志.分布式信息化平臺中嵌入式實時中間件研究[D].西安:西安電子科技大學,2010.
[6]李琪林,劉 強,周明天.論中間件技術及其分類[J].四川師范大學學報,2001,24(6):657-660.