NuistOJv4
2017/05/25是v4的第一次commit的日子。
截至到2019/1/12,已经有1602次commit,20+ contributors了。上线时间也超过了3个学期。
OJV4真的是一个很棒的系统,速度和稳定性上都有了巨大提升(according to @nwq)。感谢学长们的奇思妙想和不懈努力。
在v4项目中,我主要参与了一些安全性问题的检测,和消息系统模块的开发。
在开发和优化v4的过程中,遇到的问题有时候十分棘手,很难在v4的基本框架下进行优化。
希望自己能创造出一个更理想的v5,然后在一年或两年之后再被学弟学妹们推翻吧~
Leverage
NuistOJv5, 目前我希望称其为 Leverage .
原因比较多吧,更多是一拍脑袋想出来的东西。
- Leveraging performance and scalability
- Leveraging conservative and aggressive
3rd map’s name of Chapter L in Cytus. (L3 (Leverage) – Roar, On The Deserted Lands)
这也是我在v4中所期望的。
Basic Structure
不出意外,将会是 Node.js + vue.js + mysql + mongo + redis + C version judger 的模式。
Node 这一套2019年刚刚接触,几乎所有的东西都要现学。
也算是送给自己的新年礼物吧!
Features
由于还没有最终确定下来具体的框架,所以只能先大致想一下什么要保留,什么要改进。
Expected to be Inherited
- 分离的Judger和Updater
Expected to be Removed
- 奇怪的分表
- 冗余代码
- 混乱的前后端
- 不友好的查询搜索
- 生硬的消息系统
- Markdown前后台不统一的问题
- 导入名单优化
Expected, but hard to implement or not essential
- [Core] Special Judge / OI logic
- [Website] 在v4中被废弃的积分
- [Website] 在v4中被废弃的题解/提问
暂时想到这么多,身体要紧,先睡了
本作品使用基于以下许可授权:Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
💡 我才发现你博客改版了
2333