OJ判题系统项目总结+扩展分享
在线地址 http://www.huanghao.icu (代码就不放了,犯病把配置文件都提交了。。) 后端:https://gitee.com/huanghao152/hhoj-backend-microservice 前端:https://gitee.com/huanghao152/hhoj-fronted 这个项目最后用的docker copmose一键部署(真滴快) 服务器用的家里的老电脑刷ubuntu实现,通过内网穿透来实现的公网访问 在这里特别感谢leikooo兄弟,没有他这个项目多半还是单体 扩展点:
- 完善了代码沙箱,增加了字典树违禁词,支持四种编程语言
- 对提交题目、评论、点赞进行了限流
- 扩展了评论模块,同样有违禁词
- 扩展了AI答题模块,通过对接火山引擎的DeepSeek模型来生成题目解析和代码,每道题缓存一天
- 首页对个人答题数、今日热题、用户排行榜进行统计
- 个人中心页面添加了题目提交热力图,同时支持修改头像
待完善点:
首页相关数据可以进行缓存预热- 既然有了AI答题,其实也可以有AI判题
- 增加ES来对题目进行分词搜索
- 沙箱方面都是用的原生部署,docker部署有点占内存就没用了
- 后面想实现ACM模式的代码沙箱

---------更新---------------
- 创建定时任务,每十分钟取出未被消费的消息(状态为Judging且用时超3分钟)发给消费者重新执行
- 修复了默认判题机npe问题
- 鉴权方式:redis分布式session->jwt
- 实现AI生成题目功能
- 限流方式:redisson RRateLimiter->sentinel+nacos
- 实现了反爬虫机制,一分钟内,10次告警,20次封号
- 首页使用了redis缓存提高响应,使用延迟双删策略
- 通过nacos+gateway实现了动态黑名单管理(但是不知道为啥拿不到真实ip,成鸡肋了)
- 参考亿级点赞项目对评论点赞进行了改造(coding中)
评论
问答助学
相关内容
0个评论
全部评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
内容推荐
第1章 LearnWise AI项目介绍
5
开源我的 Vibe Coding 工作流,已有人靠它把项目做完了
7
Spring Boot 如何处理跨域请求(CORS):深度调研报告
3
【入职求助贴】萌新刚入职某大厂做后端开发,目前还在试用期。最近遇到一个棘手的问题,想向大家求助一下。入职不久,leader 给我派了一个任务。跟我说是0.5天就可以解决,我刚毕业入职,做了一个星期没有做出来。实现一个收集定时成功任务的案例。听起来好像不复杂,但我自己摸索着做了一整个星期,到现在还没达到预期效果。这一周我基本是“边学边做”的状态,遇到卡点也会每天主动找 leader 沟通进度和疑问。
2
#字节内推# 实习、校招、社招均有岗位
4
作者分享
真是没想到天津这家还有后续(不清楚可以翻我前面的帖子),不过也在意料之中
今天中午天津的同事联系我说部门疯狂裁人;
当时一共四个实习生,就我跑路了,只能说现在想想还是后怕;
要是我当初没来编程导航发帖,y哥没有建议我赶紧跑路,现在我又会是什么境地😨;
7
感觉跟做梦一样,月初还因为天津6k恶心的睡不着跑路,半个月后第二次面试就收到深圳16k的offer😂
18
25Java base天津,已经来这实习了一个多月4000;今天转正谈薪,只能给到6k,最离谱的是我问了一圈前端、测试、后端都6k;有点想跑了,但是半个月前才租好房沉没成本有点大;大伙找工作一定要谨慎一点,说什么转正再谈薪资的都是坑😅
4
OJ项目无法连接远程rabbitmq
5
关于OJ微服务改造方面的问题
4
