天堂国产午夜亚洲专区-少妇人妻综合久久蜜臀-国产成人户外露出视频在线-国产91传媒一区二区三区

基于Docker的云集成開(kāi)發(fā)環(huán)境的研究與實(shí)現(xiàn)

發(fā)布時(shí)間:2018-07-21 21:57
【摘要】:目前大多數(shù)基于Web的C語(yǔ)言相關(guān)的集成開(kāi)發(fā)環(huán)境都不會(huì)集成調(diào)試功能,只是簡(jiǎn)單將程序輸出顯示到用戶的網(wǎng)頁(yè)上,當(dāng)程序出現(xiàn)問(wèn)題時(shí),用戶難以利用調(diào)試手段分析并修復(fù)程序錯(cuò)誤。并且市面上難以看到集成了內(nèi)存泄漏檢測(cè)功能的基于Web的集成開(kāi)發(fā)環(huán)境,這樣無(wú)法在用戶學(xué)習(xí)初期就培養(yǎng)用戶編寫(xiě)正確代碼的習(xí)慣。并且,我們希望有一個(gè)能夠收集用戶編輯、編譯、調(diào)試和運(yùn)行各個(gè)階段數(shù)據(jù)的平臺(tái),以便將來(lái)通過(guò)分析這些數(shù)據(jù),找出學(xué)生常見(jiàn)的問(wèn)題并幫助學(xué)生解決這些問(wèn)題,從而改善教學(xué)。同時(shí),這個(gè)平臺(tái)也能為現(xiàn)在的MOOC教學(xué)提供了強(qiáng)大的支持,為MOOC提供一個(gè)上機(jī)實(shí)踐的平臺(tái)。并且在擁有這個(gè)平臺(tái)之后,我們能夠在在這個(gè)平臺(tái)上編寫(xiě)一些腳本,能夠半自動(dòng)化地甚至全自動(dòng)化地幫助學(xué)生一步一步地學(xué)習(xí)編程和調(diào)試,提高學(xué)生的編程水平及調(diào)試水平。為解決作業(yè)批改過(guò)程中的一些關(guān)鍵問(wèn)題,本文提出了面向接口型作業(yè)的防錯(cuò)式鏈接機(jī)制。為了能夠給用戶提供一個(gè)獨(dú)立的編程環(huán)境,本文使用了Docker技術(shù),不僅可以保證用戶編程環(huán)境之間相互隔離,還能保證Web系統(tǒng)的安全性。為了提高系統(tǒng)可擴(kuò)展性及可靠性,本文在實(shí)現(xiàn)時(shí)使用了Docker集群,研究了如何使用分布式鎖、Mesos和Marathon對(duì)Docker集群進(jìn)行管理,能夠動(dòng)態(tài)地使用Marathon為學(xué)生創(chuàng)建Docker容器應(yīng)用,并且在學(xué)生長(zhǎng)時(shí)間不使用系統(tǒng)時(shí),能夠自動(dòng)刪除Docker容器,避免浪費(fèi)計(jì)算機(jī)硬件資源。然后研究了一個(gè)集成開(kāi)發(fā)環(huán)境必要的文件管理功能及其實(shí)現(xiàn),方便用戶管理源代碼。接著研究了如何基于Web、Docker和GDB/MI為用戶實(shí)現(xiàn)一個(gè)具有基本調(diào)試功能及文件管理功能的云集成開(kāi)發(fā)環(huán)境。并且研究了如何在系統(tǒng)中集成Valgrind工具,用于檢測(cè)并報(bào)告用戶代碼中的內(nèi)存泄漏等內(nèi)存錯(cuò)誤問(wèn)題。最后詳細(xì)描述了測(cè)試時(shí)Docker集群環(huán)境配置、各個(gè)模塊中關(guān)鍵的自動(dòng)化測(cè)試流程,并通過(guò)一個(gè)實(shí)際的調(diào)試過(guò)程測(cè)試對(duì)集成開(kāi)發(fā)環(huán)境用戶界面及調(diào)試過(guò)程中使用到的功能進(jìn)行了展示。本文最終實(shí)現(xiàn)了一個(gè)基于Web的分布式的云集成開(kāi)發(fā)環(huán)境,為平時(shí)上機(jī)練習(xí)及MOOC教學(xué)提供了一個(gè)更加強(qiáng)大及方便的在線上機(jī)平臺(tái),也為將來(lái)分析學(xué)生常見(jiàn)編程錯(cuò)誤提供了一個(gè)數(shù)據(jù)收集平臺(tái)。
[Abstract]:At present, most of the C language related integrated development environment based on Web will not integrate the debugging function, but simply display the program output to the user's web page. When the program has problems, it is difficult for the user to analyze and repair the error of the program by debugging. And it is difficult to see the Web based on the memory leak detection function on the market. An integrated development environment that does not develop the custom of writing correct code at the beginning of a user's learning. And we want to have a platform that collects, compiles, debug, and run data at all stages in order to find out common problems and help students to solve these problems by analyzing these data in the future. As a result, this platform can also provide a strong support for MOOC teaching and a platform for MOOC practice. And with this platform, we can write scripts on this platform to help students learn programming step by step and automatically and automatically. In order to solve some key problems in the process of job correction, this paper puts forward the error proof linking mechanism for the interface oriented operation. In order to provide an independent programming environment for the users, this paper uses Docker technology to ensure the interaction between the user programming environment. In order to improve the security of the Web system, in order to improve the scalability and reliability of the system, this article uses the Docker cluster in implementation, studies how to use distributed locks, Mesos and Marathon to manage the Docker cluster, can dynamically use Marathon for creating Docker container applications for students, and is not used for a long time in students. In the system, it can automatically delete the Docker container and avoid the waste of computer hardware. Then it studies the necessary file management function and its implementation of an integrated development environment to facilitate the user to manage the source code. Then it studies how to implement a basic debugging function and file management function for the user based on Web, Docker and GDB/MI. In the cloud integrated development environment, and how to integrate Valgrind tools in the system to detect and report memory errors such as memory leaks in user code. Finally, it describes the Docker cluster environment configuration in the test, the key automated test processes in each module, and test the set through a practical debugging process. In the end, a distributed cloud integrated development environment based on Web is implemented, which provides a more powerful and convenient online platform for online training and MOOC teaching, and also provides an analysis of common programming errors for students in the future. A data collection platform.
【學(xué)位授予單位】:電子科技大學(xué)
【學(xué)位級(jí)別】:碩士
【學(xué)位授予年份】:2017
【分類號(hào)】:TP393.09

