评论

在线考试小程序自动组卷

在线考试小程序组卷逻辑

前言


提到在线考试,有一个话题不能绕过去,那就是自动组卷的逻辑,

之前在某小程序小试牛刀,当时用了三个云函数分别获取单选题40道、多选题20道,判断题20道

但是一直没有纳入我的产品功能序列中,最近几天在规划我的考试小程序V4.0的功能点,又重拾了这个功能,现在分析下

需求


在某1000道题的题库中,随机抽取

  1. 单选 40道题 每题1分
  2. 多选 20道题 每题 2分
  3. 判断 20道题 每题1分

这样组卷总共100分

逻辑

首先会想到两种方案:

方案一:一个云函数一次获取1000道题,然后分别提取单选、多选、判断到三个数组中,然后乱序,各提取40、20、20

方案二:三个云函数分别提取单选、多选、判断各40、20、20


当前采用方案为方案二,运行过程如下

1000条记录,组卷逻辑云函数用时257ms,完全可以接受,完美的

具体代码实现时,参考了下面示例代码

https://developers.weixin.qq.com/miniprogram/dev/wxcloud/guide/database/read.html

体验


总结

从线上运行来看,这种方案算是当下最完美的一个方案,如果有类似需求可以参考

未完待续

最后一次编辑于  2020-06-04  
点赞 1
收藏
评论

1 个评论

  • 啊桂
    啊桂
    2020-06-03

    怎样保证1000道题 中至少单选、多选、判断各40、20、20 ??


    如果多选题只有19题呢?

    2020-06-03
    赞同
    回复 1
    • 小肥羊
      小肥羊
      2020-06-04
      你的问题超纲了
      2020-06-04
      回复
登录 后发表内容