HUSTOJ特性 开源 全部采用开源技术,不仅仅是提供源代码,搭建HUSTOJ?不需要购买任何商业软件。 采用成熟的Linux32位系统平台,通过目录锁定和用户锁定以及系统调用限制避免恶意答案损害系统。 支持负载均衡,可以将web服务器、数据库服务器、判题服务器分机架设,支持多台判题服务器同时工作。 支持单台服务器运行多个实例,即单机运行多套OJ互不影响,可降平均低运行成本。
### HUSTOJ新浪云安装图示说明
#### HUSTOJ特性概述
HUSTOJ是一款基于开源技术构建的在线编程评测系统,其特点主要包括:
- **完全开源:**HUSTOJ不仅提供了全部源代码,而且在搭建过程中无需使用任何商业软件,这大大降低了部署成本,并且方便用户进行二次开发或自定义调整。
- **稳定安全的Linux平台:**该系统采用了成熟的32位Linux系统作为底层平台,并通过目录锁定、用户锁定以及对系统调用的限制等手段来保障系统的安全性,防止恶意代码可能造成的损害。
- **负载均衡支持:**HUSTOJ支持将Web服务器、数据库服务器及评测服务器分开部署,实现负载均衡。这意味着可以根据实际需求将这些组件分布到不同的服务器上,提高系统的稳定性和处理能力。
- **多实例运行:**在同一台服务器上,HUSTOJ能够支持运行多个独立的在线评测系统实例,这意味着可以在同一物理机上运行多套不同的在线评测系统,降低总体拥有成本。
#### 安装步骤详解
根据提供的部分内容,我们可以进一步细化HUSTOJ在新浪云上的安装步骤:
1. **登录并选择安装:**
- 使用新浪微博账号登录新浪云计算平台。
- 进入应用管理页面,选择安装HUSTOJ应用。
- 链接地址为:<http://sae.sina.com.cn/?m=apps&a=detail&aid=92>。
2. **输入域名:**
- 输入一个新的域名,确保该域名未被其他应用占用。
3. **初始化应用:**
- 进行数据库初始化操作。
- 登录应用首页,注册管理员账号(用户名:admin)。
- 注销管理员账号后,再注册一个名为“judge”的评测账号。
- 登录管理员账号,为“judge”账号分配http_judge权限。
4. **增加题目:**
- 在系统中添加新的题目,例如题目“A+B”。
5. **管理应用:**
- 对应用进行各项设置和管理操作。
- 修改数据存储权限为私有。
6. **管理测试数据:**
- 可以添加更多的测试数据以供评测使用。
7. **安装并配置LiveCD:**
- 下载并安装开源虚拟机Vbox(注意不要使用商业软件如VMware以避免版权问题)。
- 启动LiveCD(下载地址:<http://code.google.com/p/hustoj/wiki/HUSTOJ_LiveCD>),按照提示进行操作。
- 默认用户名为ubuntu,密码为freeproblemset。
- 执行在线更新命令(sudo update-hustoj)以保持系统最新状态。
- 编辑LiveCD中的配置文件以适应实际环境。
8. **重启服务:**
- 重启所有相关服务以使更改生效。
9. **查找题目:**
- 在系统中查找已添加的题目。
10. **测试提交:**
- 提交测试代码以验证系统的正确性。
11. **创建SVN库:**
- 创建SVN版本控制系统用于代码管理和版本控制。
12. **编辑代码:**
- 编辑题目代码或评测代码。
13. **临时设置vcode为false:**
- 为了方便调试,可以暂时关闭验证码功能。
14. **等待题目通过评测:**
- 提交代码后等待系统自动评测结果。
15. **恢复设置:**
- 在调试完成后,记得将vcode选项恢复为正常状态。
通过以上步骤,用户可以在新浪云上成功安装并配置好HUSTOJ系统,从而建立起一套完整的在线编程评测环境。