CN116680052A - 一种在线抽题考试管理控制方法、装置、系统及存储介质 - Google Patents
一种在线抽题考试管理控制方法、装置、系统及存储介质 Download PDFInfo
- Publication number
- CN116680052A CN116680052A CN202310656303.8A CN202310656303A CN116680052A CN 116680052 A CN116680052 A CN 116680052A CN 202310656303 A CN202310656303 A CN 202310656303A CN 116680052 A CN116680052 A CN 116680052A
- Authority
- CN
- China
- Prior art keywords
- examination
- examinee
- information
- question
- cache
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 89
- 238000003860 storage Methods 0.000 title claims abstract description 63
- 238000012360 testing method Methods 0.000 claims abstract description 108
- 238000007726 management method Methods 0.000 claims description 58
- 230000008569 process Effects 0.000 claims description 24
- 238000012384 transportation and delivery Methods 0.000 claims description 17
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000005096 rolling process Methods 0.000 claims description 6
- 238000003780 insertion Methods 0.000 claims description 3
- 230000037431 insertion Effects 0.000 claims description 3
- 238000012216 screening Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 abstract description 7
- 238000005457 optimization Methods 0.000 abstract description 6
- 238000012797 qualification Methods 0.000 abstract description 5
- 238000005516 engineering process Methods 0.000 abstract description 3
- 230000003139 buffering effect Effects 0.000 abstract 1
- 238000000605 extraction Methods 0.000 description 10
- 230000007246 mechanism Effects 0.000 description 10
- 230000008901 benefit Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000001360 synchronised effect Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 238000013523 data management Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002688 persistence Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/20—Education
- G06Q50/205—Education administration or guidance
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Strategic Management (AREA)
- General Engineering & Computer Science (AREA)
- Educational Technology (AREA)
- Marketing (AREA)
- General Health & Medical Sciences (AREA)
- Educational Administration (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Tourism & Hospitality (AREA)
- Economics (AREA)
- General Business, Economics & Management (AREA)
- Medical Informatics (AREA)
- Primary Health Care (AREA)
- Human Resources & Organizations (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Finance (AREA)
- Technology Law (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种在线抽题考试管理控制方法、装置、系统及存储介质,涉及金融科技和在线考试技术领域。所述在线抽题考试管理控制方法包括:服务端获取抽题配置参数并生成与每个考生ID对应的试卷;在异步线程池中执行将考试基本信息及题目信息缓存到第一缓存;并将题目分值信息和正确答案信息存入第二缓存;执行开始考试流程,从第一缓存中获取与考试基本信息和所述题目信息。本发明实现了针对于在线抽题考试从推送到考试到提交的优化,极大减少了请求数据库的频率,同时解耦各个加工逻辑,减少用户对返回结果的依赖,提升了请求效率和体验,解决了金融领域人员在资质认证考试场景下并发量大问题,为在线考试的实施带来方便。
Description
技术领域
本发明涉及金融科技和在线考试技术领域,更具体地说,涉及一种在线抽题考试管理控制方法、装置、系统及存储介质。
背景技术
在线考试是一种通过网络进行的测试方式,它可以在任何地方和任何时间进行。通常,考生需要登录到一个在线平台或应用程序中,然后回答一系列由教师或教育机构提供的问题。在线考试也可以采用自动化评分系统,在考试完成后立即为学生提供成绩或反馈。在线考试的优点包括灵活性、便捷性和节省时间成本等。
目前,在金融领域的资质管理抽题考试的管控方法为:人工维护题库后,配置考试题型、题目数量、分值、考试时长、考试次数和通过成绩等。考生在app端进入考试时,根据配置随机抽取题目进行考试。每道题目切换时,触发后台保存,最终交卷时,后台计算之前暂存的选项,和答案进行比较算分。
这种在线考试的管控方法主要存在以下问题:1、考生进入考试时,需要执行比较复杂的sql来进行随机抽题,大约需要等待1-2秒,并且当并发量较大时,数据库会有比较大的压力;2、每道题目的切换都要调用暂存接口,当用户手机网络不佳的情况下,因为在等待接口返回,会有明显的卡顿感。并且当大量用户同时考试时,暂存接口调用频率很高,数据库频繁更新占用IO;3、考试交卷在数据库算分,需要更新考试成绩、考试是否通过、操作记录等表,当并发量较高时,对数据库有压力;4、当考试设置时长并且超过时间后台自动交卷的场景,大量用户跳转到错题界面频繁查询数据库错题和正确答案,性能不佳;5、大量功能接口的计算依赖数据库的sql计算,如果想要扩展资源支持更多人同时在线考试,光扩展服务器资源不够,还需要扩展数据库资源,而数据库资源一般情况下扩展不方便;6、考试设置时长并且超过时间后台自动交卷的场景,大量用户跳转到错题界面频繁。
总之,现有的在线考试,尤其是金融领域线上考试的管控方法在抽题、开始考试、题目答案暂存、结束考试、交卷、算分生成成绩等相关信息时,受制于网络环境、系统硬件等因素影响,在反复读取、反复生成,或者多节点同时同步或读取时,其运算和执行效率低下,且造成系统资源的大量占用和浪费,为在线考试的实施带来巨大不便。
发明内容
有鉴于此,针对于上述技术问题,本发明提供一种应用于金融科技领域,或者金融科技相关的技术领域的在线抽题考试管理控制方法,包括:
服务端获取抽题配置参数,并根据所述抽题配置参数生成与每个考生ID对应的试卷;
所述服务端在异步线程池中执行将所述抽题配置参数中的考试基本信息,以及所述试卷的题目信息缓存到数据库中的第一缓存;并且,将所述试卷的题目信息对应的题目分值信息和正确答案信息存入所述数据库中的第二缓存;
在考生端登录考生ID后,执行开始考试流程,所述考生端从所述第一缓存中获取与所述考生ID对应的所述考试基本信息和所述题目信息;
优选地,在所述第一缓存和所述第二缓存中存储的信息采用string结构。
优选地,所述在考生端登录考生ID后,还包括:
更新所述考生ID对应的考试数据表;其中,所述考试数据表中包括插入操作记录、考生ID对应的考试次数、考试开始时间和考试结束时间;
优选地,所述更新所述考生ID对应的考试数据表在所述异步线程池中执行。
优选地,所述在考生端登录考生ID后,执行开始考试流程,所述考生端从所述第一缓存中获取与所述考生ID对应的所述考试基本信息和所述题目信息之后,还包括:
所述考生端接收题目切换指令;
根据所述题目切换指令判断考生答案信息与前一次存储的考生答案信息相比是否不同;
若所述考生答案信息与前一次存储的考生答案信息相比不同,则调用暂存接口保存所述考生答案信息,并根据所述切换指令切换题目。
优选地,所述调用暂存接口保存所述考生答案信息,包括:
判断所述考生端的当前网络环境速度是否低于预设低速阈值;
若所述考生端的当前网络环境速度低于预设低速阈值,则通过前端异步执行所述调用暂存接口保存所述考生答案信息。
优选地,所述调用暂存接口保存所述考生答案信息,还包括:
通过所述暂存接口,将所述考生答案信息保存至第三缓存;
优选地,在所述第三缓存中,所述考生答案信息的保存结构采用哈希结构。
优选地,所述通过所述暂存接口,将所述考生答案信息保存至第三缓存之后,还包括:
接收所述考生端的所述题目信息对应的同步请求信息,并获取所述同步请求信息中的请求时间;
判断所述请求时间是否晚于与所述数据库中的所述题目信息对应的数据的更新时间;
若所述请求时间晚于与所述数据库中的所述题目信息对应的数据的更新时间,则根据所述同步请求信息将所述第三缓存中的所述考生答案信息同步至所述数据库。
优选地,所述调用暂存接口保存所述考生答案信息中,所述通过所述暂存接口,将所述考生答案信息保存至第三缓存之后,还包括:
为保存至所述第三缓存内的所述考生答案信息对应的题目建立题目ID;
在将所述考生答案信息暂存至所述第三缓存内时,将所述题目ID通过所述暂存接口存入第六缓存中,并且,在将所述考生答案信息异步更新至所述数据库后,删除所述第六缓存中的所述题目ID;
在所述考生端接收到所述考生ID提交的或者到达考试结束时间自动生成的交卷指令时,判断当前考试的所述第六缓存是否为空或者所述第六缓存不存在;
若所述第六缓存为空或者所述第六缓存不存在,则执行交卷流程。
优选地,所述在线抽题考试管理控制方法,还包括:
所述考生端接收所述考生ID提交的或者到达考试结束时间自动生成的交卷指令;根据所述交卷指令,执行交卷流程;
将所述第三缓存中的考生答案信息与所述第二缓存中的正确答案信息进行比对;
筛选其中比对答案一致的得分题目,和比对答案不一致的扣分题目;
根据所述题目分值信息和所述得分题目计算生成考试结果信息,存入第四缓存;并将所述扣分题目的列表,存入第五缓存;
将所述第四缓存和所述第五缓存中的数据,通过后台异步执行同步至所述数据库,并更新考试日志和结果推送。
优选地,所述在线抽题考试管理控制方法还包括:
若所述考生ID对应的当前考试进入到所述开始考试流程,或交卷流程,则在所述开始考试流程或所述交卷流程开始时设置线程锁,并且,在所述开始考试流程或所述交卷流程结束时,对所述线程锁解锁。
优选地,所述在考生端登录考生ID后,执行开始考试流程之前,还包括:
所述服务端实时获取考试题库的题库更新信息;
基于所述题库更新信息,清空缓存,并返回所述服务端获取抽题配置参数,并根据所述抽题配置参数生成与每个考生ID对应的试卷。
此外,为解决上述问题,本发明还提供一种在线抽题考试管理控制装置,包括:
抽题模块,用于服务端获取抽题配置参数,并根据所述抽题配置参数生成与每个考生ID对应的试卷;
缓存模块,用于所述服务端在异步线程池中执行将所述抽题配置参数中的考试基本信息,以及所述试卷的题目信息缓存到数据库中的第一缓存;并且,将所述试卷的题目信息对应的题目分值信息和正确答案信息存入所述数据库中的第二缓存;
考试模块,用于在考生端登录考生ID后,执行开始考试流程,所述考生端从所述第一缓存中获取与所述考生ID对应的所述考试基本信息和所述题目信息。
此外,为解决上述问题,本发明还提供一种在线抽题考试管理控制系统,包括存储器以及处理器,所述存储器中存储有在线抽题考试管理控制程序,所述处理器运行所述在线抽题考试管理控制程序以使所述在线抽题考试管理控制系统执行如上述所述的在线抽题考试管理控制方法。
此外,为解决上述问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有在线抽题考试管理控制程序,所述在线抽题考试管理控制程序被处理器执行时实现如上述所述的在线抽题考试管理控制方法。
本发明提供了一种在线抽题考试管理控制方法、装置、系统及存储介质,其中,所述方法包括:服务端获取抽题配置参数,并根据所述抽题配置参数生成与每个考生ID对应的试卷;所述服务端在异步线程池中执行将所述抽题配置参数中的考试基本信息,以及所述试卷的题目信息缓存到数据库中的第一缓存;并且,将所述试卷的题目信息对应的题目分值信息和正确答案信息存入所述数据库中的第二缓存;在考生端登录考生ID后,执行开始考试流程,所述考生端从所述第一缓存中获取与所述考生ID对应的所述考试基本信息和所述题目信息。本发明实现了针对于在线抽题考试从推送到考试到提交的优化,极大减少了请求数据库的频率,同时解耦各个加工逻辑,减少用户对返回结果的依赖,提升了请求效率和体验,解决了金融领域人员在资质认证考试场景下并发量大问题,为在线考试的实施带来方便。
附图说明
图1为本发明在线抽题考试管理控制方法实施例涉及的硬件运行环境的结构示意图;
图2为本发明在线抽题考试管理控制方法第1实施例的流程示意图;
图3为本发明在线抽题考试管理控制方法第1实施例中所述步骤S300在考生端登录考生ID后的补充步骤的流程示意图;
图4为本发明在线抽题考试管理控制方法第2实施例中所述步骤S300后针对题目切换的补充步骤的流程示意图;
图5为本发明在线抽题考试管理控制方法第2实施例中步骤S700细化的流程示意图;
图6为本发明在线抽题考试管理控制方法第2实施例中步骤S730之后配置乐观锁机制的补充步骤的流程示意图;
图7为本发明在线抽题考试管理控制方法第2实施例的步骤S730之后针对所述题目ID存入第六缓存中的补充步骤的流程示意图;
图8为本发明在线抽题考试管理控制方法第3实施例的流程示意图;
图9为本发明在线抽题考试管理控制方法第4实施例步骤S300之前补充步骤的流程示意图;
图10为本发明在线抽题考试管理控制装置的模块连接示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
下面详细描述本发明的实施例,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,是本发明实施例涉及的终端的硬件运行环境的结构示意图。
本发明实施例在线抽题考试管理控制系统,可以为PC,也可以是智能手机、平板电脑或者便携计算机等可移动式终端设备等。该在线抽题考试管理控制系统中可以包括:处理器1001、例如CPU,网络接口1004、用户接口1003、存储器1005和通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏、输入单元比如键盘、遥控器,可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器,例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。可选地,在线抽题考试管理控制系统还可以包括RF(RadioFrequency,射频)电路、音频电路、WiFi模块等等。此外,该在线抽题考试管理控制系统还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
本领域技术人员可以理解,图1中示出的在线抽题考试管理控制系统并不构成对其的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。如图1所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、数据接口控制程序、网络连接程序以及在线抽题考试管理控制程序。
总之,本发明实现了针对于在线抽题考试从推送到考试到提交的优化,极大减少了请求数据库的频率,同时解耦各个加工逻辑,减少用户对返回结果的依赖,提升了请求效率和体验。
实施例1:
参照图2,本发明第1实施例提供一种在线抽题考试管理控制方法,包括:
步骤S100,服务端获取抽题配置参数,并根据所述抽题配置参数生成与每个考生ID对应的试卷;
本实施例中所提供的在线抽题考试管理控制方法,可应用于服务端,以及通过网络连接的考生端。其中,服务端可以设有管理平台,管理员通过管理平台进行题库、抽题、存储、网络连接等等功能的设置。
上述,抽题配置参数,为管理员在服务端的管理平台上设置和保存并推送的参数,其中,可以包括但不限于:在线考试内的,每个考生所对应的题库难易程度级别、题库类型、题目类型、题目编号、题目数量、具体题目、考试时间、考试条件、环境要求、防作弊机制等等。
管理员在管理平台上设置完成抽题配置参数后,服务端获取到该抽题配置参数,即可根据该抽题配置参数,生成当前在线考试的每个考生的考生ID所对应的试卷。
步骤S200,所述服务端在异步线程池中执行将所述抽题配置参数中的考试基本信息,以及所述试卷的题目信息缓存到数据库中的第一缓存;并且,将所述试卷的题目信息对应的题目分值信息和正确答案信息存入所述数据库中的第二缓存;
上述,抽题配置参数中包括考试基本信息和试卷的题目信息。服务端根据考试基本信息和试卷的题目信息,自动给考生按照抽题配置提前生成试卷。并且,将考试基本信息和试卷的题目信息缓存到数据库中。
上述,管理员在配置完抽题配置参数后,服务端的管理平台会根据抽题配置参数,提前生成试卷,并将考试基本信息和题目信息缓存到数据库中。这样做的优点是:减少进入考试抽题压力,改为推送考试的时候,提前抽题,可以方便快速地获取考试信息和试卷内容,同时也可以提高系统的性能和响应速度。
上述,本实施例中,采用Redis数据库,Redis数据库是一种内存键值对数据库,具有很高的读写速度和可扩展性,支持多种数据类型,如字符串、哈希表、列表、集合、有序集合等,可以满足不同场景下的数据管理需求。在此场景下,采用Redis作为缓存数据库的优点主要包括以下几个方面:
(1)快速:Redis基于内存操作,读写速度非常快,适合处理高并发场景。
(2)可扩展性:Redis支持集群模式,可以方便地扩容和分布式部署,保证了系统的可靠性和稳定性。
(3)数据结构丰富:Redis支持多种数据类型,可以灵活地存储不同类型的数据,方便了数据的管理和操作。
(4)持久化机制:Redis支持RDB和AOF两种持久化机制,可以将内存中的数据持久化到磁盘上,保证了数据的安全性和可靠性。
除了Redis之外,还有一些同类的数据库可以用来代替Redis,如Memcached、Couchbase等。不过,这些数据库与Redis相比在某些方面可能存在差异,需要根据具体在线考试场景进行选择。
上述,抽题配置参数中的考试基本信息和题目信息都存入第一缓存Cache1;将所述试卷的题目信息对应的题目分值信息和正确答案信息存入第二缓存Cache2中。其中,Cache1可以用于考生根据考生ID进入对应的考试,暂存重新进入考试的查询;而Cache2可以用于交卷算分时题目比对和计算,前端不可获得,防止作弊。
此外,提前抽题的功能的执行,是在异步线程池进行执行的,其目的在于,防止管理员页面选择较多考生时,导致请求耗时太长而出现响应超时的问题。
进一步的,在所述第一缓存和所述第二缓存中存储的信息采用string结构。
上述,在缓存考试基本信息和题目信息时,可以将这些信息转换为string字符串并存储在Redis中,在需要时快速读取。这样做的好处是可以节省时间和资源,避免每次访问数据库或文件系统时都进行I/O操作,提高应用程序的响应速度和性能。
另外,Redis的string字符串结构可以设置过期时间,这意味着可以自动删除不再需要的数据,避免存储空间被占满。这对于处理临时数据和缓存数据非常有用。采用string结构存储是因为它具有以下特点:
(1)简单:字符串结构比其他复杂的数据结构如哈希表和列表更容易实现和使用。
(2)快速:由于字符串结构只包含一个值,所以可以快速地读取和写入,适合用来表示单个对象或简单的键值对。
(3)易于扩展:Redis的字符串结构支持多种操作,例如追加、截取、替换等。这使得它们非常适合用来存储各种类型的数据,包括文本、数字、二进制数据等。
步骤S300,在考生端登录考生ID后,执行开始考试流程,所述考生端从所述第一缓存中获取与所述考生ID对应的所述考试基本信息和所述题目信息;
在考生进入考试时,需要直接根据考生ID,通过第一缓存查询考试基本信息和题目信息,从而进行在线考试。
进一步的,参考图3,所述步骤S300,在考生端登录考生ID后,还包括:
步骤S300a,更新所述考生ID对应的考试数据表;其中,所述考试数据表中包括插入操作记录、考生ID对应的考试次数、考试开始时间和考试结束时间;
上述,在进入在线考试时,需要更新相关的数据库中的考试数据表,例如可以包括但不限于:插入操作记录、更新考试次数、考试结束时间等。
进一步的,所述更新所述考生ID对应的考试数据表在所述异步线程池中执行。
上述,更新所述考生ID对应的考试数据表,通过异步执行进行更新,即使该数据表更新或同步慢了、或者更新失败,并不影响最终交卷。
此外,在考试中途退出并重新进入,需要反显已做内容的场景,可以利用缓存,直接跳过查询数据库的过程。
本实施例实现了针对于在线抽题考试从推送到考试到提交的优化,极大减少了请求数据库的频率,同时解耦各个加工逻辑,减少用户对返回结果的依赖,提升了请求效率和体验,解决了金融领域人员在资质认证考试场景下并发量大问题,为在线考试的实施带来方便。
同时,优化后的逻辑主要在jvm中实现,减少了对数据库的依赖,服务器比数据库扩展容易,有利于支持在线用户数的临时增长需求。
优化后的相关接口,性能提高1倍以上,并且单台服务器从原来的10TPS提升到1500以上,通过集群能够轻松支持金融领域的运营条线上万人资质认证考试。
实施例2:
参照图4,本发明第2实施例提供一种在线抽题考试管理控制方法,基于上述实施例1。所述步骤S300,在考生端登录考生ID后,执行开始考试流程,所述考生端从所述第一缓存中获取与所述考生ID对应的所述考试基本信息和所述题目信息之后,还包括:
步骤S500,所述考生端接收题目切换指令;
上述,在进行在线考试过程中,为了确保数据的安全性和稳定性,实时对于考试人员的每个题目信息的考生答案信息进行保存。保存方式,可以为通过缓存的方式进行保存。
在线考试中,由于考生端的显示面积限制,或者题目的篇幅的要求,主观题、客观题导致经常需要切换页面、切换题目进行答题,当题目切换的时,需要保存考生当前答案,大量考试并发的时候,暂存接口调用频繁,优化为:只有选项发生变化的时候再调用暂存接口,这样可以极大减少接口并发量。
上述,切换指令即为考生端,根据考试人员的需求,点击切换页面后触发生成的指令。
步骤S600,根据所述题目切换指令判断考生答案信息与前一次存储的考生答案信息相比是否不同;
步骤S700,若所述考生答案信息与前一次存储的考生答案信息相比不同,则调用暂存接口保存所述考生答案信息,并根据所述切换指令切换题目。
此外,若所述考生答案信息与前一次存储的考生答案信息相比相同,则判定考生答案信息未发生变化,无需调用暂存接口,返回步骤S500。
上述,在题目切换的时候,需要保存考生当前答案,但大量考试并发的时候,暂存接口调用频繁,造成系统资源的大量占用,本实施例中,通过设置为只有选项发生变化的时候再调用暂存接口,这样可以极大减少接口并发量。
上述,进行比较的是:考生答案信息与前一次缓存的考生答案信息之间,如果两者不同,则说明出现修改、变动,进而调用暂存接口保存所述考生答案信息,并根据所述切换指令切换题目。
通过在出现变动之后,才进行调用暂存接口,对变动后的考生答案信息进行缓存,避免了大量考试并发的时候,暂存接口调用频繁,大大减少了系统资源的大量占用。
进一步的,参考图5,所述步骤S700,调用暂存接口保存所述考生答案信息,包括:
步骤S710,判断所述考生端的当前网络环境速度是否低于预设低速阈值;
步骤S720,若所述考生端的当前网络环境速度低于预设低速阈值,则通过前端异步执行所述调用暂存接口保存所述考生答案信息。
上述,若所述考生端的当前网络环境速度不低于预设低速阈值,则可以返回步骤S710重新判断。
网络环境,网速质量,是影响在线考试能否正常进行的重要因素。如果网络环境差、信号差、网速低,则会造成信息丢失、信息不全等一系列问题。例如,考试人员通过手机进行在线考试,需要通过无线网络宽带的网速、运营向在所在地的网络达到一定程度才能进行相应的考试。而如果网络环境差、网络网速低,切换题目调用暂存接口会出现明显卡顿。本实施例中,通过在调用暂存接口之前,首先对当前的网络环境速度进行判断,如果低于预设低速阈值,例如x≤5kbps/s,则判定当前信号差、或者网络环境差,则优化为前端异步保存,不依赖结果返回。
进一步的,所述步骤S700,调用暂存接口保存所述考生答案信息,还包括:
步骤S730,通过所述暂存接口,将所述考生答案信息保存至第三缓存;
进一步的,在所述第三缓存中,所述考生答案信息的保存结构采用哈希结构。
上述,将考生的考生答案信息存入第三缓存cache3,结构采用哈希结构hash,缓存key为考试编号,内容的map结构为:{"题目ID":"已做内容"}。
此外,经过分析,后台更新数据库题目状态、插入操作记录等操作,都不应对考生产生影响,可以所以全部改为异步。
需要说明的是,哈希表(Hash Table)是一种根据关键码值(Key-Value)而直接访问内存存储位置的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。
在这里,缓存的结构采用哈希结构,意味着将考试编号作为关键码值,通过哈希函数将其映射到一个表中的位置,从而可以快速地访问缓存中的内容。具体来说,可以把考试编号当做哈希表中的索引,将每道题目的ID和已做内容组合成一个键值对(Key-Valuepair),并将这些键值对存储在哈希表中。
同时,在该哈希表中,每个题目的ID都对应着一个包含已做内容的Map结构。Map是一种可存储键值对的集合类型,其中每个键唯一对应一个值,通常用于快速地查找、插入和删除数据。因此,在这里,可以利用Map来存储每道题目的已做内容信息,方便后续对缓存中的数据进行操作和更新。
上述,Cache3可以在考生重新进入考试时查询到,无需经过数据库查询。
另外将考生最近一次更新的题目ID存到缓存,用于重新进入考试快速定位。
进一步的,参考图6,所述步骤S730,通过所述暂存接口,将所述考生答案信息保存至第三缓存之后,还包括:
步骤S740,接收所述考生端的所述题目信息对应的同步请求信息,并获取所述同步请求信息中的请求时间;
步骤S750,判断所述请求时间是否晚于与所述数据库中的所述题目信息对应的数据的更新时间;
步骤S760,若所述请求时间晚于与所述数据库中的所述题目信息对应的数据的更新时间,则根据所述同步请求信息将所述第三缓存中的所述考生答案信息同步至所述数据库。
上述,在步骤S750之后,若所述请求时间不晚于与所述数据库中的所述题目信息对应的数据的更新时间,即当库中的更新时间≥请求时间,则保持不变,并且可以返回至步骤S740继续执行逻辑。
需要说明的是,题目信息暂存入库改为异步,同一题多次修改,为了确保系统保存的是最后一次更新的数据,本实施例中,采用乐观锁机制。
上述,乐观锁是一种并发控制机制,通常用于多个用户同时对同一个数据进行读写操作的情况下。在乐观锁中,每个用户在读取数据时都假设其他用户不会同时更新该数据,因此在写入数据时不会阻塞其他用户的访问。当某个用户更新数据时,系统会检查该数据是否被其他用户更新过,如果没有,则允许该用户将其更新提交到数据库中;如果有,则拒绝该用户的更新并要求该用户重新读取数据以获取最新的版本。
乐观锁通常使用版本号或时间戳来实现。在每次更新操作中,系统会记录当前数据的版本号或时间戳,并将其与用户提交的版本号或时间戳进行比较。如果两者相等,则说明在用户读取数据之后没有其他用户对其进行更新,该用户可以提交更新;否则,该用户需要重新读取数据以获取最新版本。这样可以避免并发更新导致的数据丢失或冲突问题。
本实施例中,在题目暂存入库的过程中,将操作改为异步方式,同时针对同一道题进行多次修改时,需要保证系统保存的数据是最后一次更新的数据。为了实现这个目标,可以使用乐观锁机制。
乐观锁是一种并发控制机制,它假设在大多数情况下,不会出现并发冲突,因此不加锁而是通过版本号或时间戳等方式来进行控制。具体实现方式是,在每次更新数据时,先检查该数据的版本号或时间戳是否与当前数据库中记录的相同,如果相同则更新数据,并将版本号或时间戳加1,如果不同则说明该数据已被其他线程或进程更新,不能直接覆盖,需要给用户提示信息并让用户重新编辑提交。
在本场景中,通过使用请求时间作为条件来更新数据库中选择记录的那一行数据,就是采用乐观锁机制的实现方式之一。具体来说,每次请求时都会携带一个请求时间,如果库中的更新时间早于该请求时间,则允许更新数据,否则不更新。这样可以避免同时有多个请求更新同一条记录造成的并发冲突问题,确保数据的一致性和完整性。
通过乐观锁,每次请求,即接收所述考生端的所述题目信息对应的同步请求信息,并获取所述同步请求信息中的请求时间;通过使用该请求时间,作为条件,更新选择记录的那一行数据,当库中的更新时间<请求时间才可以更新,才能够根据所述同步请求信息将所述第三缓存中的所述考生答案信息同步至所述数据库。
进一步的,参考图7,所述步骤S730,调用暂存接口保存所述考生答案信息中,所述通过所述暂存接口,将所述考生答案信息保存至第三缓存之后,还包括:
步骤S7701,为保存至所述第三缓存内的所述考生答案信息对应的题目建立题目ID;
步骤S7702,在将所述考生答案信息暂存至所述第三缓存内时,将所述题目ID通过所述暂存接口存入第六缓存中,并且,在将所述考生答案信息异步更新至所述数据库后,删除所述第六缓存中的所述题目ID;
步骤S7703,在所述考生端接收到所述考生ID提交的或者到达考试结束时间自动生成的交卷指令时,判断当前考试的所述第六缓存是否为空或者所述第六缓存不存在;
步骤S7704,若所述第六缓存为空或者所述第六缓存不存在,则执行交卷流程。
此外,在所述步骤S7703之后,若所述第六缓存不为空或者所述第六缓存存在,则不执行所述交卷流程,并可以返回所述步骤S7703,继续执行逻辑。
题目暂存中需要有标记,交卷时判断当前用户选项是否都暂存完成。
实现方式为,暂存接口在将考生答案信息暂存至第三缓存时,同步保存一个标签(题目ID,即标签)到redis数据库,数据结构可以为set,存入第六缓存Cache6中。
在暂存开始时,于第六缓存中插入该题目ID,而在异步更新数据库完成、即在将所述考生答案信息异步更新至所述数据库后,删除第六缓存中的题目ID。
需要说明的是,交卷时,判断当前考试的第六缓存Cache6不存在,或者元素为空,才能执行交卷逻辑。
上述,Set(集合)是一种数据结构,用于存储一组唯一的元素。与列表不同,集合中的元素没有顺序,每个元素只能出现一次。常见的操作包括添加和删除元素,检查元素是否存在等。在实现上,集合通常使用散列表(hash table)或搜索树(search tree)来实现,以保证快速的插入、删除和查找操作。
Set数据结构在处理需要对一组元素进行唯一性判断时非常有用,例如去除列表中的重复元素、判断两个集合是否相等等。它也可以用于解决一些算法问题,例如快速查找数组中是否存在两个数的和等于给定值。
实施例3:
参照图8,本发明第3实施例提供一种在线抽题考试管理控制方法,基于上述实施例2,所述在线抽题考试管理控制方法,还包括:
步骤S800a,所述考生端接收所述考生ID提交的或者到达考试结束时间自动生成的交卷指令;根据所述交卷指令,执行交卷流程;
上述,交卷指令的生成,可以包括但不限于如下两种方式:
(1)考生自主触发交卷,点击提交,生成交卷指令;
(2)达到考试结束时间,自动生成交卷指令。
步骤S800b,将所述第三缓存中的考生答案信息与所述第二缓存中的正确答案信息进行比对;
步骤S800c,筛选其中比对答案一致的得分题目,和比对答案不一致的扣分题目;
步骤S800d,根据所述题目分值信息和所述得分题目计算生成考试结果信息,存入第四缓存;并将所述扣分题目的列表,存入第五缓存;
步骤S800e,将所述第四缓存和所述第五缓存中的数据,通过后台异步执行同步至所述数据库,并更新考试日志和结果推送。
交卷时,进入算分流程。
具体的,需要从缓存直接拿第三缓存Cache3和第二缓存Cahce2进行比对,计算得分过程中,得出得分题目和扣分题目,根据扣分题目加工出错题列表。
其中,考试结果,为根据所述题目分值信息和所述得分题目计算生成考试结果信息,存入缓存第四缓存Cache4,错题列表存入第五缓存Cache5。
此时直接返回给前端,跳转到考试结果页面。后台异步将最终结果更新到数据库、记录考试日志、发送相关提醒,将耗时的操作取消强依赖。
此外,缓存Cache4和Cache5可以为后续考生重新查询考试结果直接使用。
进一步的,所述在线抽题考试管理控制方法还包括:
步骤S800f,若所述考生ID对应的当前考试进入到所述开始考试流程,或交卷流程,则在所述开始考试流程或所述交卷流程开始时设置线程锁,并且,在所述开始考试流程或所述交卷流程结束时,对所述线程锁解锁。
上述,在同一场考试的进入和交卷流程中,需要采用共用的线程锁,其作用在于,一是防止用户进入考试后立刻交卷导致数据库更新异常,二是防止计时类考试,后台到时间自动交卷和前端交卷同时触发。
具体实现方式为进入到开始考试流程、手动交卷流程、自动交卷流程时,首先都要加线程锁(使用redis的setnx或者redisson的RLock),成功才能继续往下,否则报错返回。
上述,使用redis的setnx是一种在Redis中实现锁的方式,它可以确保只有一个线程能够获取到锁。具体来说,当多个线程同时尝试获取同一个锁时,只有其中一个线程能够成功获取到锁,其他线程则会被阻塞等待或者返回失败。使用Redis的setnx或者Redisson的RLock可以帮助实现分布式环境下的锁机制,确保多个线程或进程之间对共享资源的并发访问是安全可靠的。
实施例4:
参照图9,本发明第3实施例提供一种在线抽题考试管理控制方法,基于上述实施例2,所述步骤S300,在考生端登录考生ID后,执行开始考试流程之前,还包括:
步骤S300b,所述服务端实时获取考试题库的题库更新信息;
步骤S300c,基于所述题库更新信息,清空缓存,并返回所述服务端获取抽题配置参数,并根据所述抽题配置参数生成与每个考生ID对应的试卷。
上述,在管理员设置了抽题配置参数,并通过服务端推送出去后,相当于提前在后台抽题生成了试卷。
而如果管理员修改了或更新了题库,例如,其中的错误题目进行了更正。此时,为了确保考生在考试时的考题能够更新至最新版本,在考试流程开始之前,即还未开始考试时,服务端只要获取到考试题库的题库更新信息,即可以直接删除所有缓存,重新执行逻辑。
此外,参考图10,本实施例还提供一种在线抽题考试管理控制装置,包括:
抽题模块10,用于服务端获取抽题配置参数,并根据所述抽题配置参数生成与每个考生ID对应的试卷;
缓存模块20,用于所述服务端在异步线程池中执行将所述抽题配置参数中的考试基本信息,以及所述试卷的题目信息缓存到数据库中的第一缓存;并且,将所述试卷的题目信息对应的题目分值信息和正确答案信息存入所述数据库中的第二缓存;
考试模块30,用于在考生端登录考生ID后,执行开始考试流程,所述考生端从所述第一缓存中获取与所述考生ID对应的所述考试基本信息和所述题目信息。
此外,本实施例还提供一种在线抽题考试管理控制系统,包括存储器以及处理器,所述存储器存储有在线抽题考试管理控制程序,所述处理器运行所述在线抽题考试管理控制程序以使所述在线抽题考试管理控制系统执行如上述所述的在线抽题考试管理控制方法。
此外,本实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有在线抽题考试管理控制程序,所述在线抽题考试管理控制程序被处理器执行时实现如上述所述在线抽题考试管理控制方法。
总之,本发明实现了针对于在线抽题考试从推送到考试到提交的优化,极大减少了请求数据库的频率,同时解耦各个加工逻辑,减少用户对返回结果的依赖,提升了请求效率和体验。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (13)
1.一种在线抽题考试管理控制方法,其特征在于,包括:
服务端获取抽题配置参数,并根据所述抽题配置参数生成与每个考生ID对应的试卷;
所述服务端在异步线程池中执行将所述抽题配置参数中的考试基本信息,以及所述试卷的题目信息缓存到数据库中的第一缓存;并且,将所述试卷的题目信息对应的题目分值信息和正确答案信息存入所述数据库中的第二缓存;
在考生端登录考生ID后,执行开始考试流程,所述考生端从所述第一缓存中获取与所述考生ID对应的所述考试基本信息和所述题目信息;
优选地,在所述第一缓存和所述第二缓存中存储的信息采用string结构。
2.如权利要求1所述在线抽题考试管理控制方法,其特征在于,所述在考生端登录考生ID后,还包括:
更新所述考生ID对应的考试数据表;其中,所述考试数据表中包括插入操作记录、考生ID对应的考试次数、考试开始时间和考试结束时间;
优选地,所述更新所述考生ID对应的考试数据表在所述异步线程池中执行。
3.如权利要求1所述在线抽题考试管理控制方法,其特征在于,所述在考生端登录考生ID后,执行开始考试流程,所述考生端从所述第一缓存中获取与所述考生ID对应的所述考试基本信息和所述题目信息之后,还包括:
所述考生端接收题目切换指令;
根据所述题目切换指令判断考生答案信息与前一次存储的考生答案信息相比是否不同;
若所述考生答案信息与前一次存储的考生答案信息相比不同,则调用暂存接口保存所述考生答案信息,并根据所述切换指令切换题目。
4.如权利要求3所述在线抽题考试管理控制方法,其特征在于,所述调用暂存接口保存所述考生答案信息,包括:
判断所述考生端的当前网络环境速度是否低于预设低速阈值;
若所述考生端的当前网络环境速度低于预设低速阈值,则通过前端异步执行所述调用暂存接口保存所述考生答案信息。
5.如权利要求3所述在线抽题考试管理控制方法,其特征在于,所述调用暂存接口保存所述考生答案信息,还包括:
通过所述暂存接口,将所述考生答案信息保存至第三缓存;
优选地,在所述第三缓存中,所述考生答案信息的保存结构采用哈希结构。
6.如权利要求5所述在线抽题考试管理控制方法,其特征在于,所述通过所述暂存接口,将所述考生答案信息保存至第三缓存之后,还包括:
接收所述考生端的所述题目信息对应的同步请求信息,并获取所述同步请求信息中的请求时间;
判断所述请求时间是否晚于与所述数据库中的所述题目信息对应的数据的更新时间;
若所述请求时间晚于与所述数据库中的所述题目信息对应的数据的更新时间,则根据所述同步请求信息将所述第三缓存中的所述考生答案信息同步至所述数据库。
7.如权利要求5所述在线抽题考试管理控制方法,其特征在于,所述调用暂存接口保存所述考生答案信息中,所述通过所述暂存接口,将所述考生答案信息保存至第三缓存之后,还包括:
为保存至所述第三缓存内的所述考生答案信息对应的题目建立题目ID;
在将所述考生答案信息暂存至所述第三缓存内时,将所述题目ID通过所述暂存接口存入第六缓存中,并且,在将所述考生答案信息异步更新至所述数据库后,删除所述第六缓存中的所述题目ID;
在所述考生端接收到所述考生ID提交的或者到达考试结束时间自动生成的交卷指令时,判断当前考试的所述第六缓存是否为空或者所述第六缓存不存在;
若所述第六缓存为空或者所述第六缓存不存在,则执行交卷流程。
8.如权利要求5所述在线抽题考试管理控制方法,其特征在于,所述在线抽题考试管理控制方法,还包括:
所述考生端接收所述考生ID提交的或者到达考试结束时间自动生成的交卷指令;根据所述交卷指令,执行交卷流程;
将所述第三缓存中的考生答案信息与所述第二缓存中的正确答案信息进行比对;
筛选其中比对答案一致的得分题目,和比对答案不一致的扣分题目;
根据所述题目分值信息和所述得分题目计算生成考试结果信息,存入第四缓存;并将所述扣分题目的列表,存入第五缓存;
将所述第四缓存和所述第五缓存中的数据,通过后台异步执行同步至所述数据库,并更新考试日志和结果推送。
9.如权利要求7所述在线抽题考试管理控制方法,其特征在于,所述在线抽题考试管理控制方法还包括:
若所述考生ID对应的当前考试进入到所述开始考试流程,或交卷流程,则在所述开始考试流程或所述交卷流程开始时设置线程锁,并且,在所述开始考试流程或所述交卷流程结束时,对所述线程锁解锁。
10.如权利要求1所述在线抽题考试管理控制方法,其特征在于,所述在考生端登录考生ID后,执行开始考试流程之前,还包括:
所述服务端实时获取考试题库的题库更新信息;
基于所述题库更新信息,清空缓存,并返回所述服务端获取抽题配置参数,并根据所述抽题配置参数生成与每个考生ID对应的试卷。
11.一种在线抽题考试管理控制装置,其特征在于,包括:
抽题模块,用于服务端获取抽题配置参数,并根据所述抽题配置参数生成与每个考生ID对应的试卷;
缓存模块,用于所述服务端在异步线程池中执行将所述抽题配置参数中的考试基本信息,以及所述试卷的题目信息缓存到数据库中的第一缓存;并且,将所述试卷的题目信息对应的题目分值信息和正确答案信息存入所述数据库中的第二缓存;
考试模块,用于在考生端登录考生ID后,执行开始考试流程,所述考生端从所述第一缓存中获取与所述考生ID对应的所述考试基本信息和所述题目信息。
12.一种在线抽题考试管理控制系统,其特征在于,包括存储器以及处理器,所述存储器中存储有在线抽题考试管理控制程序,所述处理器运行所述在线抽题考试管理控制程序以使所述在线抽题考试管理控制系统执行如权利要求1-10任一项所述的在线抽题考试管理控制方法。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有在线抽题考试管理控制程序,所述在线抽题考试管理控制程序被处理器执行时实现如权利要求1-10任一项所述的在线抽题考试管理控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310656303.8A CN116680052A (zh) | 2023-06-05 | 2023-06-05 | 一种在线抽题考试管理控制方法、装置、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310656303.8A CN116680052A (zh) | 2023-06-05 | 2023-06-05 | 一种在线抽题考试管理控制方法、装置、系统及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116680052A true CN116680052A (zh) | 2023-09-01 |
Family
ID=87783127
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310656303.8A Pending CN116680052A (zh) | 2023-06-05 | 2023-06-05 | 一种在线抽题考试管理控制方法、装置、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116680052A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117151070A (zh) * | 2023-10-31 | 2023-12-01 | 联城科技(河北)股份有限公司 | 试卷组题方法、装置、设备及计算机可读存储介质 |
CN117333333A (zh) * | 2023-10-13 | 2024-01-02 | 可之(宁波)人工智能科技有限公司 | 一种提升批改校对效率的方法 |
-
2023
- 2023-06-05 CN CN202310656303.8A patent/CN116680052A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117333333A (zh) * | 2023-10-13 | 2024-01-02 | 可之(宁波)人工智能科技有限公司 | 一种提升批改校对效率的方法 |
CN117151070A (zh) * | 2023-10-31 | 2023-12-01 | 联城科技(河北)股份有限公司 | 试卷组题方法、装置、设备及计算机可读存储介质 |
CN117151070B (zh) * | 2023-10-31 | 2024-01-23 | 联城科技(河北)股份有限公司 | 试卷组题方法、装置、设备及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116680052A (zh) | 一种在线抽题考试管理控制方法、装置、系统及存储介质 | |
US10120895B2 (en) | Mirroring, in memory, data from disk to improve query performance | |
US9128972B2 (en) | Multi-version concurrency control on in-memory snapshot store of oracle in-memory database | |
US8965840B2 (en) | Automatic synchronization conflict resolution | |
US20170322999A1 (en) | Mechanism to run oltp workload on in-memory database under memory pressure | |
US20160283558A1 (en) | Column-oriented database processing method and processing device | |
US20160147906A1 (en) | Transaction Control Block for Multiversion Concurrency Commit Status | |
US10754854B2 (en) | Consistent query of local indexes | |
US9576038B1 (en) | Consistent query of local indexes | |
CN113761294B (zh) | 数据管理方法、装置、存储介质以及电子设备 | |
CN111414392B (zh) | 高速缓存异步刷新方法、系统及计算机可读存储介质 | |
CN112084161B (zh) | 基于数据库的数据处理方法、装置以及可读存储介质 | |
CN111324607B (zh) | Sql语句复用方法和装置 | |
JP5772458B2 (ja) | データ管理プログラム、ノード、および分散データベースシステム | |
WO2021237190A1 (en) | Distributed transaction execution in distributed databases | |
US11210272B2 (en) | Low latency cache synchronization in distributed databases | |
EP1967968B1 (en) | Sharing of database objects | |
JP2005234945A (ja) | 同時実行制御方法及び装置 | |
CN112685431A (zh) | 异步缓存方法、装置、系统、电子设备和存储介质 | |
JPH096653A (ja) | データベースのチェックを行う情報処理装置 | |
CN115905259B (zh) | 一种支持行级并发控制的纯列式更新方法及装置 | |
US11741097B2 (en) | Tree structure data processing system, tree structure data processing method, tree structure data processing device, and tree structure data processing program | |
CN104661053A (zh) | 一种iptv数据处理的方法及系统 | |
CN115827653B (zh) | 一种用于htap和海量数据的纯列式更新方法及装置 | |
CN118606009A (zh) | 一种事务的并发控制方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |