检索规则说明:AND代表“并且”;OR代表“或者”;NOT代表“不包含”;(注意必须大写,运算符两边需空一格)
检 索 范 例 :范例一: (K=图书馆学 OR K=情报学) AND A=范并思 范例二:J=计算机应用与软件 AND (U=C++ OR U=Basic) NOT M=Visual
作 者:黄洪波[1] 宋鸿陟[1] 彭红星[1] 司国东[1]
机构地区:[1]华南农业大学信息学院人机交互研究中心,广东广州510642
出 处:《计算机工程与设计》2016年第3期825-831,共7页Computer Engineering and Design
基 金:国家自然科学基金项目(60875045)
摘 要:为满足大规模程序设计竞赛及计算机编程考试需求,对ACM-ICPC(association for computing machinery-international collegiate programming contest)在线评判系统进行研究,设计并实现基于ActiveMQ消息中间件和多级安全沙箱的大规模程序评判系统。基于生产者-消费者模型解决大规模考试的热伸缩和灾备需求,根据系统负载在线调整节点个数,容许若干个评判器节点意外离线。通过setUID、LXC(Linux container)、全虚拟化和操作系统用户权限机制实现多级安全沙箱,确保评判环境的安全性,兼顾运行效率,简化部署。优化磁盘IO(input/output)效率和编译器启停时间,提升评判器吞吐量。实验结果表明,评判器可随时联机和离线,具有很好的容错性,通过简单地增加评判器个数就可实现大规模的程序评判。To meet the requirement of large scale programming contests and examinations,a large scale program judging system was designed and implemented based on the ActiveMQ message middleware and multi-level safe sandbox after analyzing the existing ACM-ICPC(association for computing machinery-international collegiate programming contest)online judge systems.The needs of scaling and fault tolerance of large scale examinations were satisfied based on the producer and consumer model.The number of judging nodes was dynamically adjusted online according to the system load,and the unexpected offline of judging nodes was tolerated.By using setUID,LXC(Linux container),full virtualization and user permission mechanism of the operating system,the multi-level sandbox simplified the deployment and secured the judging environment with affordable performance costs.To increase throughput,the disk IO(input/output)and start-stop time of compilers were also optimized.Results of experiment show that the judging nodes can go online or offline at any time,which ensures good fault tolerance.As a result,large scale program judging is supported by simply adding judging nodes.
分 类 号:TP314[自动化与计算机技术—计算机软件与理论]
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在链接到云南高校图书馆文献保障联盟下载...
云南高校图书馆联盟文献共享服务平台 版权所有©
您的IP:216.73.216.38