论文部分内容阅读
随着互联网技术的迅速发展,在线考试系统已经广泛应用在学校考试、人才招聘中,其自动评分、成绩报表等功能节省了大量的人力,随机组卷降低了抄袭的可能性。目前,在线考试系统的功能虽然已经比较完善,但仍然存在试题上传方法效率较低的问题。此外,在线考试系统缺少前端性能优化方案,且当用户发出多个并发请求时,存在页面响应时间和渲染时间过长的问题。本文针对这些问题,设计并开发出了具有较高性能的在线考试系统。本文首先围绕在线考试系统中试题上传方法进行分析,介绍了现有上传方法的基本原理,详细讨论了各自的优缺点,并设计出一种基于语义的、智能的解析方法IDP(Intelligent Document Parsing)。其次,剖析了影响Web前端性能的因素,针对这些因素提出了有效的前端优化方案,并将其应用在在线考试系统中。最后,针对浏览器并发连接数限制的情况下,多个并发请求所引发的效率问题进行介绍,并提出了一种基于优先级队列的请求调度算法APSC(Algorithm based on Priority queue for Simultaneous Connections)。具体工作如下:(1)针对现有试题上传方法需人工预处理操作,代价高、效率低的缺点,提出了一种基于语义的解析方法IDP。该算法通过规则匹配、语义分析确定试题类型,并利用语段分析的方法获得正确的试题信息。IDP直接使用任意格式的试题文档就可以智能、准确地解析其中的试题,充分利用了现有试题资源,具有很高的通用性和实用性。(2)针对在线考试系统,通过分析介绍HTTP协议、浏览器和服务器的交互过程、浏览器缓存机制等影响Web前端性能的因素,提出了Web前端优化方案。实验结果表明,应用优化方案后,首次加载时,在线考试系统的平均页面响应时间降低了18.8%,开始渲染时间平均缩短了19.7%。再次加载时,页面响应时间平均优化了15.4%,开始渲染时间平均降低了9.2%。(3)针对浏览器并发连接数受限的情况下,同时发出多个请求会导致后续请求阻塞、页面下载时间和开始渲染时间过长的问题,设计了请求调度算法APSC。APSC综合考虑了页面下载时间、开始渲染时间和请求等待时间,既保证了尽可能少的页面下载时间,又能使页面内容尽早地呈现给用户。此外,APSC还避免了低优先级请求因长时间等待而出现的“饿死”现象。实验结果表明,优化后页面下载时间平均降低了11%,开始渲染时间优化幅度为15%。