PRY程序教学辅助平台产品系统

我要开发同款
umll2026年06月12日
4阅读

技术信息

语言技术
C++JavaVue
系统类型
Web
行业分类
教育校园

作品详情

行业场景

PRY是一个程序设计类实验辅助教学平台,旨在为高校提供线上程序教学的管理,提供在线评测、作业、考试等功能,支持多种编程语言的自动评判。

功能介绍

功能模块:权限模块、题库模块、考试模块、主观题提交模块、任务调度模块、判题机、结果写回模块、客观题提交模块、客观题判题模块。
主要功能:用户管理、用户组管理、题目管理、题目集管理、试卷管理、考试管理。
老师可创建用户组、创建题目、组建试卷、发布题目集等。
学生可提交题目。

项目实现

技术栈:SpringBoot、Mybatis-Plus、Netty、MySQL、Redis、ShardingSphere-Proxy、Nginx;
架构:分布式架构、异步判题、分库;
主要贡献:
1、设计一套RBAC的动态权限服务,根据用户角色赋予不同的访问权限,通过JWT+Redis保障分布式服务鉴权。
2、通过慢SQL日志分析,重构索引并优化SQL,排查索引失效问题,接口平均响应时间从200ms降至80ms。
3、负责判题机实现,用Docker沙箱隔离宿主机。fork子进程启动测评沙箱,限制容器读写、内存,保障判题机安全。
4、防止用户频繁提交,通过本地缓存Caffeine+Guava令牌桶结合AOP实现接口限流,重复提交率从15%降至7%。
5、负责考试模块的性能优化,采用Redis对试卷题目做缓存定时预热,并且保证缓存一致性,实测题目查询接口2600QPS。
6、基于Websocket对接考试客户端,实现教师对学生的在线监考,包括消息通知、截屏、进程监控等功能。

示例图片

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论