V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
esolve
V2EX  ›  问与答

开发 web 在线考试系统,如何保证系统的可靠性?

  •  1
     
  •   esolve · 2017-02-21 00:11:43 +08:00 · 2440 次点击
    这是一个创建于 2810 天前的主题,其中的信息可能已经有所发展或是发生改变。

    web 系统 网页浏览器端,很容易出现网页死了 js 加载问题等等 有何方法和思路确保系统的可靠性?

    16 条回复    2017-02-22 09:12:18 +08:00
    jiangzhuo
        1
    jiangzhuo  
       2017-02-21 01:20:46 +08:00
    这都是前段程序员写出 BUG 了吧。重启(F5)回复卡死之前或者卡死之前一段时间内的状态就好了.
    esolve
        2
    esolve  
    OP
       2017-02-21 04:57:40 +08:00
    @jiangzhuo 你意思只要前端认真写,就不会出现问题?
    会不会由于网络问题,或者客户端浏览器出问题呢?
    yangqi
        3
    yangqi  
       2017-02-21 05:31:30 +08:00
    前端的可靠性掌握在用户手上,你没法保证。你只能随时保存用户的考试状态,出了问题好恢复
    Perry
        4
    Perry  
       2017-02-21 06:40:42 +08:00 via iPhone
    每次 keyup 都把内容保存在 localStorage
    loading
        5
    loading  
       2017-02-21 06:57:55 +08:00 via Android
    是不是你后端堵塞了?
    sfree2005
        6
    sfree2005  
       2017-02-21 07:15:38 +08:00 via iPhone
    首先设计的时候不要把太多题目放在一页里,每一次翻页都保存答案到后端,简答题的话 应试者每答完一题 焦点移动到下一题的时候也可以答案内容提交到服务器。


    如果这样嫌麻烦可以设置全页的自动保存,每隔一两分钟就向服务器提交答案内容

    写测试。不知道你们是否用什么框架 配套的 e2e 测试最好要写。
    esolve
        7
    esolve  
    OP
       2017-02-21 08:10:05 +08:00
    @Perry 这个如何进行,然后用户如何恢复内容和当下状态,而且保证在网页出问题的时候,时钟不走?
    esolve
        8
    esolve  
    OP
       2017-02-21 08:11:06 +08:00
    @sfree2005 前端就 jsp javascript html
    后端 java SSH 框架
    kindjeff
        9
    kindjeff  
       2017-02-21 08:11:35 +08:00 via iPhone
    很容易出现假死之类那肯定是你们自己的问题!
    很想吐槽学校做的所有网页,基本连防 xss 都没有做的。
    比如我们学校的考试系统都是计算机院的老师交给计算机院的学生做的,功能简单界面粗糙且 bug 繁多,还只支持 ie 。据说还收费不低。
    Mavious
        10
    Mavious  
       2017-02-21 08:55:13 +08:00
    非程序猿。

    突然想说粉笔公考的每周模考系统,同时有 1w (至少)~10w 人(高峰期)交卷,早期还崩溃过几次(数万人同时打开模考卷,然后什么也打不开了),现在次次都好好的。不知道他们怎么搞的。
    oldliu
        11
    oldliu  
       2017-02-21 08:56:13 +08:00
    请参 C1 考科目一 考试系统。
    learnshare
        12
    learnshare  
       2017-02-21 09:19:50 +08:00 via Android
    当然是写的不好了
    esolve
        13
    esolve  
    OP
       2017-02-21 09:20:10 +08:00
    @oldliu 啥意思? 有源码?
    jiangzhuo
        14
    jiangzhuo  
       2017-02-21 10:48:10 +08:00
    @esolve
    @Perry
    网络问题是可能导致服务端保存不了状态,但是老浏览器 localStorage 的功能一般不强大。
    所以这种系统一般指定浏览器吧,那些古董浏览器就不支持了吧。
    iyaozhen
        15
    iyaozhen  
       2017-02-21 11:49:13 +08:00 via Android
    没那么容易出现 js 假死的吧,上线之前要做测试啊。
    还有可以限定浏览器,浏览器本地保存和服务端定时保存都要有。

    最后就是做好 xss 和 SQL 注入防御
    oldliu
        16
    oldliu  
       2017-02-22 09:12:18 +08:00
    @esolve 我的意思是逻辑可以参考,大哥。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2774 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 12:18 · PVG 20:18 · LAX 05:18 · JFK 08:18
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.