999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Docker 的在線虛擬仿真實驗容器系統設計與應用實踐

2019-07-25 08:03:30陶銘曲超
現代計算機 2019年17期
關鍵詞:用戶功能實驗

陶銘,曲超

(東莞理工學院計算機科學與技術學院,東莞523808)

0 引言

“新工科”建設背景下,需要培養復合型人才和創新性人才,這就需要培養學生將所學理論知識應用于實踐的能力,以及將所學的專業知識創造性地應用于新的領域或跨多重領域,進行研發或創新的能力[1]。因此,實驗教學成為培養學生這些能力的重要環節。然而,現有的實驗教學模式受到場地、設備及師資等多方面的影響,嚴重制約著實驗教學水平的提升以及學生實踐能力的培養。

近年來,逐步發展起來的虛擬仿真實驗作為物理實驗的一種替代技術,以其低成本等特點,已被廣泛應用于實驗教學,且被證明是應用信息技術解決高校實驗教學環節中存在問題的可行途徑。然而,目前虛擬仿真實驗的開發利用相對比較初步,研究重點主要集中于實驗功能的實現,往往僅局限于物理實驗的替代,而極少地進一步發揮其信息處理能力,并且在擴展能力和集成能力等方面存在嚴重的不足,如:缺乏遠程訪問和并發服務能力。虛擬仿真軟件往往是一個純客戶端軟件,可以在單機上運行,實驗人員往往需要分別下載并各自運行。既不能運程訪問,也不具備并發服務能力,難以同其他軟件進行直接交互,無法直接進行在線實驗[2]。

為此,為更充分地發揮虛擬仿真實驗的優勢,更好地培養學生實踐創新的能力,以及提升學生“學以致用”的水平,本文基于輕量級的操作系統虛擬化解決方案Docker[3],設計并實現了一種在線虛擬仿真實驗容器系統。系統實現了后臺服務器系統、資源服務器、客戶端、管理員等功能模塊,旨在通過圖形化界面,結合Docker 的相關指令以及其他輔助功能,降低用戶使用容器過程中的門檻,提高用戶進行在線虛擬仿真實驗的便捷性。

1 系統功能需求分析

本系統的用戶有兩種:普通用戶和管理員。普通用戶的主要功能包括兩大模塊:容器和工單。容器模塊包括申請、管理及使用,用例圖如圖1 所示。用戶申請容器通過填寫并提交表單來執行。用戶對容器的管理包括開啟、關閉及刪除。用戶對容器的使用分為容器內的文件操作、服務管理。容器內的文件操作包括在容器中上傳、創建、刪除、重命名、移動、復制文件以及新建、刪除文件夾;服務管理中的“服務”指的是Linux 命令,Linux 命令保存為服務后,點擊執行可以在容器內執行該命令,對容器外的環境沒有影響。服務管理還包括修改服務、刪除服務、添加默認服務。

圖1 容器模塊用例圖

工單模塊包括了創建、回復、查看、搜索、關閉,用例圖如圖2 所示。工單是作為用戶和管理員交流溝通的重要途徑。用戶填寫工單后,管理員能夠接收到用戶發出的消息,進而回復并跟進用戶提出的問題,用戶也能在工單中與管理員繼續反饋。關閉工單功能是給用戶在認為已經解決問題后,手動將工單狀態設置為關閉。

圖2 (普通用戶)工單模塊用例圖

管理員的主要功能包括以下模塊:用戶、控制臺、容器、工單。用戶模塊包括顯示用戶信息列表、顯示用戶操作記錄,用例圖如圖3 所示。用戶信息列表中是用戶的基本信息,包括其學號、用戶名等。用戶操作記錄指用戶登錄、申請容器、使用容器、創建工單、回復工單等操作。用戶在進行這些操作時會被系統記錄,并形成日志文件便于分析。

圖3 管理員端用戶模塊用例圖

控制臺模塊包括顯示當前用戶數、顯示當前容器數、顯示當前未讀消息數、顯示當前資源服務器的CPU及內存占用情況、定時處理過期容器,用例圖如圖4 所示。未讀消息指的是未查看的工單回復,若是剛創建的工單,工單內的第一條消息也被認為是未讀消息。

