ExamStack2考试系统部署方案

更新时间:2024-02-01 09:36:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

ExamStack2

考试系统部署方案

修订控制页

次序 1 版本 V1.0 修订人 jakee 修订日期 2016-02-26 修订摘要 初稿发布 Jakee.cc

1 概述 1.1 简介

ExamStack是国内首款一款基于JAVA与MYSQL开发的网络考试系统。它可以稳定、顺畅的运行在

Windows与Linux平台上。您可以通过它快捷方便的创建试题和题库,发布试卷,组织考试,系统自动批改。高度的可配置性和灵活性使得它可以被应用于很多领域。

软件采用GPL协议,完全开放且免费,并且有固定的开发团队提供技术支持 。

在ExamStack考试系统第一版的基础上,我们进行了大量代码重构,同时也对数据模型做了部分调

整。为了减小学员考试交卷时大量并发带来的系统风险,我们尝试采用成熟的消息队列框架RabbitMQ来解决这一问题,因此我们的数据库以及系统的架构同第一版相比,发生了不小的变化。

1.2 部署要点

?Management.war和Portal.war需要部署在同一个目录下。

?Examstack增加了培训功能,因为需要保存培训材料,所以请留出足够的磁盘空间(以实际需要为准)。 ?要保证RabbitMQ服务状态为运行状态。

?要保证ScoreMarker状态为运行状态,同时ScoreMarker调用服务地址要配置正确。

2 应用服务器安装配置 2.1 服务器安装部署 2.1.1 服务器配置

?操作系统:Linux、Windows ?内存:最低2G,推荐8G

2.1.2 java运行环境 ?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组件 ? Erlang安装

RabbitMQ是基于Erlang的,所以首先必须配置Erlang环境.

从Erlang的官网 http://www.erlang.org/download.html 下载最新的erlang安装包,Linux和MacOSX下载的版本

或直接在 http://www.erlang-solutions.com/section/132/download-erlang-otp下载的对应版本的安装包,省的自己配置和安装了

然后解压下载的gz包 tar zxcf *.tar.gz 或rpm包(esl-erlang_18.2-1~centos~6_amd64.rpm) 依赖包检测:

rpm -q make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel 1) rpm包 (centos/redhat)

yum install esl-erlang_18.2-1~centos~6_amd64.rpm

2) Source .tar.gz

wget http://erlang.org/download/otp_src_18.2.1.tar.gz tar -zxf otp_src_18.2.1.tar.gz cd otp_src_18.2.1 ./configure make

sudo make install

最好不要用 --prefix 指定 erlang 安装目录,默认安装到 /usr/lib/erlang,改了安装 rabbitmq 就不方便。

? Rabbitmq安装 1)rpm包

#wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.0/rabbitmq-server-3.6.0-1.noarch.rpm #rpm -ivh rabbitmq-server-3.6.0-1.noarch.rpm --force --nodeps 或yum install rabbitmq-server-3.6.0-1.noarch.rpm PS:/usr/lib/rabbitmq

2)Binary .tar.xz #tar -Jxvf Binary .tar.xz #mkdir /usr/lib/rabbitmq

#ln -s /u01/rabbitmq_server rabbitmq //建立软链接

#cd rabbitmq/sbin,./rabbitmq-server -detached //可以实现后台启动 修改/etc/profile,添加环境变量 #set rabbitmq environment

export PATH=$PATH:/opt/rabbitmq/sbin source profile使得文件生效

cd /opt/rabbitmq/sbin,./rabbitmqctl stop关闭rabbitmq

3)Source .tar.xz

#tar -Jxvf Source .tar.xz-C /opt #cd /opt/rabbitmq_server

#make TARGET_DIR=/usr/local SBIN_DIR=/usr/local/sbin MAN_DIR=/usr/local/man #make install

? 启动rabbitmq,并验证启动情况

#rabbitmq-server --detached &ps aux |grep rabbitmq Starting broker... completed with 0 plugins.

? 检查端口5672是否打开

#/sbin/iptables -I INPUT -p tcp --dport 5672 -j ACCEPT #/etc/rc.d/init.d/iptables save #/etc/init.d/iptables restart #/etc/init.d/iptables status

? 注册服务并配置开机启动 #chkconfig rabbitmq-server on #service rabbitmq-server start

? 启用维护插件(可选):

