1.1簡介
在Exam++考試系統(tǒng)第一版的基礎上,我們對ExamStack V2.0進行了大量代碼重構,同時也對數據模型做了部分調整。為了減小學員考試交卷時大量并發(fā)帶來的系統(tǒng)風險,我們嘗試采用成熟的消息隊列框架RabbitMQ來解決這一問題,因此我們的數據庫以及系統(tǒng)的架構同第一版相比,發(fā)生了不小的變化。
1.2 部署要點
Management.war和Portal.war需要部署在同一個目錄下。
ExamStack V2.0增加了培訓功能,因為需要保存培訓材料,所以請留出足夠的磁盤空間(以實際需要為準)。
要保證RabbitMQ服務狀態(tài)為運行狀態(tài)。
要保證ScoreMarker狀態(tài)為運行狀態(tài),同時ScoreMarker調用服務地址要配置正確。
2.1 服務器安裝部署
2.1.1 服務器配置
操作系統(tǒng):Linux、Windows
內存:最低2G,推薦8G
2.1.2 java運行環(huán)境
Java 8
2.1.3 服務器
Tomcat 8
RabbitMQ
MySql 5.0以上
2.2 應用部署
2.2.1 數據庫
在MySql中新建一個數據庫examstack,字符集使用utf8 — UTF-8 Unicode
使用我們提供的examstack.sql還原examstack
設置好對應的訪問權限
2.2.2 RabbitMQ
安裝最新版本的RabbitMQ,具體安裝方法,在網絡上可以找到很多。
2.2.3 應用
將Management.war和Portal.war放到Tomcat應用程序目錄(webapps)下。
啟動Tomcat,webapps目錄下會生成兩個文件夾(Management和Portal)。
分別進入到Management/WEB-INF/Spring和Portal/WEB-INF/Spring下修改root-context.xml文件,將數據庫地址、用戶名和密碼修改成正確的內容。修改完成后重啟tomcat服務器。
需要修改的內容如下:
訪問http://localhost:8080/Management和http://localhost:8080/Portal可以進入到管理后臺頁面和學員頁面,并可以正常登陸,則應用配置成功。
注意:*在完成這一步后學員考試交卷無法完成,需要部署ScoreMarker。*
部署ScoreMarker
Linux下-解壓scoreMarker到/opt/目錄。 確認config/scoremarker.properties文件配置正確。 拷貝scoremarker 執(zhí)行腳本到init.d目錄下并檢查腳本中的配置。
Windows下-解壓scoreMarker到任意目錄。 確認config/scoremarker.properties文件配置正確。 修改installService.bat中APP_HOME為scoreMarker目錄。 運行installService.bat后啟動服務ScoreMarkerService服務。
系統(tǒng)架構:管理后臺現在獨立成一個新項目,不再和第一版一樣和前臺合在一起。
引入RabbitMq,用于接受用戶提交的答題卡,通過ScoreMarker從消息隊列獲取答題卡并交卷,減小大量用戶提交導致的服務器故障幾率。
試題內容存儲格式由xml改為json
增加教師角色,現在教師用戶可以正確地使用自己的權限管理學員、試題、試卷、考試以及培訓。
優(yōu)化系統(tǒng)界面,新的界面看起來更加清爽、專業(yè)。
新增了DashBoard,管理界面看起來會更專業(yè)。
練習歷史現在專門用一張表記錄,使開發(fā)相關統(tǒng)計變得更容易。
考試和練習:考試現在分為正式考試和模擬考試兩種,正式考試需要教師或管理員審核,而模擬考試不需要審核。正式考試又分為公有和私有兩種類型,公有考試是可以申請的考試,私有考試則需要教師或管理員指定學員(這里由管理員指定也被我們認為是審核的一種方式)。
新增審核功能,現在教師創(chuàng)建的試卷、考試都需要超級管理員審核。超級管理員自己創(chuàng)建的不需要審核。同時,超級管理員和教師也可以審核學員的考試申請。
新增人工閱卷功能。包含主觀題的考試試卷,教師或超級管理員通過人工閱卷后可以確定最終分數。全部是客觀題的試卷不需要閱卷。
新增考試成績統(tǒng)計功能,可以查看特定考試下學員的分數,同時可以對分數進行排序。
新增學習記錄查詢功能,教師和管理員現在可以方便地查看學員的練習記錄、培訓記錄和考試記錄。
新增快速考試模式,通過輸入準考證號即可直接進入到對應的考試頁面。
新增繼續(xù)考試功能,現在學員在考試過程中中斷考試后,繼續(xù)進入考試后,學員的答題記錄會恢復到中斷前的狀態(tài)。
題庫管理:優(yōu)化試題修改功能,現在可以正確地修改試題的基本信息。
新增培訓功能,教師或超級管理員可以發(fā)布培訓資料(視頻和pdf文檔)。學員可以選擇自己需要參加的培訓進行學習,培訓分為視頻和pdf格式的文檔兩種。
新增虛擬班級功能,教師或管理員現在可以通過虛擬班組很方便地管理學員。
1.不能獲得數據庫連接;
'
請檢查數據庫連接字符串是否正確,同時檢查數據庫名、用戶名和密碼是否設置正確。
2.交卷失敗;
復制代碼請檢查RabbitMQ服務是否啟動。
3.學員交卷后,管理界面學員對應的狀態(tài)沒有改變;
復制代碼請檢查ScoreMarker是否啟動。同時請保證ScoreMarker能調用到Management提供的接口,這一點在ScoreMarker部署中已經說明。
4.RabbitMQ、MySql、ScoreMarker無法啟動或經常被Kill掉
復制代碼查看下日志,如果是內存不夠的原因,那就趕緊加內存吧。為了保證系統(tǒng)正常運行,內存不能低于2G。
5.bug更新日志
2016-2-15 解決試題導入報錯的bug
2016-3-15 解決考試用戶列表不能正常分頁的bug