解决当考生点击开始考试的时候出现卡顿问题

现象:210多人考生同时参加考试,出现卡顿现象。并且部分考生进行考试过程中出现获取试题卡顿现象。



分析问题:


主要进行应用程序分析。是因为当考生点击开始考试的时候,会把本次考试的答题结构插入到表中。假如有100道题。100*210=21000条记录插入到表中。然后先抢到资源的考生,也就是把答题结构给写入数据库中。正常答题。可是还有大部分考生出现卡顿情况,这个过程中有答案更新,有获取新的试题信息。

 

解决问题:


既然当考生点击开始考试的时候,会给每一个考生插入相应的答题结构。那我可以提前写入。


优化策咯:


1,我在老师的管理端,添加一个加载数据的功能。每当一个老师准备一场考试的时候,老师点击一次加载数据,这样把当前考试中的所有考生的答题结构全部加载到数据表中。

 

2,针对部分考生取题过程出现卡顿。采用ehcache缓存试题对象到磁盘上。这样所有考生在答题过程中一道一道取试题的时候,都直接在本地磁盘上读取,无需连接数据获取。根据计算机的存储结构,每上一级都是下一级的高速缓存。

 

3,由于系统在答题过程中,采用AnswerContainer和AnswerLisener配合使用。但是在存储的时候,是循环一条一条更新的。修改为批量更新。


成果:

1,当考生点击开始考试的时候,未出现卡顿情况。

2,考试过程中,取题流畅。

猜你喜欢

转载自blog.csdn.net/outsanding/article/details/79275404
今日推荐