【參考文獻(xiàn)】

相關(guān)期刊論文 前4條

1 馬越;黃剛;;基于Docker的應(yīng)用軟件虛擬化研究[J];軟件;2015年03期

2 趙香;耿銳;黃光紅;;C語(yǔ)言源碼級(jí)調(diào)試器的設(shè)計(jì)與實(shí)現(xiàn)[J];計(jì)算機(jī)與現(xiàn)代化;2011年05期

3 樊振宇;;深入理解SERVLET和JSP原理[J];電腦知識(shí)與技術(shù);2011年11期

4 袁峗;;Java與Restful Web Service[J];電腦知識(shí)與技術(shù)(學(xué)術(shù)交流);2007年21期

相關(guān)博士學(xué)位論文 前1條

1 徐苑苑;云計(jì)算環(huán)境下的開(kāi)放課程應(yīng)用研究[D];華東師范大學(xué);2013年

相關(guān)碩士學(xué)位論文 前7條

1 馬青純;基于Docker的云存儲(chǔ)服務(wù)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D];哈爾濱工業(yè)大學(xué);2016年

2 冷志強(qiáng);基于分布式文件系統(tǒng)GlusterFS的橫向擴(kuò)展云存儲(chǔ)的研究與實(shí)現(xiàn)[D];復(fù)旦大學(xué);2014年

3 錢(qián)海yN;程序自動(dòng)批改系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D];電子科技大學(xué);2013年

4 黃z,

本文編號(hào):2136982


資料下載
論文發(fā)表

本文鏈接:http://sikaile.net/guanlilunwen/ydhl/2136982.html


Copyright(c)文論論文網(wǎng)All Rights Reserved | 網(wǎng)站地圖 |

版權(quán)申明:資料由用戶e0691***提供,本站僅收錄摘要或目錄,作者需要?jiǎng)h除請(qǐng)E-mail郵箱bigeng88@qq.com