圖4 控制臺模塊用例圖

管理員端容器模塊包括顯示容器列表、顯示容器詳情、容器管理、容器信息統計,用例圖如圖5 所示。容器管理包括開啟、關閉、刪除。容器信息統計是從容器創建日期分布、已開啟容器數量、鏡像使用分布這些角度進行統計。

圖5 管理員端容器模塊用例圖

管理員端工單模塊包括查看工單列表、新建工單、查看工單詳情、回復工單,用例圖如圖6 所示。工單列表能夠突出顯示有未讀消息的工單,表現為該工單標題后有個帶數字的徽章,徽章內數字表示當前未讀消息的數量。

圖6 管理員端工單模塊用例圖

2 系統設計

2.1 系統體系結構設計

本系統在體系結構上分為三部分:界面表示層、業務邏輯層以及數據與資源層[4],如圖7 所示。客戶端和管理員端為界面表示層,為普通用戶和管理員展示所需要的界面,并顯示從后臺獲取的數據;后臺服務器系統屬于業務邏輯層,作為一個中間層,既負責為客戶端和管理員端提供必要數據和業務邏輯,又負責管理數據與資源層;數據與資源層有資源服務器和數據庫,其中,資源服務器是安裝有Docker 的Linux 宿主機。

圖7 系統體系結構示意圖

2.2 系統功能設計

基于上述對普通用戶及管理員的功能需求分析,將分別展示申請容器、開啟容器、上傳文件、復制文件及添加自定義服務的功能時序圖。其他的功能在流程上與上述功能有相似之處。

申請容器是根據收集填寫的信息并創建容器,其功能時序圖如圖8 所示。

開啟容器操作除了在資源服務器中開啟容器外,還會收集容器的相關信息,其功能時序圖如圖9 所示,操作流程如圖10 所示。關閉容器和刪除容器與其類似,只是少了向資源服務器查詢容器信息的步驟。

圖8 申請容器功能時序圖

圖9 開啟容器功能時序圖

圖10 開啟容器的流程圖

添加自定義服務的功能時序圖如圖11 所示。編輯服務、刪除服務在流程上與其類似。而添加默認服務與其不同點在于服務的信息是通過檢索數據庫獲得。

圖11 添加自定義服務功能時序圖

3 系統實現及應用

本系統的實現基于ThinkPHP 框架,遵循MVC 架構,采用HTML、CSS、jQuery、PHP 等進行開發[5],如圖12 所示。具體地,前端采用HTML 語言顯示基本內容,使用CSS 對頁面進行格式排版,使用ThinkPHP 框架的View 視圖層進行封裝;業務處理采用ThinkPHP框架的Controller 控制器,在對客戶請求進行處理時,調用相應的業務邏輯層函數完成相應的功能;采用ThinkPHP 框架的數據庫擴展功能實現MySQL 數據庫的連接,并采用ThinkPHP 框架的Model 數據模型層實現PHP 代碼與MySQL 數據庫表連接,以面向對象的方式處理數據庫。本文以《Web 前端開發實踐》課程中搭建一個基于Apache 的Web 服務器為例,介紹Docker容器的應用效果。

圖12 系統實現架構示意圖

3.1 申請容器

用戶填寫相應信息,選擇鏡像、資源文件夾大小、開放端口,程序判斷無誤后即可創建容器。用戶可選擇的連接容器使用AJAX 異步查詢并顯示。收到用戶的申請后,后臺先根據用戶填寫的需求拼接Docker 操作命令,然后再交由DockerHelper 類執行[6]。若在創建容器時選擇了需要資源文件夾,則需要在資源服務器上分配所選容量的文件夾給用戶使用。本系統使用磁盤配額技術限制該文件夾的大小。申請容器的功能界面如圖13 所示,主要代碼實現如下所示。

圖13 申請容器

//通過數據庫,生成一個資源文件夾id

if(isset($resSize)&&$resSize!==""&&$resSize!==0){

$res=new Res();

……

$res->data($info);

$res->save();

$res=Res::get($info);

$resId=$res->id;

}else{

$resSize=0;

$resId=-1;

}

//解析要連接容器,并產生真正的容器名

