荆 昊,张 瑞,张如意
(1.西安邮电大学 校团委,陕西 西安 710121;2.西安邮电大学 经济与管理学院,陕西 西安 710121)
大学生素质拓展网上认证系统设计与实现
荆昊1,张瑞1,张如意2
(1.西安邮电大学 校团委,陕西 西安 710121;2.西安邮电大学 经济与管理学院,陕西 西安 710121)
为实现大学生素质拓展教育管理的智能化、网络化,设计并实现了素质拓展网上认证平台,平台采用LAMP架构实现,客户端服务器端采用浏览器/服务器结构模式,保证其可靠性和可扩展性,采用AJAX异步交互模式、软件的负载均衡技术,实现系统平稳流畅的运转。测试表明,该系统可实现对学生素质拓展的信息管理。
素质拓展;LAMP;AJAX;负载均衡
大学生素质拓展训练是培养在校大学生基本素质的重要训练之一。涉及训练内容较为广泛,包括对学生的学科竞赛、学术活动、志愿者服务等各类社会实践活动的申报、审核、批复、认定等内容。实现大学生素质拓展训练的信息化、网络化即大学生素质网上管理系统,是提高管理效率主要途径[1]。目前,大学生素质拓展信息管理系统,通常是采用Java的Struts框架技术来设计[2]。利用大学生素质拓展管理系统的指标体系、指标权重以及测评标准[3],可有效地实现大学生素质拓展信息管理,但是,针对移动互联网快速应用,此类系统的安全性能、兼容性和扩展性还有待改进和提高。
本文拟设计大学生素质拓展网上认证管理系统,采用B/S浏览器/服务器架构以及LAMP技术模式,系统前端采用AJAX的异步交互模式以及服务器端的软件负载均衡技术,提高了系统的安全性、兼容性和扩展性。
1.1平台框架设计概述
B/S结构中平台客户端和后台采用浏览器/服务器结构,见图1。它由3层结构形成,客户端浏览器是用户的使用界面,极少部分的事务逻辑在前端浏览器(Browser)实现,主要事务逻辑在服务器端(Server)实现,系统数据主要存放在数据库服务器中。利用成熟的网络前端技术,以及先进的服务器端技术,实现原来需要复杂的专用软件才能实现的强大功能。该结构具有操作使用简单、维护和升级方式简单、开发成本相对较低的特点[4-5]。
图1 B/S结构
系统平台的整体分为数据访问层、业务逻辑层和表示层,以典型3层结构实现。数据访问层也称为持久层,其功能主要负责数据库服务器的数据处理。实现对数据表的Select(查询),Insert(插入),Update(更新),Delete(删除)等事务操作,并把最终的执行的结果返回给服务器。业务逻辑层处于表示层与数据访问层之间,表示层调用它,而数据访问层被它调用,它在数据交换中起到了承上启下的作用,执行业务处理逻辑以及页面存储管理功能,接收客户端的访问请求,根据请求类型调用相应的处理程序。表示层为用户提供交互界面,用来显示数据和接收用户的输入信息,但表示层并没有业务处理功能。见图2。
图2 3层体系结构
1.2系统功能设计
系统主要功能模块,如图3所示。
(1)注册会员审核的分组权限管理。指学生填写登陆用户名、学号、姓名、邮箱等信息,提交注册申请。系统赋予各院系管理者分组权限,分组以院系为单位,各院系管理者可以对相应学院的注册申请进行审核,通过分组权限管理,可以提高注册会员的审核效率。
(2)项目类型、院系、班级三级权限管理。指该系统包含项目发布的三级管理权限,一级权限为项目管理权限,由校级管理部门控制,该权限赋予管理者制定素质拓展项目类型和信息说明的权限;二级权限为学院管理权限,包括注册会员分组审核权限,以及根据素质拓展项目类型,发布具体项目内容的权限;三级权限为班级管理权限,包括依照二级权限认定的项目内容对班级成员可参与项目进行发布的权限。通过项目发布的三级权限管理,提高认证系统项目发布效率。
(3)素质拓展项目的网上申请与审批。在素质拓展项目的具体来源上,以院系、学生会、协会等学校组织机构申报活动为主,这些具体的活动项目经过网上申请与审批后,通过校级、院系、班级三级管理系统进行公布,网上申请与审批功能可以实现对素质拓展项目进行集中管理,避免漏报和重复申报。
(4)基于班级、学院、学校的三级网络认证。学生可采取线下参与活动,线上申请学分的方式申报素质拓展项目学分,该申请提交后,将由班级、学院、学校逐层认证审核,与项目发布中的由上到下不同,项目审核采取由下到上的方式,以保证项目审核的及时性与准确性。
(5)信息发布与反馈功能。认证系统平台提供公告信息发布功能及反馈功能,使得用户与平台之间可以信息互动、互通,增强了认证系统在信息收集上的能力。
(6)用户操作日志记录与管理功能。平台的系统日志能够实时记录用户的登陆情况,以及访问者的IP地址和在平台上具体操作情况。如果以后平台产生安全问题,该记录是解决问题的依据。
图3 主要功能模块
1.3后台服务器及数据库设计
(1)后台服务器设计
后台服务器采用LAMP架构,即Linux操作系统、Apache服务器、MySQL数据库、超文本预处理器(Hypertext Preprocessor,PHP)语言。它是目前Web开发领域的主流解决方案,其中 PHP脚本语言、MySQL数据库管理系统、Apache服务器都是开源软件,除了可以给企业降低成本外,还可以为企业构建强健的分布式网络系统平台。
分布式的Web系统采用LAMP 技术开发,由于单个技术的稳定性和强健性以及良好的兼容性,用LAMP开发的系统可以做到兼顾成本和系统的健壮性。所以,LAMP架构无论是从性能、质量还是价格上都是网络分布式系统实现的最佳选择。
(2)数据库结构设计
系统后台数据采用开源的MySQL,考虑到系统是基于B/S架构的多用户系统,后台数据库采用开源的MySQL数据库系统, MySQL是目前运行速度最快的SQL语言数据库,并且完全免费,可以直接节省系统的开发成本,MySQL支持多用户、多线程、多种操作系统。 MySQL的稳定性体现在了它拥有非常快速而且稳定的基于线程的内存分配系统。它还具有优异的SQL算法,相对于同级别的数据库系统有效地提高了数据的更新效率。系统的用户分为:学生用户、班级管理员、院系管理员、校级管理员、系统管理员5级用户。根据需求分析,建立以下数据字段,以满足设计的要求和系统功能模块的设立。见表1。
表1 数据字段表
2.1利用AJAX实现页面的异步交互
系统的用户体验直接影响系统的使用效果,必须保证使用中页面的提交、响应及重新加载页面的过程顺畅,操作过程中系统用户需要进行大量的提交动作,如果采用传统Web响应处理技术,用户客户端浏览器发送请求在未得到服务器相应时,客户端只能等待。这种请求模式是独占式的,它与服务器的响应时间同步。在这种模式下,客户端即使只有一小部分更新数据,浏览器的整个页面都需要重新加载。在系统的交互请求频繁时,系统会经常处于一种不连续的状态,这样导致了系统的资源大量被占用,性能也相应降低。如果采用AJAX异步交互模式,可以实现异步的页面局部数据刷新,解决传统的Web页面整体加载问题[6]。
系统实现异步交互模式步骤如下:
(1)创建一个异步请求对象-XMLHttpRequest
JavaScript中的XMLHttpRequest对象是异步请求实现的核心,首先创建XMLHttpRequest对象。
if(window.XMLHttpRequest){
针对firefox,mozillor opera safari ie7.8
xmlmyhttp = new XMLHttpRequest();
}
else if (window.ActiveXObject) {
xmlmyhttp =new ActiveXObject("Microsoft.XMLHTTP");
}
(2)创建HTTP请求,指定该请求的方法、URL地址、验证信息
创建XMLHttpRequest对象后,使用XMLHttp-Request对象中的open( )和send( )方法向服务器端发送请求。
xmlmyhttp.open("GET","AjaxServer", true);
xmlmyhttp.send(null );
(3)设置回调函数,用来对应HTTP请求的状态变化
回调函数用来响应XMLHttpRequest对象发送的HTTP 请求,该函数由XMLHttpRequest对象的onreadystatechange属性来指定:
xmlmyhttp.onreadystatechange = callback;
Callback为回调函数的名称。
(4)使用JavaScrip解析XMl,在获取异步调用的数据后实现网页局部的刷新,方法如下。
首先判断http的交互是否成功,如下:
if(xmlhttp.status == 200)
获取服务器端返回的数据,获取服务器端输出的纯文本数据,如下:
var responseText = xmlmyhttp.responseText;
当得到数据后,DOM将数据更新在相应的页面上,如下:var divNode = document.getElementById("mymessage ");
document.getElementById("mymessage ");
divNode.innerHTML = responseText;
2.2安全保护策略
网络系统的安全已经成为一个系统实施成功的因素之一,保证系统高效地运行,系统中的数据如何防止被意外破坏,是必须考虑的重要问题[7]。设计采取以下安全策略以保证系统安全稳定的运行。
(1)及时更新最新版本的服务器端软件。软件发展的过程就是不断修补自身漏洞,不断增强自身功能的过程,及时更新软件,可以提高系统安全稳定性。
(2)对系统访问IP进行过滤。只允许校内的IP用户访问,以达到降低风险的目的。由系统管理员配置IP分组过滤表,过滤模块根据IP分组中报头的源地址、目的地址、端口号等信息,对访问的IP分组进行过滤,来禁止校外的IP地址对系统的访问。
(3)对系统的数据库进行定期备份,防止系统意外崩溃而导致的信息丢失。系统后台数据库采用MySQL数据库系统,使用MySQL自带的mysqldump工具对数据进行定期备份,备份的数据以sql文件形式保存。这种备份方法的优点是能够与正在运行的MySQL自动协同工作,在运行期间可以确保备份是当时的点,它会自动将对应操作的表锁定,不允许其他用户修改。
(4)移去或锁定某些系统账号,比如sys、adm等等。
(5)完善系统的日志功能,记录每个管理员的日常登录和操作,为出现安全问题后查找原因提供线索。
2.3负载均衡的实现
Web系统在特定的场景下访问人数过多,使Web服务器的负载加重,造成系统的超负荷运转。硬件方式实现负载均衡需要投入大量的资金,考虑到实施成本问题,系统采用软件方式实现并达到相应的效果。该方案不需要用户购买专用的负载均衡设备、Web服务器集群系统,成本低且使用方便灵活。该方案参照硬件负载均衡原理,使用一台装有双网卡的服务器做为负载均衡设备,实质上通过对TCP/IP 协议数据报文的解包、再打包、转发,将系统的负载分配到不同的Web 服务器上以实现负载均衡[8-9],如图4所示。
图4 软件实现负载均衡
3.1系统实现及功能测试
系统实现了预期的设计功能,系统登录界面及主功能界面,如图5、图6所示。界面美观,经测试系统登录注册、学院项目管理、学生申请的认证管理、特殊项目的管理等模块都能稳定运行。
图5 系统登录界面
图6 功能模块界面
3.2系统兼容性测试
B/S架构具有很好的扩展性与兼容性,当需要对系统应用进行扩展升级时,只需更新服务器端的软件就可以。针对客户端,在不同的操作系统上只要使用浏览器就可以访问系统。然而,实际中系统面向的用户运行环境不一,用户对浏览器软件的使用习惯差别很大,经过对目前常用的主流浏览器软件测试后,常见的火狐浏览器、谷歌浏览器、360浏览器、QQ浏览器以及IE浏览器就能正常显示,测试结果如表2所示。
表2 兼容性测试结果
3.3系统安全测试
安全性是评测一个系统是否成功的关键指标之一,经过对系统的身份认证、访问控制、数据机密性及数据完整性的测试,系统具有很强的抗攻击性及容错性能,测试结果,如表3所示。
表3 安全性测试结果
系统使用LAMP+AJAX技术设计并实现了大学生素质拓展认证系统,保证了系统的稳定性和可扩展性。系统将学生的基本情况以及参加素质拓展项目的情况予以完整记录,实时反映学生参加各类项目的活动数据,并可动态查询学生素质拓展学分修学进度等。该系统在实际工作中提高了大学生素质拓展活动管理的信息化和网络化水平。
[1]黎会, 梁国业, 郭建雄. 大学生素质拓展管理系统研究[J/OL]. 中国教育信息化, 2015(9):51-53[2016-02-20].http://www.cnki.com.cn/Article/CJFDTotal-JYXX201509016.htm DOI:10.3969/j.issn.1673-8454.2015.05.015.
[2]方屹. 大学生素质拓展认证系统的设计与实现[D/OL].大连:大连理工大,2014:4-60[2016-02-20]. http://cdmd.cnki.com.cn/Article/CDMD-10141-1015571074.htm.
[3]赵海涛. 提升大学生就业竞争力的素质拓展体系构建研究[J/OL]. 职业时空, 2014, 10(8):111-112[2016-02-20]. http://www.cnki.com.cn/Article/CJFDTotal-XZQJ201408042.htm.DOI:10.3969/j.issn.1672-8963.2014.08.042.
[4]刘彩利. C/S和B/S混合体系结构的开发与应用[J/OL]. 电子设计工程, 2015, 23(14):26-28 [2016-02-20]. http://www.cnki.com.cn/Article/CJFDTotal-GWDZ201514008.htm. DOI:10.3969/j.issn.1674-6236.2015.14.008.
[5]ZHANG J P, ZHU X D, LIANG X. C/S and B/S MixedStyle and the Application[C/OL]// 2009. ETCS '09. First International Workshop on Education Technology and Computer Science, Wuhan:IEEE,2009:682-686 [2016-02-20]. http://ieeexplore.ieee.org/xpls/abs_all.j sp?arnumber=49 59127. DOI: 10.1109/ETCS.2009.412.
[6]李展飞, 罗竞华, 胡桂考,等. 基ASP.NET AJAX技术的在线考试系统设计与实现[J/OL]. 电脑知识与技术,2016,12(12):121-125[2016-02-20]. http://www.cnki.com.cn/Article /CJFDTotal-DNZS201612054.htm. DOI :10.14 004/j.cnki.ckt.20 16.14 17 .
[7]葛琳琳.高校学生信息服务系统渗透测试研究[J/OL].电子设计工程,2016,24(7):154-156[2016-05-15]. http://www.cnki.com.cn/Article/CJFDTotal-GWDZ201607047.htm. DOI:10.3969/j.issn.1674-6236.2016.07.047.
[8]WU J.Distributed System Design[M].北京:机械工业出版社.2001:80-125.
[9]嵇小飞. Web服务器集群系统的自适应负载均衡调度[J/OL]. 中小企业管理与科技(中旬刊), 2016(6):153-154[2016-05-15]. http://www.cnki.com.cn/Article/CJFDTotal-Z QGZ201606093. htm.
[责任编辑:汪湘]
Design and implementation of the online authentication system for college students’ quality development
JING Hao1,ZHANG Rui1,ZHANG Ruyi2
(1. Youth League, Xi’an University of Posts and Telecommunications, Xi’an 710121,China;2. School of Economics and Management, Xi’an University of Posts and Telecommunications, Xi’an 710121, China)
A quality development of online authentication system is designed and implemented in order to achieve the network office of students’ quality development education management. The system uses (B/S) browser/server structure and LAMP technology to ensure its reliability and scalability. The system also uses AJAX asynchronous interactive mode and software load balancing technology to achieve its smooth operation. Practice shows that the system provides a feasible solution for the students’ quality development.
quality development, LAMP, AJAX, load balancing
10.13682/j.issn.2095-6533.2016.05.013
2016-07-03
2015年度全国学校共青团研究立项课题(2015LX334);2014年西安邮电大学思想政治教育研究项目(SZ2014-07)
荆昊(1978—),男,硕士,讲师,从事思想政治教育研究。E-mail:31916151@qq.com
张瑞(1981—),女,硕士,讲师,从事计算机应用研究。E-mail:38522423@qq.com
TP302
A
2095-6533(2016)05-0064-05