关于在线考试系统的问题
公司有一套电力部门的在线考试系统[下称系统],因在同一时只支持50人同时考试,且统一交卷时等待的时间较长,所以考虑对其重新开发。
系统是按常规的三层搭起来的,没有任何的缓存或其它的优化设计。
系统在考试时随机抽取300道题显示到用户界面,在用户点击交卷或考试时间终至时提交表单直接写入数据库,再去计算相关的分值显示到用户界面。
在系统中 从抽题到交卷所有的重担都落在了数据库上,特别是在交卷时。 如果50人同时交卷,第一个交卷的人可以比较快的就看到了自己的成绩,但是那个不幸的被排到最后的那位可能就得等得吐泡泡了。
所以,如果要让系统支持比如800-1000人同时考试,交卷的等待时间在合理的范围内,整体上应该怎么设计?
如果说缓存,该怎样对缓存进行设计 才能经得起高并发的写?