负载均衡式在线OJ
负载均衡式OJ
1. 项目技术和开发环境
项目技术
- C++ STL 标准库
- Boost 库
- cpp-httplib 第三方开源网络库
- ctemplate 第三方开源前端网页渲染库
- jsoncpp 第三方开源序列化、反序列化库
- 负载均衡设计
- 多进程、多线程
- MySQL C Connect
- html /css/js/jquery/ajax
开发环境
- centos 7 服务器
- vim / gcc(g++) / makefile
2. 结构设计和实现思路
我们的项目核心是如下三个模块:
目录 | 介绍 |
---|---|
comm |
公共模块,存放公用的代码如一些工具类 |
compile_server |
编译模块,编译运行远端提交的代码 |
oj_server |
服务模块,提供题目列表、题目查看、题目编写,实现反向代理负载均衡的功能 |
在线判题方面我们只实现类似牛客、力扣等网站的题目列表和在线编程的功能。