• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      一種基于Openstack swift的高職院校android云盤設(shè)計與實現(xiàn)

      2018-09-14 10:27:02曾新洲
      電腦知識與技術(shù) 2018年16期
      關(guān)鍵詞:高職院校

      曾新洲

      摘要:Openstack Swift是一個高度可用的、分布式的、最終一致的對象存儲。組織可以使用Swift高效、安全、廉價地存儲大量數(shù)據(jù),Swift是存儲無約束增長的非結(jié)構(gòu)化數(shù)據(jù)的理想選擇[1]。本文基于Swift對象存儲技術(shù),開發(fā)了一套運(yùn)行于Android平臺上的云盤APP軟件,實現(xiàn)了云盤用戶管理功能和用戶文件的云存儲功能,便于高職院校師生遠(yuǎn)程管理教學(xué)資料。

      關(guān)鍵詞:Openstack;Swift;高職院校;云盤設(shè)計與實現(xiàn)

      中圖分類號:TN915.09 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2018)16-0055-03

      Design and Implementation of Android Cloud Disk in Higher Vocational Colleges Based on Openstack Swift

      ZENG Xin-zhou

      (Changsha Commerce&tourism; College, Changsha 410116, China)

      Abstract: Openstack Swift is a highly available, distributed, eventually consistent object/blob store. Organizations can use Swift to store lots of data efficiently, safely, and cheaply, Swift is ideal for storing unstructured data that can grow without bound. Based on Swift object storage technology, this paper develops a cloud disk APP software running on Android platform, and realizes cloud storage user management function and user file cloud storage function, It has facilitating the remote management of teaching materials by teachers and students in higher vocational colleges.

      Key words: Openstack; Swift; Higher Vocational Colleges; Design and implementation of Cloud Disk

      OpenStack是一種可以控制整個數(shù)據(jù)中心的大量計算、存儲和網(wǎng)絡(luò)資源的云操作系統(tǒng),管理員通過用戶界面執(zhí)行所有管理操作,并通過Web接口為授權(quán)用戶提供資源。Openstack控制平面如圖1所示,包括裸機(jī)、虛擬機(jī)、容器、對象存儲和塊存儲等組件。用戶應(yīng)用程序、用戶界面、監(jiān)控工具通過API接口訪問Openstack中的上述組件[2]。Openstack有三個與存儲相關(guān)的組件:Swift對象存儲(Object Storage)、Glance虛機(jī)鏡像存儲(Image)和Cinder塊存儲(Block Storage), Swift是一個高度可用的、分布式的、最終一致的對象存儲[3]。Swift與Amazon S3類似,但具有更強(qiáng)的冗余性、擴(kuò)展性和持久性[3]。Swift支持多種應(yīng)用,包括上傳、復(fù)制、存儲、移動、刪除文檔/圖像/視頻等服務(wù),用戶可以使用Swift高效、安全、廉價地存儲大量數(shù)據(jù)[1]。

      近年來,隨著信息技術(shù)的快速發(fā)展,信息量成幾何級數(shù)爆發(fā)式增長,高性能計算、海量數(shù)據(jù)處理逐漸進(jìn)入人們的生活,由此帶來云計算、大數(shù)據(jù)等互聯(lián)網(wǎng)概念深入人心。谷歌drive、蘋果iCloud、微軟SkyDrive、亞馬遜Cloud Drive、百度云、騰訊云、阿里云OSS等云存儲文件管理系統(tǒng)應(yīng)運(yùn)而生,通過使用云盤,用戶可以隨時隨地辦公,并能實現(xiàn)數(shù)據(jù)的快速備份和恢復(fù),避免可能出現(xiàn)的數(shù)據(jù)風(fēng)險[4-5],Openstack 對象存儲(Swift)是目前常用的一種云存儲技術(shù),本文提出了一種基于Swift對象存儲的android云盤App軟件,該App實現(xiàn)了云盤用戶管理功能和用戶文件的云存儲功能。

      目前,大部分高職院校教師傾向于將教學(xué)資源放在機(jī)房的內(nèi)網(wǎng)服務(wù)器上,供學(xué)生在校園網(wǎng)內(nèi)下載學(xué)習(xí),或?qū)W生通過U盤從教師機(jī)上拷貝教學(xué)資源,這些方式都不利于教學(xué)工作的開展,基于當(dāng)前高職院校教學(xué)現(xiàn)狀,實現(xiàn)了一套可共享教學(xué)資源的android云盤系統(tǒng),高職院校教師可將教學(xué)資源上傳到web云盤中,便于學(xué)生遠(yuǎn)程下載學(xué)習(xí),可有效提高教學(xué)效率。

      1 系統(tǒng)架構(gòu)

      云盤App軟件包括用戶管理、文件管理、文件分類管理三個功能模塊,各模塊的功能如圖2所示。文件管理功能包括:上傳文件,新建文件夾,下載、復(fù)制、移動、重命名、刪除、搜索文件或文件夾,拍照上傳,錄像上傳,錄音上傳等。

      2 程序框架設(shè)計

      傳統(tǒng)android應(yīng)用程序傾向于使用Activity組件進(jìn)行界面布局,用戶進(jìn)出界面時,頻繁的創(chuàng)建、銷毀Activity對象,但在頁面切換過程中,通常需要傳遞對象數(shù)據(jù),隨著對象的不停創(chuàng)建和銷毀,內(nèi)存空間中的碎片越來越多,程序執(zhí)行速度越來越慢。云盤APP軟件采用Activity+Fragment創(chuàng)建頁面整體框架,其中主界面為Activity,子頁面采用Fragment實現(xiàn),子頁面切換時,只在多個Fragment之間進(jìn)行,總處于主Activity中,有利于頁面之間數(shù)據(jù)的傳遞。主要程序框架類如圖3所示。

      主要程序框架類圖說明如表1所示。

      3 功能實現(xiàn)

      3.1 用戶管理

      在Openstack中,管理員通過項目、用戶和角色來管理用戶,項目是云計算中可以分配用戶的組織單元,用戶可以是一個或多個項目的成員,角色定義用戶可以執(zhí)行哪些操作。在對象存儲中,項目擁有容器,用戶可以與多個項目相關(guān)聯(lián),每個項目和用戶配對都具有一個與其相關(guān)聯(lián)的角色。

      用戶的文件夾和文件保存在swift服務(wù)器上以“用戶名”命名的容器中,只有注冊用戶才能登錄云盤App管理個人文件信息,注冊信息由用戶名、密碼、確認(rèn)密碼、電子郵箱構(gòu)成。用戶注冊時,后臺程序獲得用戶輸入的用戶名,在keystone中創(chuàng)建以用戶名命名的項目、用戶和角色,并創(chuàng)建兩個容器:以“用戶名”命名的容器(存儲用戶的文件、文件夾)和以“garbage_用戶名”命名的容器(存儲用戶已刪除的文件、文件夾)。

      創(chuàng)建用戶的核心代碼如下:

      OpenStackClientService osServcie = OpenStackClientService.getService();

      user = new User();

      user.setName(username);

      user.setPassword(password);

      user.setEmail(email);

      user.setTenantId(tenant.getId());

      //在keystone中創(chuàng)建用戶

      keystone = new Keystone(keystoneAuthUrl);

      keystone.token(access.getToken().getId());

      user = keystone.users().create(user).execute();

      3.2 文件管理

      3.2.1 上傳文件

      用戶文件通常保存在SD卡中,執(zhí)行上傳文件操作時,需要在AndroidManifest.xml文件中增加以下語句:

      允許程序讀寫SD卡,當(dāng)用戶點擊文件上傳時,系統(tǒng)將調(diào)用AlertDialog .Builder (getActivity())的相應(yīng)方法創(chuàng)建文件上傳對話框,用戶選擇某個文件,然后點擊“確定”按鈕即可實現(xiàn)上傳文件操作。

      為了避免在上傳文件過程中,因時間過長,造成主線程阻塞的問題,本系統(tǒng)將上傳功能放置在AsyncTask異步任務(wù)的doInBackground方法中執(zhí)行。同時,將大文件進(jìn)行分段處理并上傳所有片段,一旦所有片段上傳完畢,swift就會將片段合并成一個文件,便于用戶下載和查看。

      3.2.2 下載文件/文件夾

      云盤APP軟件可同時將多個文件和文件夾下載到SD卡的download目錄中,下載文件/文件夾流程如圖4所示,例如:下載文件夾ABC時,先在SD卡的download目錄中新建一個以ABC命名的文件夾,并將云盤ABC文件夾下所有的文件下載到SD卡的ABC文件夾中,然后再以遞歸方式下載云盤ABC目錄下的文件夾。

      3.2.3 復(fù)制、移動文件/文件夾

      在云盤APP軟件中,當(dāng)用戶選中某個或多個文件/文件夾,點擊“復(fù)制”或“移動”按鈕,在頁面底端將顯示“粘貼”和“取消”按鈕。復(fù)制、執(zhí)行移動文件/文件夾操作時,需要解決好以下幾個問題:

      1)復(fù)制、移動文件夾時,需復(fù)制、移動該文件夾下所有的文件和子文件夾;

      2)當(dāng)目標(biāo)文件夾下存在同名的文件/文件夾時,提示用戶是否覆蓋該文件/文件夾;

      3)當(dāng)用戶點擊“取消”按鈕時,隱藏“粘貼”/“取消”按鈕,取消已選中的文件,并停止復(fù)制、移動操作。

      3.2.4 重命名文件/文件夾

      云盤APP可重命名文件和文件夾,在執(zhí)行重命名操作時,需滿足以下條件:

      1) 一次只能重命名一個文件或文件夾;

      2) 重命名文件時,新文件名的后綴與老文件名的后綴必須一致;

      3) 新文件名/新文件夾名不能與已有的文件名/文件夾名相同;

      4) 目錄名中不能包含“/”等特殊字符。

      3.2.5 搜索文件/文件夾

      云盤APP使用item組件實現(xiàn)文件的模糊搜索,用戶在搜索欄中輸入搜索內(nèi)容aa,在屏幕下方顯示搜索結(jié)果,如圖5所示,顯示結(jié)果包括所有含aa的文件夾和文件。

      3.3 文件分類管理

      云盤APP軟件使用android Fragment管理文檔、圖片、音樂、視頻等不同類型的文件,在文件分類管理中,主視圖采用activity管理,分類文件采用UI Fragment實現(xiàn),利用Fragment,可輕松實現(xiàn)不同文件類型視圖之間的切換,在視圖切換過程中,無需銷毀activity。為了便于用戶操作,在文件分類管理視圖中提供了下載、重命名、刪除文件等功能。

      3.3.1 我的文檔

      云盤APP軟件以Fragment方式展示我的文檔信息,我的文檔包括pdf、ppt、pptx、doc、docx、txt、html、xls、xlsx為后綴的文件。文檔信息以列表方式顯示,采用ListView組件實現(xiàn),并通過ListView的setAdapter方法填充數(shù)據(jù)。

      3.3.2 我的圖片

      很多用戶傾向于將日常拍攝的照片保存在云盤中,既便于隨時查看,又節(jié)省手機(jī)存儲空間,通過云盤APP,用戶可以以列表方式或網(wǎng)格方式查看個人云盤相冊,云盤相冊中的圖片以縮略圖的方式進(jìn)行展示,若要查看詳圖,只需點擊該圖片即可,同時,也可將云盤中的圖片下載到手機(jī)的SD卡中進(jìn)行查看。圖片網(wǎng)格視圖采用GridView組件實現(xiàn),同時定義一個繼承于BaseAdapter類的適配器類填充網(wǎng)格數(shù)據(jù)。

      3.3.3 回收站

      在云盤APP中,回收站是一個以“garbage_用戶名”命名的容器,用于存放云盤用戶刪除的文件和文件夾,在回收站視圖中,用戶可以將選中的文件/文件夾還原到“用戶名”命名的容器中,用戶也可以清空回收站中所有文件和文件夾。

      4 結(jié)束語

      2017年8月4日,中國互聯(lián)網(wǎng)絡(luò)信息中心發(fā)布第40次《中國互聯(lián)網(wǎng)絡(luò)發(fā)展?fàn)顩r統(tǒng)計報告》,《報告》顯示,截至2017年6月,我國手機(jī)網(wǎng)民規(guī)模達(dá)7.24億,網(wǎng)民中使用手機(jī)上網(wǎng)的比例達(dá)到96.3%[6],為了節(jié)省手機(jī)存儲空間,網(wǎng)民更喜歡將手機(jī)中暫時不用的文件、圖片等資源上傳到云盤中,本文基于swift對象存儲技術(shù)開發(fā)了一套云盤APP軟件,實現(xiàn)了用戶文件上傳、下載、復(fù)制、移動、刪除等遠(yuǎn)程文件管理功能,便于高職院校師生在任何時間、任何地點、任何網(wǎng)絡(luò)存取個人數(shù)據(jù)信息。

      參考文獻(xiàn):

      [1] Rackspace Cloud Computing. Welcome to Swifts documentation! [EB/OL]. (2018-04-06).https://docs.openstack.org/swift/latest/.

      [2] Rackspace Cloud Computing. What is OpenStack? [EB/OL] https://www.openstack.org/software/.

      [3] 陳海洋. Openstack存儲剖析[EB/OL]. (2014-02-13).https://www.ibm.com/developerworks/cn/cloud/library/1402_chenhy_openstackstorage/.

      [4] Puttaswamy Krishna P N, Thyaga N, Murali K. Frugal storage for cloud file systems [C]//EuroSys12 – Proceedings of the EuroSys 2012 Conference, 2012:71-84.

      [5] Maxim S, Christoph M. Implementation of cloud-RAID: A secure and reliable storage above the clouds [C]//Lecture Notes in Computer Science, 2013:91-102.

      [6] 中央網(wǎng)絡(luò)安全與信息化領(lǐng)導(dǎo)小組辦公室,國家互聯(lián)網(wǎng)信息辦公室,中國互聯(lián)網(wǎng)絡(luò)信息中心. 第40次中國互聯(lián)網(wǎng)絡(luò)發(fā)展?fàn)顩r統(tǒng)計報告[R]. 北京市海淀區(qū)中關(guān)村南四街四號:中國互聯(lián)網(wǎng)絡(luò)信息中心,2017:8-9.

      猜你喜歡
      高職院校
      高職院校教師發(fā)展中心的功能及運(yùn)行機(jī)制研究
      職業(yè)(2016年10期)2016-10-20 22:11:48
      城鎮(zhèn)化背景下高職院校教師培訓(xùn)探析
      職業(yè)(2016年10期)2016-10-20 22:09:41
      新時期下高職院校如何為學(xué)生心理健康保駕護(hù)航
      科技視界(2016年21期)2016-10-17 19:15:26
      新時期高職院校學(xué)生黨建工作現(xiàn)狀研究
      商(2016年27期)2016-10-17 05:16:26
      高職院校創(chuàng)客文化的發(fā)展模式
      考試周刊(2016年79期)2016-10-13 23:25:20
      “一帶一路”戰(zhàn)略與鹽城高職院校學(xué)生職業(yè)生涯規(guī)劃的思考
      考試周刊(2016年77期)2016-10-09 12:05:08
      淺析紅色文化與高職院校思想政治教育工作
      考試周刊(2016年77期)2016-10-09 11:59:13
      高職院校大學(xué)生頂崗實習(xí)存在法律問題的成因分析
      高職院校創(chuàng)新創(chuàng)業(yè)教育初探
      科技視界(2016年20期)2016-09-29 12:58:21
      全球化背景下高職院校韓語專業(yè)畢業(yè)生就業(yè)現(xiàn)狀分析
      科技視界(2016年20期)2016-09-29 12:56:14
      荣成市| 会宁县| 陵川县| 肇庆市| 台东县| 惠东县| 鹿邑县| 玛纳斯县| 丰顺县| 阿克| 平远县| 丽水市| 孟村| 白城市| 洛宁县| 东乡县| 伊春市| 靖安县| 格尔木市| 阿城市| 读书| 丹凤县| 长治县| 临桂县| 南靖县| 阜宁县| 醴陵市| 泗洪县| 桐柏县| 嘉义县| 卢龙县| 留坝县| 宁晋县| 临邑县| 赤城县| 淮滨县| 鹿邑县| 凤庆县| 三穗县| 江城| 陇南市|