在线评判系统的设计和实现

被引量 : 0次 | 上传用户:sdhok
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
在线评判系统(简称OJ,Online Judge)指在线用来评判程序的正确性、时间与效率空间效率的评判系统,一般在ACM/ICPC(国际大学生程序设计竞赛)等各种形式的编程比赛、教学或训练中用以评判提交的程序。近年来,各类程序设计竞赛引起了广泛的关注,对于在线评判系统在性能和兼容性上的需求越来越大。当前国内主流的在线评判系统,主要是基于单个服务器的集中式评判方式,这种评判方式能保证程序评判的正确性和公平性,但其串行化的程序评判流程已经不能满足大规模提交和短时间内爆发式提交的评判效率的业务需求。为了解决当前在线评判系统中所存在的并发提交时评判效率低下;对竞赛模式支持度不够;编译执行过程缺乏安全保证;系统抗压能力差;容错能力差等问题,基于SAE (Sina App Engine),本文提出了构建基于分布式的在线评判系统ODOJ(Open Distributed Online Judge)。通过对当前在线评判系统需求的细致分析,针对当前对在线评判系统的主要需求,本文作者将ODOJ设计为一种基于分布式在线评判系统。由于该系统基于分布式平台,能较好地解决了当前主流的评判系统并发评判效率低下的问题。系统在研发过程中,引入了沙箱技术,来解决当前的安全性差这一核心问题。同时,在设计过程中,系统注重多竞赛模式支持的解决方案,支持包括“练习模式”,“比赛模式”,“模拟模式”等模式在内的评判模式。同时,本文详细介绍了系统设计过程中的数据库设计,以及数据库对程序并发性的支持的技术细节。本文重点介绍了ODOJ的系统设计,实现,构建,部署所涉及的技术介绍以及技术细节,重点讨论了分布式部署模块,分布式数据库构建模块,沙箱模块,页面缓存以及分布式评判内核模块等核心模块的实现,展示了一个完整的分布式系统的构建过程。本文所涉及系统的开发技术包括新浪开放分布式平台(SAE)技术,基于HTTP的远程过程调用,Memcached数据缓存技术,冗余备份技术,LAMP等技术,通过对以上技术的应用和实践,ODOJ大大提高了在线评判系统的工作效率,在多并发的情况下,能够在较短时间内完成提交程序的评判,同时保证相关的安全性需求。
其他文献
高技能人才短缺问题成为经济发展的瓶颈及学者研究的热点。通过对高技能人才的界定,综述国内外对高技能人才短缺及其成因、相关政策措施、培养模式、预测评价等方面的研究,展
在影片中,音乐的作用非常重要,不但可以给观众美的享受,还对剧情发展和氛围烘托有一定的作用,是影片非常重要的组成部分。此外,音乐还能够帮助电影更好地进行情节诠释和情感
<正>雕塑艺术特别是写实人物雕塑语言,作为重要的艺术主题和文化精神载体,它不仅是一个时代的反映,是中华民族的文化和信仰的体现,也是人与社会关系的深刻思考的体现。作为两
摘     要  随着拱桥跨径的增大,稳定性变得越来越突出,成为拱桥设计的重要控制因素之一。本文以广州新光大桥为工程背景,通过对其进行稳定性分析,讨论了各种因素对大跨度
食物过敏是由食物引起的机体对免疫系统的异常反应,近几十年来,世界范围内食物过敏反应症患者呈逐年上升趋势,食物过敏已成为一个新兴的食品安全问题。极其微量的过敏原即能
<正>习近平总书记《在首都各界纪念现行宪法公布30周年大会上的讲话》中指出:"各级领导干部要提高运用法治思维和法治方式深化改革、推动发展、化解矛盾、维护稳定能力"。《
在加快完善中国特色社会主义市场经济体制和我国经济发展面临新旧动力转换的关键时期,大众创业、万众创新已成为中国经济发展的新引擎。在这一历史背景下,方兴未艾的民间借贷
目的研究促性腺激素释放激素激动剂(CnRH-a)联合腹腔镜手术治疗中、重度内异症的疗效,为该疗法的应用提供可靠依据。方法对我院2013年3—9月收纳的52例中、重度内异症患者进
《叶甫盖尼·奥涅金》是普希金最伟大的作品,该小说以严肃的社会主题揭示了19世纪初期俄国的社会现实,展现了沙皇专制下俄国社会的种种矛盾与丑恶,被誉为俄罗斯现实主义文学
生物质能是可再生能源的重要组成部分,具有可再生、低污染、分布广泛等特点。目前,为了应对能源短缺、环境污染等问题,各国都在大力开发利用生物质能,这必将使得生物质能在今