胡向榮
山西陽光三極科技股份有限公司 山西太原 030032
移動應用開發(fā)類似于Web應用開發(fā),是傳統(tǒng)軟件開發(fā)的延續(xù)。進行移動應用開發(fā)常用到三種程序,分別是原生應用、HTML5以及混合開發(fā)APP。
HybridAPP同時使用網(wǎng)頁語言與程序語言開發(fā),通過應用商店區(qū)分移動操作系統(tǒng),用戶需要自行進行安裝??傮w特性更接近NativeAPP。但因為同時使用了網(wǎng)頁語言編碼,所以開發(fā)成本和難度比NativeAPP要小很多。因此說,HybridAPP兼具了NativeAPP的所有優(yōu)勢,同時開發(fā)成本與NativeAPP相比也更加低廉。Ionic是一款基于Angular、Cordova的強大的HTML5混合式開發(fā)框架,可以對移動APP、移動端WEB頁面、微信公眾平臺進行快速的研發(fā),混合APPweb頁面Ionic調(diào)用原生的功能是基于Cordova,Cordova提供了JavaScript調(diào)用Native功能,ionic自己也封裝了一套完美的CSSUI庫。AngularJS誕生于2009年,由MiskoHevery創(chuàng)建,后為Google所收購[1]。是一款優(yōu)秀的前端JS框架,已經(jīng)被廣泛的運用于多種產(chǎn)品中。Angu-larJS特性多樣,最為核心的是:MVC、模塊化、自動化雙向數(shù)據(jù)綁定、語義化標簽、依賴注入等,可以快速構建起強大的前臺移動應用。
Spring是一個開源框架,它由RodJohnson創(chuàng)建。是為了降低企業(yè)在開發(fā)過程中的繁瑣度而創(chuàng)立的。Spring利用基本的JavaBean就可以完成以前只可能由EJB完成的事情。然而,Spring的用途十分多樣,不僅可以開發(fā)服務終端,從簡單性和可調(diào)節(jié)性來說,任何Java應用都可以從Spring中受益。Spring是一個輕量級的控制反轉(IoC)和面向切面(AOP)的容器框架。Spring可以使簡單地組件在重新組合后變成一個復雜的應用。同時Spring也提供了很多基礎功能事務管理、持久化框架集成等,將應用邏輯的開發(fā)留給使用者。通過Spring框架、Mybatis框架、SpringMVC框架,完成后臺服務系統(tǒng)的設計與開發(fā)。移動APP端再通過A-JAX完成對后臺的數(shù)據(jù)進行處理,從而實現(xiàn)數(shù)據(jù)的互換。
基于煤礦安全監(jiān)控系統(tǒng)的移動監(jiān)控平臺,必須擁有核心監(jiān)控功能。對已經(jīng)安裝的煤礦監(jiān)控系統(tǒng),采集監(jiān)控系統(tǒng)數(shù)據(jù)建立移動終端數(shù)據(jù)庫,并開發(fā)web服務基礎服務程序,同時開發(fā)APP移動終端軟件[2]。用戶可以通過手機端隨時隨地監(jiān)控煤礦井下環(huán)境參數(shù)實時信息,還能夠?qū)v史數(shù)據(jù)進行查詢,測點歷史數(shù)據(jù)曲線分析。同時還能根據(jù)自己的興趣訂閱一類或多類的監(jiān)控設備信息。
移動監(jiān)控平臺手機監(jiān)控APP需實時獲得監(jiān)控系統(tǒng)數(shù)據(jù),定時向后臺發(fā)送數(shù)據(jù)請求,后臺系統(tǒng)在接收到請求后,進行處理,并將處理結果反饋給手機端。數(shù)據(jù)交互采用JSON格式,JSON使用與傳統(tǒng)編程格式不同的文本格式對數(shù)據(jù)進行儲存,結構簡單明了,方便讀寫,能夠快速的提高網(wǎng)絡傳輸效率。根據(jù)功能需求,確定交互接口,建立交互技術接口文檔規(guī)范,其中包括接口的編號、名稱、目的、路徑,以及請求的方式、參數(shù)、返回數(shù)據(jù)結構等。
當眾多移動APP同時訪問后臺服務系統(tǒng)時,會造成請求信息的高度擁擠,如果每數(shù)據(jù)庫對每一個請求都去進行處理,那么服務器的處理速度會變得十分緩慢,從而使系統(tǒng)發(fā)生故障。如果把相同的請求信息進行分類,歸納其緩存數(shù)據(jù),那么在進行相似數(shù)據(jù)的請求時,便可從緩存讀取數(shù)據(jù),避免了無效交互狀況的發(fā)生。為了解決這個問題,采用ehcache緩存組件進行緩存處理。并通過在XML文件配置緩存參數(shù),完成緩存設置。同時在業(yè)務邏輯代碼層完成@Cacheable緩存注解添加,同時為避免數(shù)據(jù)長期駐留內(nèi)存,影響數(shù)據(jù)更新,對緩存內(nèi)容要定期進行處理,緩存清除完畢后,再重新對數(shù)據(jù)進行讀取。系統(tǒng)測試煤礦安全監(jiān)控系統(tǒng)移動監(jiān)控平臺設計完成后,在服務端集中部署后臺服務程序,并實現(xiàn)與監(jiān)控系統(tǒng)數(shù)據(jù)庫互通互融,配置數(shù)據(jù)庫訪問參數(shù),啟動后臺數(shù)據(jù)服務系統(tǒng)。再通過在手機端安裝APP應用軟件,并設置后臺服務系統(tǒng)ip地址[3]。進入手機APP監(jiān)控終端,逐項功能進行測試:①監(jiān)控系統(tǒng)所有設備,包括分站、傳感器等設備的實時數(shù)據(jù)、狀態(tài)、屬性信息的實時監(jiān)測功能測試;②報警、故障設置及信息提醒功能測試;③模擬量報警、斷電、饋電異常,開關量報警,設備故障等歷史數(shù)據(jù)查詢分析功能測試;④傳感器監(jiān)測點,歷史曲線查詢分析功能,及多條曲線的同屏顯示,對比分析功能測試;⑤實時數(shù)據(jù)最小刷新時間不大于監(jiān)控系統(tǒng)巡檢周期性能測試;⑥報表、曲線查詢時間不超過3s性能指標測試;⑦單服務器部署,支持不少于500用戶并發(fā)訪問性能測試。
基于煤礦安全監(jiān)控系統(tǒng)的移動監(jiān)控平臺,可以使企業(yè)及用戶利用APP對煤礦現(xiàn)場進行實時監(jiān)控,及時獲取現(xiàn)場的實際情況。經(jīng)測試研究表明,該平臺同時可以容納五百個用戶的訪問,能夠保證煤礦企業(yè)的大規(guī)模監(jiān)控需求,從而確保煤礦現(xiàn)場的正常運行,為煤礦的安全工作保駕護航。