if($linkChoice!==""&&$linkChoice!=="(無)"&&$link-Choice!=="(無)"){

$linkChoice=$account.'-'.$linkChoice;

}else{

$linkChoice="";

}

$helper=$this->getDockerHelper();

//執行Docker 中的創建容器命令

$result=$helper->createContainer($account,$imageName,

$cname,$linkChoice,$resSize,$resId,$cportList)->getData();

3.2 容器管理

容器開啟時將連接資源服務器并作如下操作:①查看其端口映射情況,更新數據并顯示;②查看硬盤占用情況;③獲取容器默認目錄下的文件。容器管理功能界面如圖14 所示。

圖14 容器管理

4 結語

本文應對在線虛擬仿真實驗在提升學生實踐創新能力方面存在的不足,設計并實現了一種基于Docker的在線虛擬仿真實驗容器系統。該系統實現了后臺服務器系統、資源服務器、客戶端、管理員等功能模塊。在實際的實踐教學環節應用過程中,該系統通過圖形化界面,結合Docker 的相關指令及其他輔助功能,可降低用戶使用容器過程中的門檻,提高用戶進行在線虛擬仿真實驗的便捷性,體現出良好的應用效果,在深化信息技術與教育教學的融合發展中具有明顯的積極意義。

猜你喜歡
用戶功能實驗
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
記一次有趣的實驗
做個怪怪長實驗
關于非首都功能疏解的幾點思考
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
NO與NO2相互轉化實驗的改進
實踐十號上的19項實驗
太空探索(2016年5期)2016-07-12 15:17:55
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
主站蜘蛛池模板: 亚洲日本www| 2022国产无码在线| 手机在线免费毛片| 麻豆国产在线不卡一区二区| 99视频在线免费| 亚洲不卡网| 亚洲免费毛片| 乱人伦中文视频在线观看免费| 91小视频版在线观看www| 国产对白刺激真实精品91| 99视频有精品视频免费观看| 国产成+人+综合+亚洲欧美| 亚洲成A人V欧美综合天堂| 国产成人艳妇AA视频在线| 国产毛片高清一级国语 | 国产精品yjizz视频网一二区| 国产精品私拍99pans大尺度| av色爱 天堂网| 欧美日韩专区| 国产在线精彩视频论坛| 亚洲精选无码久久久| 免费人成视网站在线不卡| 成年人免费国产视频| 伊人久久大香线蕉成人综合网| 国产精品专区第1页| 国产va在线观看免费| 国产欧美亚洲精品第3页在线| 国产成人高清精品免费软件| 伊人欧美在线| 欧美激情第一欧美在线| 人妻精品久久无码区| 久久这里只有精品66| 97se亚洲综合在线天天 | 亚洲精品视频免费| 日本高清有码人妻| 国产香蕉在线| 日韩毛片在线播放| 国产91精品最新在线播放| 99视频精品在线观看| AV在线天堂进入| 欧美天堂在线| 华人在线亚洲欧美精品| 国产在线第二页| 欧美日韩一区二区在线播放| 国产一区二区免费播放| 婷婷综合在线观看丁香| 91精品在线视频观看| 亚洲h视频在线| 无码国内精品人妻少妇蜜桃视频| 色网站免费在线观看| 97免费在线观看视频| 第一区免费在线观看| 国产主播福利在线观看| 久久无码高潮喷水| 亚洲精品爱草草视频在线| 国产成人精品在线| 亚洲综合色婷婷| 一级全黄毛片| 国产91在线免费视频| 国产特级毛片aaaaaaa高清| 久久中文电影| 永久免费无码日韩视频| 午夜性刺激在线观看免费| 特级毛片免费视频| 天天综合亚洲| 国产乱子伦视频在线播放| 五月激激激综合网色播免费| 国产真实乱人视频| 国产精品无码久久久久AV| 国产精品无码制服丝袜| 日本五区在线不卡精品| 欧美a级完整在线观看| 强奷白丝美女在线观看| 成人国内精品久久久久影院| 国产在线自揄拍揄视频网站| 亚洲成aⅴ人在线观看| 欧美激情第一区| 91久久偷偷做嫩草影院电| 亚洲二区视频| 日韩麻豆小视频| 国产欧美视频综合二区| 美女裸体18禁网站|