评分鉴定综合考试系统的实现

2018-12-25 08:08鲍志林上海育景系统集成有限公司
数码世界 2018年4期
关键词:监听队列实例

鲍志林 上海育景系统集成有限公司

引言:随着当前国内经济和电子商务的快速发展,吸引了大批的人才进入电子商务行业。而在大多数人的职业规划过程中都会选择考取一些专业证书来提升自身,电子商务师作为一个集计算机、网络技术、商业专业知识的高复合型人才,是大多数人选择的一个主要方向。而众多的考试人员的试卷的批改等会给阅卷老师造成比较大的工作量,因此本文设计开发了一套上海市职业鉴定中心电子商务平台来对上海市电子商务师(四级、三级、二级)职业技能鉴定考试系统,它既可以符合行业要求行业应用要求又能满足自动化考试评分,通过大数据来完成除了客观题(单选、多选、判断)以外的,大部分理论题的自动化判分。

1 电子商务软件ECSTORE

电子商务师的鉴定内容必须和行业一致,也就是说必须采用行业内认可度最高的电子商务软件ECSTORE作为鉴定平台。ECSTORE电子商务系统是一套应用PHP程序语言开发、MySql数据库架构开发的跨平台网上开发系统。ECSTORE电子商务软件是基于SOA架构、模块化的设计理念,实现API接口无缝对接其它的插件,通过设计各业务功能模块整合为一个完整的电子商务软件,从活动的策划、会员的扩张、商品的买卖、订单的生成、收货、发货、评价等一系列的流程。该软件能够成功的将电子商务中的各个阶段都进行了较为完善的应用和管理,在实际的应用中进行了广泛的推广和管理,并得到了广大用户的支持和好评。

1.1 模块功能

ECSTORE电子商务软件引入APP应用程序模块功能:使得客户安装后可以让用户根据自己的需求来维护、删除该软件。

ECSTORE电子商务软件引入搜索引擎模块功能:根据电子商务软件的页面介绍和点击率,添加了nofollow、noindex等多种SEO标签,从而尽可能的降低同一个分类内容的多次重复点击,提高SEO的效率。

ECSTORE电子商务软件将数据进行收集、并进行相关的分析管理,以此来对用户的来源管理,以此来促进SEM的发展,从而有效的来搜索软件的投入比。

1.2 ECSTORE特点

1.2.1 开放性

Ecstore软件继承了ShopEx产品先进的技术,结合ShopEx产品的行业经验,应用模块化的开发理念,实现API接口对接其它软件,从而使得Ecstore软件有一个非常稳定、安全的SOA架构,公司能够快速的搭建一个在线平台,进而实现多通道的销售设计方案。

1.2.2 高拓展性

Ecstore软件能够提供一个快速功能应用、促销活动的推广、VIP服务等功能的设计方案,使得发展成为一个多通道的销售、跨平台的电子商务软件,能够更好的提供商务服务。

Ecstore软件可以通过在系统中实现APP自带插件的需求,和其它平台实现无缝数据对接功能,帮助公司在一定的平台上创建电子商务运营平台,实现公司的线上、线下业务的整合,并高效的整合品牌、客户、营销、管理等各种资源。

1.2.3 安全性

Ecstore采用Object-ResourceMap设计,单独的认证授权机制,并对管理员、公司、用户等各种角色都有访问的安全控制,并对Ecstore软件进行多种加密方式的处理,提供高级别、全方位的数据保密机制,从而保障用户登陆、支付、资金、管理等多方面的安全。

应用多方面的虚拟主机的服务器分布式部署方式,提高那个增值运维服务从而实现软件的安全扫描、各功能性能的优化配置、广告的营销推广活动引入的大量客流服务,为电商公司交易提供安全保障。

1.2.4 高性能

Ecstore软件应用SOA架构和多级缓存技术,并通过HTML静态技术,以此来降低服务器的负担,进一步提高前端的响应速度和系统负载均衡的能力。且当有大量的用户同时访问Ecstore软件时,系统也能流畅的有序运行,不会出现服务器的死机或当掉。

2 自动化考核和评分的综合考试系统GTS

上海市职业鉴定中心电子商务平台将行业内认可度最高的电子商务软件ECSTORE作为鉴定平台,并在此基础上构建出一套能够自动化考核和评分的综合考试系统GTS,且为了后期平台升级方便,两套系统的设计完全独立,互相不受影响。在基于电子商务软件ECSTORE的基础上,应用数据库监听的方式来实现学生答题时根据ECSTORE的数据变动侦听到学生的答题情况,然后就可以根据标准答案进行自动化判分,自动化考核和评分的综合考试系统GTS。

综合考试系统在实现监听过程中,通过mysql监听器来实现ECSTORE软件在学生答题过程中的数据库变化,且该监听器只存在综合考试系统端的数据库服务器端中,设置也是在数据库服务端中,因此无论ECSTORE怎么变化都不会对该系统产生影响。

2.1 mysql数据库监听器Listener功能

mysql数据库中的监听器Listener是一个关键的数据库服务器组件,在数据库体系结构中由十分重要的作用,其主要具有以下功能:

1、监听客户端请求。Listener监听器是在mysql服务器上进行运行的,关联了多个mysql实例,其是一个由特定功能的进程process,因此可以在Windows的服务进程中或Linux的运行进程中都能查找到相对应的进程号。在Windows上的进程号为TNSLSNR,Linux/Unix平台上的进程号为TNSLSNR。监听器的默认端口为1521,所有的服务请求都是通过该端口进行传输,只要通过该端口的进程则都会进行数据的监听,从而实现各个端口的监听功能。

