下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
基于LAMP的離散結(jié)構(gòu)在線評測題庫系統(tǒng)設(shè)計(jì)研究方案。拋開Linux不談,Apache效勞器、MySQL數(shù)據(jù)庫治理系統(tǒng)和PHP腳本語言本身都是各自獨(dú)立的開源軟件,都有著相當(dāng)強(qiáng)健的功能。當(dāng)把三者結(jié)合在一起時(shí),三者構(gòu)成的整體可以擁有高度的兼容性,構(gòu)成了一個(gè)強(qiáng)大的Web開發(fā)平臺。在LAMP平臺中開發(fā)的工程,由于各個(gè)開源的軟件已經(jīng)特別成熟,所以在軟件方面的投資本錢很低,適合系統(tǒng)平臺的開發(fā)。因此現(xiàn)在越來越多的供給商、用戶和企業(yè)投資者日已熟悉到,使用LAMP開源軟件的組成平臺構(gòu)建以及運(yùn)行各種商業(yè)應(yīng)用和協(xié)作構(gòu)建各種網(wǎng)絡(luò)應(yīng)用程序,變得更加具有競爭力,更加吸引客戶。無論是從性能、質(zhì)量還是價(jià)格上LAMP都將成為企業(yè)和制服信息化所必需考慮的平臺[5-6]。
Apache網(wǎng)絡(luò)效勞器作為一種開放源碼的Web效勞器,占據(jù)了大局部市場份額,在世界范圍內(nèi)是使用量第一的Web效勞器。Apache網(wǎng)絡(luò)效勞器支持HTTP協(xié)議,可以運(yùn)行在各種計(jì)算機(jī)操作平臺上,如Unix/Linux,Windows,MAC等。Apache網(wǎng)絡(luò)效勞器功能強(qiáng)大、敏捷性高、可擴(kuò)展性好,可做代理效勞器并且可通過簡潔的API擴(kuò)展,將PHP等解釋器編譯到效勞器[7]。
PHP,是英文超文本預(yù)處理語言HypertextPreprocessor的縮寫?;旌狭薈、Java、Perl等以及PHP自創(chuàng)語法,使其擁有了獨(dú)特的語法。PHP執(zhí)行動(dòng)態(tài)網(wǎng)頁比CGI或者Perl更加快速。PHP和ASP,JSP腳本語言一樣,也是一種HTML內(nèi)嵌式的語言,并且是面對Web效勞器的技術(shù)[8]。PHP具有特別強(qiáng)大的功能,能實(shí)現(xiàn)全部CGI或JavaScript的功能,而且支持幾乎全部流行的數(shù)據(jù)庫以及操作系統(tǒng)[9]。PHP不僅具有以上優(yōu)點(diǎn),其特色更在于:具有強(qiáng)大的數(shù)據(jù)庫支持、內(nèi)置的函數(shù)庫非常豐富、源碼完全開放、簡潔易學(xué)并且效率極高。
MySQL是一個(gè)關(guān)系型數(shù)據(jù)庫治理系統(tǒng),由瑞典MySQLAB公司開發(fā),目前屬于Oracle公司。MySQL是一種關(guān)聯(lián)數(shù)據(jù)庫治理系統(tǒng),關(guān)聯(lián)數(shù)據(jù)庫將數(shù)據(jù)保存在不同的表中,而不是將全部數(shù)據(jù)放在一個(gè)大倉庫內(nèi),這樣就增加了速度并提高了敏捷性[10]。
MySQL作為一般中小型網(wǎng)站開發(fā)的網(wǎng)站數(shù)據(jù)庫的首選,不僅是由于其速度快,體積小,本錢低,更是由于其開放源碼這一特點(diǎn)。并且到目前為止,MySQL是和PHP交互最好的數(shù)據(jù)庫系統(tǒng),其搭配PHP和Apache可組成良好的開發(fā)環(huán)境。
3.基于LAMP架構(gòu)的離散構(gòu)造在線評測題庫系統(tǒng)總體設(shè)計(jì)
該系統(tǒng)是集程序設(shè)計(jì)競賽、競賽訓(xùn)練、課程試驗(yàn)、平常練習(xí)于一身的網(wǎng)上實(shí)時(shí)提交系統(tǒng)。該系統(tǒng)供應(yīng)了大量供學(xué)生練習(xí)和競賽的競賽題目,學(xué)生在線提交解決相關(guān)練習(xí)和競賽題的程序代碼,系統(tǒng)可以自動(dòng)編譯程序代碼,生成可執(zhí)行文件,并依據(jù)已存儲的測試用例,從程序的正確性、程序運(yùn)行總時(shí)間、消耗內(nèi)存、單用例執(zhí)行時(shí)間、程序返回結(jié)果等各方面評測程序代碼,并準(zhǔn)確返回各方面的評測結(jié)果。不但支持C、C++、PASCAL以及JAVA語言的編譯,還定義了一套具有充分可擴(kuò)展性的編輯器擴(kuò)大規(guī)章,可以在不修改系統(tǒng)任何實(shí)現(xiàn)的狀況下,通過治理配置文件增加系統(tǒng)可以支持的語言和編譯器。離散數(shù)學(xué)在線評測系統(tǒng)性能上的穩(wěn)定快速可以為該課程供應(yīng)有效的試驗(yàn)環(huán)境。
3.1系統(tǒng)架構(gòu)設(shè)計(jì)
離散構(gòu)造在線評測系統(tǒng)是基于WEB構(gòu)建的,所以整個(gè)系統(tǒng)在架構(gòu)上主要分為三個(gè)構(gòu)造:客戶端、效勞器端、數(shù)據(jù)庫端。對于客戶端而言,學(xué)生主要通過掃瞄器來使用操作系統(tǒng);在效勞器端供應(yīng)物理效勞器,配置相應(yīng)系統(tǒng)公布軟件;數(shù)據(jù)庫端配置在效勞器中,存儲系統(tǒng)需要的各類數(shù)據(jù)。
3.2系統(tǒng)功能模塊設(shè)計(jì)
離散構(gòu)造在線測評系統(tǒng)功能模塊圖如圖1所示:
圖1.離散構(gòu)造在線評測系統(tǒng)功能模塊圖
3.3數(shù)據(jù)庫設(shè)計(jì)
在離散構(gòu)造在線評測系統(tǒng)設(shè)計(jì)過程中,數(shù)據(jù)庫的設(shè)計(jì)顯得至關(guān)重要。我們嚴(yán)格根據(jù)數(shù)據(jù)庫設(shè)計(jì)的基準(zhǔn)和原則進(jìn)展數(shù)據(jù)庫的全部表和表項(xiàng)的設(shè)計(jì)。這樣可以降低工程的開發(fā)難度,便利工程后期的日常維護(hù)。同樣,良好的數(shù)據(jù)庫設(shè)計(jì)也會(huì)降低系統(tǒng)的開發(fā)本錢。離散構(gòu)造在線評測系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)如表1所示:
表1數(shù)據(jù)庫設(shè)計(jì)
表名用途
users記錄學(xué)生或教師的信息
problem記錄題目信息
message記錄論壇內(nèi)容
solution記錄學(xué)生提交的作業(yè)信息
source_code記錄學(xué)生提交的作業(yè)內(nèi)容
contest記錄考試信息
attend記錄考試成績
4.基于LAMP架構(gòu)的離散構(gòu)造在線評測題庫系統(tǒng)具體設(shè)計(jì)
4.1前臺的具體設(shè)計(jì)
離散構(gòu)造在線評測題庫系統(tǒng)用戶分為三類:學(xué)生,教師和治理員。全部用戶均需要登錄,系統(tǒng)會(huì)從users表中取得該用戶的權(quán)限,從而進(jìn)展辨別。用戶登錄后可以選擇考試或訓(xùn)練模式,并進(jìn)入相應(yīng)題庫提交代碼,經(jīng)后臺評測后,即可返回結(jié)果。假如學(xué)生對題目或結(jié)果有任何問題,也可以在爭論區(qū)發(fā)帖留言,與其他同學(xué)進(jìn)展探討和討論。教師則可以出題、開辦考試、查看考試結(jié)果等操作。
4.2評測系統(tǒng)核心層
評測系統(tǒng)核心是承受用戶提交的程序,把程序的運(yùn)行結(jié)果返回給用戶,運(yùn)行結(jié)果為程序正確或程序不正確。程序不正確包括:運(yùn)行錯(cuò)誤、運(yùn)行超時(shí)、運(yùn)行結(jié)果錯(cuò)誤以及運(yùn)行結(jié)果輸出格式錯(cuò)誤。在進(jìn)展程序評判時(shí),先啟動(dòng)效勞器評判進(jìn)程,它是以守護(hù)進(jìn)程的方式存在的。在偵聽到有提交記錄時(shí),守護(hù)進(jìn)程馬上從數(shù)據(jù)庫中取出待評判的程序進(jìn)展編譯,編譯時(shí)采納多進(jìn)程方式,使用Linux下C語言函數(shù)fork()分出一個(gè)子進(jìn)程,在子進(jìn)程中通過fexecle()函數(shù)調(diào)用gcc或者javac命令進(jìn)展編譯,然后推斷其編譯結(jié)果。
4.完畢語
離散構(gòu)造在
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025中交二航局市政建設(shè)限公司招聘250人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025下半年江蘇蘇州市吳中區(qū)人民檢察院速錄員招聘3人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025下半年安徽黃山市祁門縣事業(yè)單位招聘45人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025下半年四川遂寧經(jīng)開區(qū)部分事業(yè)單位考試招聘工作人員73人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025下半年四川省遂寧市安居區(qū)事業(yè)單位招聘17人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025上半年浙江溫州職業(yè)技術(shù)學(xué)院選聘152人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025上半年四川省自貢沿灘區(qū)事業(yè)單位招聘79人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025“才聚齊魯成就未來”山東未來集團(tuán)限公司招聘96人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 帽子及附件相關(guān)行業(yè)投資方案范本
- 鐵路電氣化玻璃鋼施工協(xié)議
- 教育研究導(dǎo)論首都師范
- (完整版)自動(dòng)感應(yīng)門施工方案
- _ 基本粒子與宏觀物體內(nèi)在聯(lián)系
- 象棋比賽積分編排表
- 工會(huì)新聞的寫作培訓(xùn)講義(共36頁).ppt
- 中藥飲片購進(jìn)驗(yàn)收記錄表格模板
- TCM遠(yuǎn)紅外發(fā)展初析
- 房地產(chǎn)開發(fā)企業(yè)土地增值稅清算政策與實(shí)務(wù)操作(成都市)解讀
- 房地產(chǎn)估計(jì)第九章假設(shè)開發(fā)法練習(xí)題參考答案
- [爆笑小品校園劇本7人]爆笑小品校園劇本
- 第五章 逆向選擇
評論
0/150
提交評論