新坑?速看新项目规划——CowDingOJ
近期由于一些突发奇想,觉得 HydroOJ 简直效率低的不能再低,分布式又很麻烦。于是想着自己能不能开发出一个和 Hydro 一样容易部署,但是又有很强的可拓展性的分布式 OJ。于是这个项目诞生了。
项目介绍
首先来看一下项目的架构:
架构可能还有些修改优化的空间,但是这是目前一个较为灵活的方案。但是不难发现,这个架构仍然存在数据库的写瓶颈,这可能会发生在大量用户同时发送讨论的时候。同时在业务集群中为了灵活每一项细分业务都只有一个容器承担(这样不会产生数据库的竞争,不用处理锁的问题),可能在极其高负载的情况下去世,后续可能会修改。对于评测集群的具体实现方法有待进一步的思考。
但是总的来说,这套架构比起 Hydro all in one 的聪明设计要灵活可扩展的多,在系统运行的重灾区——评测这一方面也做了十足的优化,确保短时大评测量不会影响到系统的其他部分的运行,也可以通过灵活增加评测机来削峰填谷,做到足够省钱。
求加入
如果你也觉得项目很有意思,那么不妨联系 CodingCow (leecodingcow@gmail.com),然后加入我们,一起开启评测的新时代。
求赞助
如果你是某某有钱的大老板,并且觉得这个项目不错,不妨向我们伸出您的援手,给予我们可以更快完成的资源。
“觉得不错的话,给点打赏吧 (✿◕‿◕✿)”

微信支付

支付宝支付 (暂不支持)
新坑?速看新项目规划——CowDingOJ
https://lixuannan.github.io/posts/53925.html