2、分配Server Process请求方。监听器Listener只对请求进行监听,不对数据进行修改,即数据只会被监听,而不会被修改。当监听到由请求已经发出后会将其转发给mysql Server Process然后由服务进程来对数据进行其它方式的处理。在mysql的工作服务状态中,请求方是不被允许直接的对数据库进行实例和数据的操作,必须通过一个服务进程号代理操作。当监听器接收请求后请求操作系统发配Server Process和请求方相连。

3、注册实例服务。监听器Listener建立实例和请求方进程的内在联系过程都是通过注册来实现的,只有注册过的实例才能被监听,否则其可能会被当作非法的进程被处理掉。注册的过程为实例通知Listener,请求方的数据库实例名称inttance_name和服务名service_names。Listener注册了这个信息后,将根据注册信息寻找到精确的实例名称,进而实现服务数据的寻找。

4、错误转移Failover。Failover是RAC容错的重要因素,主要当数据库实例出现错误无法正常工作的情况下,会自动的把请求传输到其它可用实例上去处理,从而提高了程序在使用过程中的使用率,Listener监听器的主要功能就是处理将请求转发到其它空闲实例上的过程,从而降低数据库出现错误的处理时间,提高系统的效率。

5、负载均衡衡量。在RAC系统架构中,mysql会实现负载均衡。即当某一个用户请求服务时,mysql会判断当前的RAC集群中所有实例的用户请求负载情况,然后将其分配给当前用户请求量较少的实例来处理,从而实现mysql的负载均衡。

2.2 数据库监听的配置

在评分鉴定综合考试系统中,需要mysql实时监听ECSTORE中数据表是否改变,当监测到考生在答题过程中提交了答案,则数据库会监听到数据库中该考生条目的数据变动,接下来提取该数据信息和标准答案进行自动化的评分。因此需要在数据的处理过程中,创立一个定时器和轮询表实时的监测数据库的动态变化。鉴于mysql数据库可执行简单的php代码能力,因此本文的基本思路为:通过创建mysql数据库触发器来监听ECSTORE软件,当考生用户答题变化时会引发数据库中表信息的变化,触发器监听到数据改变后,调用mysql数据库启动php来存储,并通过相关的接口来实现考生答题信息的自动化评分。具体的过程如下:

2.2.1 创建mysql高级消息队列AQ

①mysql消息队列中传递的消息的格式进行用户自定义,例如对象、XMLTYPE、ANYDATA。本文中队列消息格式为对象类型。

②创建对列表来自定义对象消息进行存储,保存进入队列的消息到数据表中,出队列的消息则自动进行删除。本文中采用DBMS_AQADM包创建数据表,因此只要修改表名,就能够设置相对应的属性。

③创建队列并启动队列

通过上述的操作根据需求分别建立有效负荷、对列表、队列,并可通过系统查看创建了哪些与之相关的数据对象。每个队列都会自动生成一系列的对象,这些对象都是会在后续的调用中进行应用的,但若在创建系统的第二个队列时,若AQ没有办法从队列中收到消息,则会将该消息记录在异常队列中,及第二个队列中。

④队列的停止和删除

当队列已经不需要了,即该考生下的所有数据都已经处理完毕了,则需要将队列进行停止和删除,以此来提高系统的内存空间,提高系统的运行效率。

⑤入列和出列操作

当监测到的考生提交的答案数据改变了,则将该消息进行入列操作;当已经调用处理程序了,则表示该考生答案已经进行了自动评分,则需将该消息进行出列管理。消息的入列和出列都可以直接用SQL语句进行查询,通过这种方式可以实现考生答案的自动化评分,以及信息管理。

2.2.2 php使用JMS监听并处理mysql AQ队列

当mysql AQ队列消息队列进行操作后,可调用php中的JMS来进行消息的处理。首先将参数信息配置好,并将其写入到Spring中;将mysql数据类型的有效负荷数据转换为php的通用数据类型。

3 总结

本文采用数据库监听的技术手段实时的监听ECSTORE软件中的考生答题情况,开发了一套评分鉴定综合考试系统GTS。应用数据库监听的方式来实时的监控学生答题的情况,并对返回的数据进行自动的客观题、主观题的评卷。数据库监听的方式采用的php编程的方式,采用的是队列数据结构来实现考生数据答案的变动。

该系统降低了系统之间的耦合性,提高了阅卷人的工作效益,降低了其工作量。上海市职业鉴定中心电子商务项目鉴定平台自上线运行至今,已成功应用在数千场的电子商务职业鉴定考核中,并收到了考场督导、考评员等鉴定工作人员的一致好评,并且本系统也用于了上海市星光计划电子商务科目的比赛。

[1]杨磊,毕红军.基于旁路监听的数据库安全审计系统[J].计算机工程与应用,2015,51(08):138-142.

[2]赵海雁,陈立潮,叶树华.基于Windows的网络监听技术在局域网中的实现[J].计算机工程,2004(22):117-118+124.

猜你喜欢
监听队列实例
英国风真无线监听耳机新贵 Cambridge Audio(剑桥)Melomania Touch
队列队形体育教案
千元监听风格Hi-Fi箱新选择 Summer audio A-401
队列里的小秘密
基于多队列切换的SDN拥塞控制*
在队列里
完形填空Ⅱ
完形填空Ⅰ
监听“有”道 ——杰夫(美国)