亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Android智能手機(jī)的云服務(wù)應(yīng)用研究

        2013-10-10 01:56:42江燕良黃海于
        關(guān)鍵詞:服務(wù)器端分塊客戶端

        江燕良,黃海于

        (西南交通大學(xué) 信息科學(xué)與技術(shù)學(xué)院,成都610031)

        引 言

        隨著數(shù)字化和互聯(lián)網(wǎng)的飛速發(fā)展,特別是 Web2.0技術(shù)的發(fā)展,互聯(lián)網(wǎng)上的數(shù)據(jù)量呈現(xiàn)高速增長(zhǎng)的態(tài)勢(shì),導(dǎo)致互聯(lián)網(wǎng)數(shù)據(jù)處理能力相對(duì)不足;同時(shí)互聯(lián)網(wǎng)上存在著大量處于閑置狀態(tài)的計(jì)算設(shè)備和存儲(chǔ)資源,如果將其聚合起來(lái)統(tǒng)一調(diào)度和提供服務(wù),則可以大大提高利用率,讓更多的用戶從中受益。云計(jì)算就是基于這種考慮,通過(guò)虛擬化技術(shù)將資源進(jìn)行整合,形成龐大的計(jì)算與存儲(chǔ)網(wǎng)絡(luò),從而更好地為用戶服務(wù)[1]。隨著移動(dòng)終端的普及,將移動(dòng)終端和云計(jì)算相結(jié)合形成移動(dòng)云計(jì)算,可以很好地滿足用戶隨時(shí)隨地的資源訪問(wèn)和事務(wù)處理的需求,同時(shí)也可以解決移動(dòng)終端在資源上不足的問(wèn)題。移動(dòng)云計(jì)算的概念,就是利用云計(jì)算技術(shù)來(lái)解決移動(dòng)終端的存儲(chǔ)和數(shù)據(jù)處理等問(wèn)題,幫助用戶擺脫硬件設(shè)備、存儲(chǔ)設(shè)備、應(yīng)用程序等條件的限制,將移動(dòng)終端應(yīng)用的“計(jì)算”從終端轉(zhuǎn)移到服務(wù)器端,從而弱化對(duì)移動(dòng)終端設(shè)備的處理要求[2]。

        Android系統(tǒng)是Google公司最新推出的移動(dòng)設(shè)備軟件平臺(tái),與其他Symbian、Windows Mobile手機(jī)操作系統(tǒng)相比,其源代碼完全開(kāi)放,任何人和機(jī)構(gòu)都可以免費(fèi)使用。Android系統(tǒng)具有強(qiáng)大的應(yīng)用層API和豐富的傳感器接入功能,其開(kāi)放的平臺(tái)有利于開(kāi)發(fā)者開(kāi)發(fā)出各類應(yīng)用軟件,是一個(gè)真正意義上的開(kāi)放性移動(dòng)設(shè)備綜合平臺(tái),基于Android系統(tǒng)的研發(fā)己經(jīng)成為熱門的方向[3]。

        針對(duì)當(dāng)前老年人或兒童出現(xiàn)迷路或走失等危機(jī)情況的應(yīng)急處理等應(yīng)用需求,本文提出了一種云服務(wù)下基于Android移動(dòng)智能終端信息采集和處理的基礎(chǔ)架構(gòu)。該架構(gòu)基于手機(jī)云計(jì)算平臺(tái)Openmobster,將其部署在PC上作為服務(wù)器,利用周圍的無(wú)線網(wǎng)絡(luò)資源,使其與Android手機(jī)客戶端建立即時(shí)通信,根據(jù)平臺(tái)自身的推送和同步機(jī)制,實(shí)現(xiàn)數(shù)據(jù)的上傳和下發(fā)。該架構(gòu)使云計(jì)算真正的“落地”,實(shí)實(shí)在在地為手機(jī)提供服務(wù)。

        1 總體設(shè)計(jì)

        1.1 總體拓?fù)浣Y(jié)構(gòu)

        由于設(shè)計(jì)采用的測(cè)試環(huán)境是由無(wú)線路由器搭建的無(wú)線網(wǎng)絡(luò)環(huán)境,考慮到網(wǎng)絡(luò)覆蓋范圍的局限性,當(dāng)用戶從一個(gè)網(wǎng)絡(luò)區(qū)域移動(dòng)到另一個(gè)網(wǎng)絡(luò)區(qū)域時(shí),數(shù)據(jù)的交互會(huì)發(fā)生中斷,因此在不同的網(wǎng)絡(luò)區(qū)域都搭建Openmobster云服務(wù)器,即使手機(jī)跟之前的服務(wù)器連接發(fā)生了中斷,只需跟當(dāng)前的服務(wù)器重新建立連接,數(shù)據(jù)便從中斷處繼續(xù)上傳到當(dāng)前的服務(wù)器,最后只需把這些不同服務(wù)器端數(shù)據(jù)庫(kù)的數(shù)據(jù)匯總到一個(gè)統(tǒng)一的數(shù)據(jù)庫(kù),需要時(shí)還可以下載到手機(jī)端查閱。總體拓?fù)浣Y(jié)構(gòu)圖如圖1所示。

        圖1 總體拓?fù)浣Y(jié)構(gòu)

        1.2 總體架構(gòu)

        本文設(shè)計(jì)的基于Android平臺(tái)開(kāi)發(fā)云應(yīng)用的基礎(chǔ)框架包含以下幾個(gè)主要部分:Mysql數(shù)據(jù)庫(kù)服務(wù)器、Openmobster云平臺(tái)、Web網(wǎng)頁(yè)服務(wù)器、Android手機(jī)客戶端和無(wú)線網(wǎng)絡(luò)。本設(shè)計(jì)采用了C/S模式和B/S模式相結(jié)合的方式,服務(wù)器主要采用Openmobster手機(jī)云平臺(tái)內(nèi)嵌的JBoss服務(wù)器,并將其與Mysql數(shù)據(jù)庫(kù)和Web網(wǎng)頁(yè)連接起來(lái);客戶端采用安裝了云平臺(tái)客戶端的Android智能手機(jī)。云服務(wù)器端和手機(jī)客戶端根據(jù)云平臺(tái)自身的網(wǎng)絡(luò)通信機(jī)制,利用周圍的無(wú)線網(wǎng)絡(luò)資源,建立即時(shí)通信。然后通過(guò)Web網(wǎng)頁(yè)下發(fā)數(shù)據(jù)請(qǐng)求命令,用戶的手機(jī)客戶端接收并解析命令請(qǐng)求,將數(shù)據(jù)上傳到服務(wù)器端的數(shù)據(jù)庫(kù)??傮w架構(gòu)圖如圖2所示。

        圖2 總體架構(gòu)圖

        2 服務(wù)器端設(shè)計(jì)

        服務(wù)器端采用開(kāi)源的Openmobster手機(jī)云平臺(tái)來(lái)搭建即時(shí)通信服務(wù)器,并根據(jù)系統(tǒng)的需要進(jìn)行了改進(jìn)和優(yōu)化。該平臺(tái)是一個(gè)向本地手機(jī)程序提供“云”服務(wù)的平臺(tái),它內(nèi)嵌了一個(gè)基于J2EE的開(kāi)放源代碼的應(yīng)用服務(wù)器JBoss。在JBoss服務(wù)器啟動(dòng)后,可以通過(guò)PC的瀏覽器啟動(dòng)控制臺(tái)。JBoss的控制臺(tái)是個(gè)界面簡(jiǎn)陋的控制臺(tái),和其他商業(yè)化服務(wù)器的控制臺(tái)差別很大,一點(diǎn)都不直觀。因此考慮將控制臺(tái)改造成網(wǎng)頁(yè)的形式,這樣既方便用戶操作,而且界面也更直觀。

        為了在該平臺(tái)的服務(wù)器跟手機(jī)終端之間實(shí)現(xiàn)通信,需要在JBoss控制臺(tái)程序中新增一條命令,相應(yīng)地在服務(wù)器端也要新增處理這個(gè)命令的代碼,用控制臺(tái)發(fā)命令,讓服務(wù)器發(fā)Push消息給手機(jī)上的Service。服務(wù)器端的總體設(shè)計(jì)流程主要分為以下幾步:

        ① 對(duì)控制臺(tái)代碼進(jìn)行分析,找出控制臺(tái)的命令與類的對(duì)應(yīng)關(guān)系。

        ② 新增一個(gè)命令類,并且修改配置文件,使控制臺(tái)可以運(yùn)行新命令請(qǐng)求。

        ③ 在服務(wù)器端也新增了一個(gè)對(duì)應(yīng)控制臺(tái)新命令請(qǐng)求的類,繼承自MobileServiceBean,放在服務(wù)器端處理新增的命令請(qǐng)求。

        ④在服務(wù)器端建立一條Push通道。當(dāng)新增的命令請(qǐng)求類在收到命令時(shí)就會(huì)通過(guò)這個(gè)Push通道向手機(jī)上的Service發(fā)Push消息。

        ⑤ 將控制臺(tái)改造成網(wǎng)頁(yè)的形式來(lái)下發(fā)命令請(qǐng)求。

        ⑥ 手機(jī)客戶端處理完命令請(qǐng)求,將處理結(jié)果封裝上傳到服務(wù)器端的數(shù)據(jù)庫(kù)。

        3 客戶端設(shè)計(jì)

        客戶端的設(shè)計(jì)包括手機(jī)即時(shí)通信客戶端和Web即時(shí)通信客戶端。

        Web即時(shí)通信客戶端基于JavaEE,利用Openmobster云平臺(tái)的JBoss服務(wù)器對(duì)JSP網(wǎng)頁(yè)文件進(jìn)行熱部署,通過(guò)登錄到即時(shí)通信服務(wù)器端與手機(jī)客戶端進(jìn)行通信。

        在移動(dòng)互聯(lián)網(wǎng)中,Android智能終端通過(guò)WiFi或者GPRS連接到互聯(lián)網(wǎng)[4]。手機(jī)即時(shí)通信客戶端通過(guò)激活手機(jī)設(shè)備連接到服務(wù)器,然后以Java bean的傳輸協(xié)議形式,對(duì)協(xié)議進(jìn)行解析并執(zhí)行相應(yīng)的命令操作,最后再將處理的結(jié)果封裝成bean的對(duì)象在客戶端與服務(wù)器之間進(jìn)行傳輸。

        4 數(shù)據(jù)庫(kù)設(shè)計(jì)

        通常情況下用戶將自己的數(shù)據(jù)信息上傳到數(shù)據(jù)庫(kù),其他用戶通過(guò)登錄數(shù)據(jù)庫(kù)的方式來(lái)共享數(shù)據(jù)信息。針對(duì)大文件的管理與共享,為了提高上傳和下載的效率,避免大文件上傳或下載失敗時(shí)將整個(gè)文件重新上傳或下載,實(shí)現(xiàn)了對(duì)文件的分割以及文件的合并操作。

        (1)文件分塊

        將一個(gè)較大的文件上傳到數(shù)據(jù)庫(kù)時(shí),上傳速度往往會(huì)受到網(wǎng)絡(luò)寬帶的影響。針對(duì)較大文件的保存與管理,對(duì)文件進(jìn)行分塊,根據(jù)網(wǎng)絡(luò)的帶寬設(shè)置文件塊的大小。

        (2)分塊文件上傳

        文件分塊上傳的時(shí)候,遍歷要上傳的文件所在的路徑,當(dāng)查找到要上傳的文件時(shí),根據(jù)文件分塊的大小,計(jì)算文件分割的塊數(shù)和最后一個(gè)文件塊的大小,從第一個(gè)文件塊開(kāi)始上傳。當(dāng)文件在上傳的過(guò)程中由于網(wǎng)絡(luò)或者其他原因,使得服務(wù)器數(shù)據(jù)庫(kù)與客戶端的連接斷開(kāi),導(dǎo)致文件上傳中斷,在客戶端與服務(wù)器端數(shù)據(jù)庫(kù)重新建立連接后,需要續(xù)傳文件,這時(shí)就要通過(guò)上次上傳過(guò)程中記錄的文件路徑和名稱以及相應(yīng)的文件塊編號(hào),找到上次上傳文件的斷點(diǎn)。續(xù)傳文件時(shí),依然要遍歷文件所在的路徑,通過(guò)文件路徑和名稱找到對(duì)應(yīng)的文件,再使用文件塊的編號(hào)和文件塊的大小獲取下一次文件要上傳的位置。

        (3)分塊文件下載

        下載的時(shí)候根據(jù)相關(guān)的查詢條件,使用sql語(yǔ)句,根據(jù)文件編號(hào)、文件路徑、文件名稱、文件塊編號(hào)以及文件塊是否已經(jīng)下載等標(biāo)志查找符合條件的記錄。當(dāng)文件在下載的過(guò)程中由于網(wǎng)絡(luò)或者其他原因,使得服務(wù)器數(shù)據(jù)庫(kù)與客戶端的連接斷開(kāi),導(dǎo)致文件下載中斷,在客戶端與服務(wù)器端數(shù)據(jù)庫(kù)重新建立連接后,需要繼續(xù)下載文件,查詢條件不變,確保搜查出來(lái)的記錄是相同的,根據(jù)上次下載過(guò)程中標(biāo)記的文件路徑和名稱以及相應(yīng)的文件塊編號(hào),找到相應(yīng)斷點(diǎn)。將對(duì)應(yīng)的記錄繼續(xù)下載,直到所有的記錄下載完成。

        (4)分塊文件合并

        文件的合并是文件合并下載過(guò)程中的一部分,即每次下載某條記錄中的文件內(nèi)容時(shí),先判斷該文件塊屬于哪個(gè)文件。用戶根據(jù)文件名稱、文件路徑等信息查找自己需要的文件,如果存在符合條件的記錄,就依次訪問(wèn)這些記錄,并將每條記錄中的文件內(nèi)容讀取出來(lái),寫入相應(yīng)的文件中。所有記錄被訪問(wèn)完的同時(shí),所有的文件分塊都被寫到了相應(yīng)文件中,即不會(huì)出現(xiàn)文件內(nèi)容的覆蓋問(wèn)題,也不會(huì)額外的占用存儲(chǔ)空間。

        5 追蹤定位功能的實(shí)現(xiàn)

        老年人或小孩遇到迷路或走失等危急情況時(shí),通過(guò)遠(yuǎn)程控制的方式,向老人或小孩的手機(jī)發(fā)送指令,定位手機(jī)當(dāng)前的位置并顯示在地圖上,然后將位置信息截圖并上傳到服務(wù)器上,用戶便可以從服務(wù)器數(shù)據(jù)庫(kù)獲取老人或小孩的位置信息,幫助他們脫離危險(xiǎn)。該功能的設(shè)計(jì)處理流程如圖3所示。

        圖3 追蹤定位功能處理流程圖

        該功能的實(shí)現(xiàn)首先通過(guò)服務(wù)器端網(wǎng)頁(yè)下發(fā)控制指令并封裝,然后服務(wù)器端的相應(yīng)接口定時(shí)檢測(cè)數(shù)據(jù)對(duì)象是否發(fā)生更新,并將更新的數(shù)據(jù)對(duì)象推送給手機(jī)客戶端,手機(jī)客戶端接收并解析該對(duì)象,執(zhí)行相應(yīng)的指令操作。其次,對(duì)指令操作的結(jié)果進(jìn)行封裝并分塊,然后將其上傳到服務(wù)器端的數(shù)據(jù)庫(kù)。最后,將這些分塊的數(shù)據(jù)包下載并合并,提供給用戶。定位追蹤功能的實(shí)現(xiàn)流程如圖4所示。

        ① 用戶通過(guò)瀏覽器打開(kāi)網(wǎng)頁(yè),選擇需要下發(fā)的命令,然后輸入用戶名和密碼,點(diǎn)擊“確定”后調(diào)起JSP代碼。JSP代碼將網(wǎng)頁(yè)請(qǐng)求封裝的各功能選項(xiàng)字段取出,封裝進(jìn)一個(gè)數(shù)據(jù)對(duì)象中。

        ②在服務(wù)器端定義的用于下發(fā)的Channel會(huì)定期調(diào)用相關(guān)接口對(duì)上面的封裝數(shù)據(jù)對(duì)象進(jìn)行檢查,一旦發(fā)現(xiàn)有新插入的數(shù)據(jù),會(huì)通過(guò)對(duì)應(yīng)的接口取出該數(shù)據(jù),將其封裝到bean對(duì)象中,通過(guò)Openmobster推送給手機(jī)終端。

        ③ 終端這邊后臺(tái)模塊中的服務(wù)同樣建立了對(duì)應(yīng)云端Channel的處理,一旦收到Channel的下發(fā)通知,通過(guò)發(fā)送Intent的方式啟動(dòng)一個(gè)Activity[4],這個(gè)Activity在啟動(dòng)過(guò)程中可以通過(guò)bean的相關(guān)接口讀出對(duì)應(yīng)用戶名和通道下發(fā)的bean對(duì)象,通過(guò)bean的一些方法解析并獲取下發(fā)通知中的各功能項(xiàng)數(shù)據(jù)字段,調(diào)用Android平臺(tái)提供的各接口,完成對(duì)手機(jī)的遠(yuǎn)程控制功能。

        ④將遠(yuǎn)程控制處理的結(jié)果封裝到一個(gè)新的bean對(duì)象里,然后注冊(cè)一個(gè)用于上傳的Channel,對(duì)數(shù)據(jù)包進(jìn)行分塊處理,最終將所有分塊上傳到服務(wù)器的數(shù)據(jù)庫(kù)。

        圖4 定位追蹤功能實(shí)現(xiàn)流程圖

        ⑤ 從服務(wù)器下載并合并各個(gè)數(shù)據(jù)塊,獲取上傳到服務(wù)器的數(shù)據(jù)信息。

        6 實(shí)現(xiàn)結(jié)果

        本文通過(guò)對(duì)Openmobster手機(jī)云計(jì)算平臺(tái)的研究,結(jié)合Android智能移動(dòng)終端,設(shè)計(jì)了開(kāi)發(fā)移動(dòng)云應(yīng)用的基礎(chǔ)架構(gòu),由于該平臺(tái)自身的限制,不能同時(shí)管理多個(gè)手機(jī)客戶端,基于此缺陷設(shè)計(jì)了一種拓?fù)浣Y(jié)構(gòu),在服務(wù)器側(cè)連接了Mysql數(shù)據(jù)庫(kù),用于數(shù)據(jù)的存儲(chǔ)和管理,使不同的用戶將數(shù)據(jù)上傳到不同的服務(wù)器數(shù)據(jù)庫(kù),最后再將這些數(shù)據(jù)匯總到一個(gè)數(shù)據(jù)庫(kù)服務(wù)器,達(dá)到數(shù)據(jù)共享的目標(biāo)。另外,通過(guò)對(duì)該平臺(tái)控制臺(tái)代碼的研究,將該平臺(tái)的控制臺(tái)改造成網(wǎng)頁(yè)的形式,極大地方便了服務(wù)器跟手機(jī)客戶端之間的交互操作。

        最后,利用該架構(gòu)實(shí)現(xiàn)了一個(gè)追蹤定位的應(yīng)用實(shí)例,不僅安全可靠,而且方便有效。最大程度地滿足了用戶的需求,更驗(yàn)證了該架構(gòu)具有極高的研究?jī)r(jià)值和意義。

        結(jié) 語(yǔ)

        本文設(shè)計(jì)的開(kāi)發(fā)移動(dòng)云應(yīng)用的基礎(chǔ)架構(gòu),既具有傳統(tǒng)的C/S模式和B/S模式的優(yōu)異功能,同時(shí)又結(jié)合了最先進(jìn)的移動(dòng)“云”計(jì)算的設(shè)計(jì)理念。在服務(wù)器端使用了Openmobster手機(jī)云平臺(tái),該平臺(tái)的底層支持功能強(qiáng)大,為系統(tǒng)的通信連接,即數(shù)據(jù)的上傳與下發(fā),提供了良好的保障??蛻舳瞬捎肁ndroid手機(jī)平臺(tái),由于Android提供了豐富的接口,具有良好的可擴(kuò)展性[5]。但是不能忽視的是,設(shè)計(jì)目前還存在很多漏洞,比如平臺(tái)的數(shù)據(jù)同步算法、數(shù)據(jù)上傳的效率等問(wèn)題。這些漏洞和不足,將會(huì)是筆者以后繼續(xù)研究的方向。

        [1]王鵬,董靜宜.一種云計(jì)算架構(gòu)的實(shí)現(xiàn)方法研究[J].計(jì)算機(jī)工程與科學(xué),2009,31(1):11-13.

        [2]江燕良.基于Android智能終端的遠(yuǎn)程控制系統(tǒng)[J].電子技術(shù)應(yīng)用,2012,38(8):129-132.

        [3]姚顯星,劉衛(wèi)國(guó).Android的架構(gòu)與應(yīng)用開(kāi)發(fā)研究[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2008(11):76-79.

        [4]耿東久,索岳,陳渝,等.基于Android手機(jī)的遠(yuǎn)程訪問(wèn)和控制系統(tǒng)[J].計(jì)算機(jī)應(yīng)用,2011,31(2):559-561.

        [5]張京,劉甫迎.基于Android云計(jì)算消息框架(C2DM)的FoxNews_M(jìn)ID手持移動(dòng)系統(tǒng)的研究[J].計(jì)算機(jī)科學(xué),2011,38(10A):461-463.

        猜你喜歡
        服務(wù)器端分塊客戶端
        分塊矩陣在線性代數(shù)中的應(yīng)用
        縣級(jí)臺(tái)在突發(fā)事件報(bào)道中如何應(yīng)用手機(jī)客戶端
        孵化垂直頻道:新聞客戶端新策略
        基于Vanconnect的智能家居瘦客戶端的設(shè)計(jì)與實(shí)現(xiàn)
        淺析異步通信層的架構(gòu)在ASP.NET 程序中的應(yīng)用
        成功(2018年10期)2018-03-26 02:56:14
        反三角分塊矩陣Drazin逆新的表示
        基于自適應(yīng)中值濾波的分塊壓縮感知人臉識(shí)別
        在Windows中安裝OpenVPN
        基于多分辨率半邊的分塊LOD模型無(wú)縫表達(dá)
        客戶端空間數(shù)據(jù)緩存策略
        中文字幕精品一区二区三区av| 欧美xxxx做受欧美88| 夜夜躁狠狠躁日日躁视频| 99在线精品免费视频九九视| 国产av一区二区三区日韩 | 麻豆精品国产精华液好用吗| 性高朝久久久久久久| 久久棈精品久久久久久噜噜| 成人免费网站视频www| 风流少妇又紧又爽又丰满| 激情五月婷婷久久综合| 亚洲一区二区av天堂| 日韩麻豆视频在线观看| 欧美成人猛片aaaaaaa| 国产成人一区二区三区影院动漫| 国产精品欧美久久久久老妞| 日本中文字幕一区二区视频| 精品国产3p一区二区三区| 经典黄色一区二区三区| 亚洲中文字幕九色日本| 精品国产一区二区三区三| 美女露出奶头扒开内裤的视频| 久久久麻豆精亚洲av麻花| 少妇愉情理伦片丰满丰满| 人妻少妇邻居少妇好多水在线| 四虎影视一区二区精品| 熟女少妇av免费观看| 久草中文在线这里只有精品 | 精品人妖一区二区三区四区| 又大又紧又粉嫩18p少妇| 亚洲精品无码av片| 日本少妇按摩高潮玩弄| 国产在线观看精品一区二区三区 | 日韩人妻中文字幕高清在线| 人妻少妇精品无码专区| 国产精品视频一区二区三区不卡| 亚洲 精品 综合 精品 自拍| 国产精品乱码在线观看| 最新国产精品亚洲二区| 日韩美女人妻一区二区三区| 在线观看视频日本一区二区 |