[root@localhost ~]# rabbitmq-plugins enable rabbitmq_management The following plugins have been enabled: mochiweb webmachine

rabbitmq_web_dispatch amqp_client

rabbitmq_management_agent rabbitmq_management

Plugin configuration has changed. Restart RabbitMQ for changes to take effect. ? 其他

一般情况下,RabbitMQ的默认配置就足够了。如果希望特殊设置的话,有两个途径: 一个是环境变量的配置文件 rabbitmq-env.conf ; 一个是配置信息的配置文件 rabbitmq.config;

注意,这两个文件默认是没有的,如果需要必须自己创建。 rabbitmq-env.conf

这个文件的位置是确定和不能改变的,位于:/etc/rabbitmq目录下(这个目录需要自己创建)。 文件的内容包括了RabbitMQ的一些环境变量,常用的有: #RABBITMQ_NODE_PORT= //端口号 #HOSTNAME=

RABBITMQ_NODENAME=mq

RABBITMQ_CONFIG_FILE= //配置文件的路径

RABBITMQ_MNESIA_BASE=/rabbitmq/data //需要使用的MNESIA数据库的路径 RABBITMQ_LOG_BASE=/rabbitmq/log //log的路径 RABBITMQ_PLUGINS_DIR=/rabbitmq/plugins //插件的路径

具体的列表见:http://www.rabbitmq.com/configure.html#define-environment-variables

2.2.3 应用软件

? 部署Portal和Management

1)将Management.war和Portal.war放到Tomcat应用程序目录(webapps)下。

2)启动Tomcat,webapps目录下会生成两个文件夹(Management和Portal)。

3)分别进入到Management/WEB-INF/Spring和Portal/WEB-INF/Spring下修改root-context.xml文件,将数据库地址、用户名和密码修改成正确的内容。修改完成后重启tomcat服务器。 需要修改的内容如下:

value=\*.*.*.*:3306/examstack?useUnicode=true&characterEncoding=UTF-8\

4)访问http://localhost:8080/Management和http://localhost:8080/Portal可以进入到管理后台页面和学员页面,并可以正常登陆,则应用配置成功。

注意:在完成这一步后学员考试交卷无法完成,需要部署ScoreMarker。

? 部署ScoreMarker

1)Linux 解压scoreMarker到/opt/目录。 确认config/scoremarker.properties文件配置正确。 修改chmod 777 jsvc 文件权限

修改scoremarker 文件JAVA_HOME路径并拷贝scoremarker 执行脚本到/etc/init.d目录下并检查脚本中的配置。

执行:/etc/rc.d/init.d/scoremarke

2)Windows 解压scoreMarker到任意目录。 确认config/scoremarker.properties文件配置正确。 修改installService.bat中APP_HOME为scoreMarker目录。 运行installService.bat后启动服务ScoreMarkerService服务。

感谢梦醉生将自己安装RabbitMQ的经验贡献出来:

1、下载esl-erlang软件,地址是:https://www.erlang-solutions.com/resources/download.html

双击安装erlang;配置环境变量ERLANG_HOME=E:\\jsp\\erlang\\erl7.2,并在系统变量path中添加E:\\jsp\\erlang\\erl7.2\\bin;(此值根据安装路径写)。在命令提示符下输入”erl”可得如下结果: C:\\Users\\adapp>erl

Eshell V18.2.3 (abort with ^G) 说明安装成功

2、下载RabbitMQ并安装。下载地址是:http://www.rabbitmq.com/download.html

配置环境变量RABBITMQ_SERVER=E:\\jsp\\RabbitMQ Server\\rabbitmq_server-3.6.0(此值根据安装路径写)

找到环境变量中的path变量:

双击path,在其后面增加:E:\\jsp\\RabbitMQ Server\\rabbitmq_server-3.6.0\\sbin (此值根据安装路径写),然后确定即可

打开CMD,在DOS下,进入E:\\jsp\\RabbitMQ Server\\rabbitmq_server-3.6.0\\sbin,运行rabbitmq-service,按提示输入rabbitmq-service Install后回车,把RabbitMQ安装成服务即可。

在控制面板中,打开服务管理窗口,把RabbitMQ服务和ScoreMarkerService服务启动即可。

本文来源:https://www.bwwdw.com/article/uqdw.html

Top