828华为云征文|Flexus云服务器X实例快速部署在线测评平台,适用各种信息学教学

news2025/1/11 13:00:59

文章目录

      • 如何选配Flexus云服务器X实例服务器
        • HydroOJ
        • HOJ
      • 服务器资源的选取
        • 基础配置
        • 实例规格
        • 镜像、存储、网络
        • 弹性公网IP
        • 云服务器名称
      • 部署HydroOJ
        • 1.设置安全组、开放端口
        • 2.部署HydroOJ回到控制中心,远程登录
      • 部署HOJ
        • 安装docker
        • # 安装docker-compose
        • 部署HOJ

本篇幅为零基础教学,所有的过程都有指引,从选购到部署后的网站配置,无需Linux基础。
可用于部署在线测评系统来提供给高中信息学,ACM类竞赛,信息学类培训机构或个人使用
将部署两个OJ平台,在文末有效果图,可按需进行部署使用。

如何选配Flexus云服务器X实例服务器

Flexus云服务器X实例是一款能自主选择选择可灵活自定义vCPU内存配比,非常适用于部署信息学教学平台,同时拥有海量的公共镜像,在扩展网站插件的时候也非常方便,同时该实例支持在不中断业务的情况下变更规格,提高了资源调整的灵活性和效率,非常适合在进行大规模比赛时即使扩展的场景。

本篇文章将针对HydroOJ 与 HOJ两个OJ平台进行部署教学,下面将提供两个OJ的大致的样式以及优缺点方便选用。

当前,华为云正热烈开展828 B2B企业节活动,其中Flexus X实例的优惠力度极大,非常值得一探。特别是对于那些对算力性能有高标准,并且需要自建MySQL、Redis、Nginx以达到卓越性能的朋友们,这绝对是一个不容错过的机会。

HydroOJ
  • 拥有强大的评测系统,评测设置支持可视化页面配置,可评测 SpecialJudge 题、文件 IO 题、函数交互题、IO 交互题、提交答案题、客观题试卷,支持 Hack 功能,支持自定义编译和运行过程以支持所有存在的题型。
  • 拥有强大的权限系统,可通过六十余项细粒度权限自由管理用户在域内的所有权限。还可将用户分配至小组,设置资源仅对某些小组开放,非常方便学校/培训机构对学生进行分组管理。
  • 拥有作业功能,方便学校/培训机构为学生设置作业。拥有训练计划功能,方便用户分享做题计划。

在这里插入图片描述

HOJ
  • 支持手机端,响应式布局
  • UI美观,拥有讨论区、题目讨论、比赛讨论、同时拥有站内消息系统,支持私有训练、公开训练(题单)
  • 支持testlib的特殊评测、交互评测、子任务评测,高度集中网站配置,操作简单

在这里插入图片描述

服务器资源的选取

根据OJ的使用情况,我们应当选用相应的服务器资源,Flexus云服务器X实例能解决在线测评平台可能会存在阶段性高负荷使用的情况,在资源不足的情况下可以即时补充不需要担心。

在线测评系统对CPU和内存的需求都较高,在此我们仅仅考虑中小型网站索要选用的资源比。因为是零基础教学,所以我们将尽可能的对每一板块都进行介绍,如果您熟悉某一部分可以直接跳过。

首先进入华为云# Flexus云服务器X实例页面,点击购买进入服务器资源选配。

基础配置

在这里插入图片描述

计费模式 : 包年/包月(测试选择 : 按需计费)

区域 : 默认选择离您当前位置最近的,不用改变

实例规格

选择服务器内存与vCPU大小

在这里插入图片描述

Hydro建议最低配置 :CPU: 2核 内存: 4G
HOJ官方给出的推荐配置 :

不建议使用官方给出的最低服务器配置,在多数服务器中都会出现内存不足,测评机挂机的现象,无法正常测评,甚至网站崩溃。

推荐程度CPU内存硬盘建议
最低服务器配置1核2Gn*20G只推荐测试用,内存不足…
推荐服务器配置n*2核n*4Gn*20G推测大约n*(100~200)人使用
镜像、存储、网络
  • 镜像

可以使用CentOS , Ubuntu , Debian 这几个Linux发行版本,尽量选择已经被测试过的版本。

CentOS 8.2 64bit(40GiB)
Ubuntu 22.04 server 64bit(10GiB)
Debian 9.0.0 64bit(40GiB)

Ubuntu 22.04 server 64bit(10GiB) 对于低内存的服务器不是很友好,建议内存大于4G以上使用。

  • 存储

建议预留20GB的内存就能完成日常使用,如果选用HOJ 需要预留 30GB左右。

  • 网络

默认即可

弹性公网IP

务必购买 : 不使用弹性公网IP的云服务器不能与互联网互通,仅可作为私有网络中部署业务或者集群所需云服务器进行使用。

后续为服务器挂载临时测评机的时候无需购买

在这里插入图片描述

要考虑在线测评平台主要应用的场景,一般来说对于普通用户的一次请求大概占用 0.4M/s , 对宽带的选用我们需要考虑很多东西, 网站是否动态化,是否有相关的文件需要下载,是否要进行比赛。

一般来说如果仅仅用于日常评测使用,推荐使用按宽带计费,每日使用人数 / 20 的宽带足以 。 超过100人可以按照 每日使用人数多50再加1MB ,大型OJ需要自行进行测试 。

需要进行比赛,日常使用人数较少,可以使用按流量计费 ,可以直接选大宽带, 我测试的服务器因为不会有很大的压力,所以选择的是 4MB宽带。

云服务器名称

在当前位置设置密码,重命名

在这里插入图片描述

购买服务器即可

部署HydroOJ

1.设置安全组、开放端口
  1. 进入服务器的控制中心,点击安全组 , 配置规则

在这里插入图片描述

  1. 点击入方向规则,添加端口信息
    在这里插入图片描述

  2. 添加端口信息 开放80,443,2019,8888,5050,27017 端口 , 优先级为1

在这里插入图片描述

  1. 同理添加出方向 80 端口 , 优先级为 1
2.部署HydroOJ回到控制中心,远程登录

按照图示操作即可。

在这里插入图片描述

因为 Hydro 有一键部署包 , 直接运行下面的命令,等待几分钟即可。

cLANG=zh . <(curl https://hydro.ac/setup.sh)

中途可能会有部分警告,不用担心,只要安装完成后几个容器能正常 open 即可。

最终使用刚刚创建的弹性公网IP就能访问自己创建的OJ平台。

在这里插入图片描述

部署HOJ

需要注意的是HOJ的UI虽然更加的现代化,但是HOJ没有一键部署的功能,下面我将一点一点引导您进行HOJ的部署。

![[Pasted image 20240906165814.png]]

首先进入到服务器的后台

安装docker
  1. 安装需要的包
sudo apt-get update

安装依赖包

sudo apt-get install \
   apt-transport-https \
   ca-certificates \
   curl \
   gnupg-agent \
   software-properties-common

Do you want to continue? [Y/n] 输出 Y

添加 Docker 的官方 GPG 密钥

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

在这里插入图片描述

设置远程仓库

sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) \
  stable"

Press [ENTER] to continue or Ctrl-c to cancel. 按一下回车

安装 Docker-CE

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

验证是否成功

sudo docker run hello-world

如果成功会显示如下场景 :
在这里插入图片描述

如果未成功,请第一时间检查自己机器的内存,如果小于3G可能是因为内存溢出导致的,只能升级配置在使用。

# 安装docker-compose
  1. 下载
sudo curl -L https://github.com/docker/compose/releases/download/1.28.6/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose

授权

sudo chmod +x /usr/local/bin/docker-compose
部署HOJ

一键部署,需要等待大概10-20分钟

git clone https://gitee.com/himitzh0730/hoj-deploy.git && cd hoj-deploy

cd standAlone

docker-compose up -d

docker ps -a

目前,华为云正在盛大举办其年度828 B2B企业节,这是一次专为企业用户打造的数字盛宴,汇聚了众多云计算产品与服务的超值优惠。在这场活动中,Flexus X实例以其前所未有的促销力度,成为了众人瞩目的焦点。

Flexus X实例,作为华为云旗下的高性能计算解决方案,凭借其强大的算力性能和灵活的资源配置,能够满足各种复杂应用场景的需求。无论是大数据分析、机器学习、还是高性能计算,Flexus X都能提供稳定、高效的支持。

而对于那些对自建数据库、缓存、以及Web服务器性能有着严格要求的用户来说,Flexus X实例更是不可多得的选择。它能够轻松应对MySQL数据库的高并发访问,确保数据的快速读写与安全性;同时,对于Redis这样的高性能缓存系统,Flexus X也能提供充足的资源保障,确保缓存命中的高效与稳定。此外,在Nginx作为反向代理或负载均衡器时,Flexus X实例同样能发挥出其强大的网络处理能力,为用户的Web应用提供流畅、稳定的访问体验。

因此,如果您正寻找一款性能卓越、灵活可靠的云计算解决方案,那么华为云828 B2B企业节中的Flexus X实例优惠活动,无疑是一个值得您重点关注和把握的机会。不妨现在就登录华为云官网,了解更多详情,并享受这次难得的促销福利吧!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2111411.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vatee万腾平台:赋能企业,共筑智慧经济新高地

在智慧经济时代的大潮中&#xff0c;企业如何把握机遇&#xff0c;实现转型升级&#xff0c;成为行业内的佼佼者&#xff1f;Vatee万腾平台以其卓越的技术实力、前瞻性的战略眼光和全方位的服务体系&#xff0c;正逐步成为企业数字化转型的坚实后盾&#xff0c;赋能企业&#x…

Day-06-QFileDialog文件操作

一、实现打开文件选择对话框 1、程序演示 2、相关代码 void Widget::on_QFileDialog_clicked() {QString fileName QFileDialog::getOpenFileName(this, tr("Open File"),"D:/QT project/", /*注意修改自己的文件打开地址*/tr("Text (*.txt *.d…

又一个新的开源AI项目!!【送源码】

好家伙&#xff0c;国内大模型发展太猛了&#xff01; 旗舰端侧模型面壁「小刚炮」系列进化为全新 MiniCPM 3.0 基座模型&#xff0c;再次以小博大&#xff0c;以 4B 参数&#xff0c;带来超越 GPT-3.5 的性能&#xff0c;强得不像端侧模型。 并且&#xff0c;量化后仅 2GB 内…

【Hadoop|HDFS篇】HDFS的读写流程

1. HDFS的写流程 1.1 剖析文件的写入 副本存储节点的选择问题&#xff1a; 第一个副本在Client所在的节点上&#xff0c;如果客户端在集群外&#xff0c;随机选一个。第二个副本在另一个机架的随机一个节点上。第三个副本在第二个副本所在的机架的随机节点上。 2. HDFS的写流…

Redis 集群:如何实现数据的高效分片与负载均衡

Redis 集群&#xff1a;如何实现数据的高效分片与负载均衡 一 . 基本概念二 . 数据分片算法2.1 哈希求余算法2.2 一致性哈希算法2.3 哈希槽分区算法核心思路Redis 集群中最多只能有 16384 个分片吗 ?为什么一定要是 16384 个槽位 ? 三 . 基于 docker 进行集群的搭建3.1 创建目…

《MaPLe: Multi-modal Prompt Learning》中文校对版

系列论文研读目录 文章目录 系列论文研读目录题目&#xff1a;《Maple&#xff1a;多模态提示学习》摘要1.简介2.相关工作视觉语言模型&#xff1a;提示学习&#xff1a;视觉语言模型中的提示学习&#xff1a; 3.方法3.1.回看CLIP编码图像&#xff1a;编码文本&#xff1a;Zero…

【vue、UI】使用 Vue2 和 Element UI 封装 CSV 文件上传组件,实现csv回显

文章目录 前言组件功能概述实现效果组件模板结构组件的核心逻辑1.数据属性定义2.方法拆解3.CSV 文件解析方法4. 错误处理方法 组件样式完整组件代码总结待优化的地方 前言 在 Vue2 项目中&#xff0c;我们经常需要封装一些可重用的组件来提升开发效率。本文将介绍如何使用 Vue…

Linux工程管理文件Makefile-入门篇

1.Makefile简介 Makefile是在Linux环境下 C/C 程序开发必须要掌握的一个工程管理文件。当你使用make命令去编译一个工程项目时&#xff0c;make工具会首先到这个项目的根目录下去寻找Makefile文件&#xff0c;然后才能根据这个文件去编译程序。那Makefile在编译过程中到底起了…

T7:咖啡豆识别

T7&#xff1a;咖啡豆识别 **一、前期工作**1.设置GPU,导入库2.导入数据3.查看数据 **二、数据预处理**1.加载数据2.可视化数据3.配置数据集 **三、构建CNN网络模型**1、手动搭建2、直接调用官方模型 **四、编译模型****五、训练模型****六、模型评估****七、预测**八、暂时总结…

Spring-容器:IOC-基于注解管理Bean

目录 一、基于注解管理Bean&#xff08;重点&#xff09;1.1、概述1.2、开启组件扫描1.2.1、指定要排除的组件1.2.2、仅扫描指定组件 1.3、使用注解定义Bean1.4、使用Autowired注入1.4.1、属性注入1.4.2、set注入1.4.3、构造方法注入1.4.4、形参注入1.4.5、无注解注入1.4.6、联…

自幂数判断c++

题目描述 样例输入 3 152 111 153样例输出 F F T 代码如下&#xff1a; #include<bits/stdc.h> using namespace std; long long m,a; int main(){cin>>m;for(int i1;i<m;i){cin>>a;long long ta,n[10],cc0,s0;while(t!0){//求位数与拆位n[cc]t%10;tt/…

报错:Reached the max session limit(DM8 达梦数据库)

报错:Reached the max session limit - - DM8 达梦数据库 1 环境介绍2 数据库启动SYSTEM IS READY后面日志3 数据库刚启动日志4 达梦数据库学习使用列表 1 环境介绍 某项目无法连接数据库,报错:超过最大会话数限制 , 检查 dmdba ulimit -a openfiles 已改检查 dm.ini 其中 MAX…

中间代码例题

答案&#xff1a;D 知识点&#xff1a; 中间代码是一种简单且含义明确的记号系统&#xff0c;可以有若干形式&#xff0c;它们的共同特征是与机器无关。 最常见的中间代码有&#xff1a;后缀式&#xff0c;语法树&#xff0c;三地址码&#xff0c;四元式 这些往往是数据&am…

迪普防火墙接口故障处理

一、防火墙故障初查 一台捷普防火墙&#xff0c;突然间业务不通&#xff0c;接口UP&#xff0c;策略正常&#xff0c;区域正常&#xff0c;互联地址就是不能ping通。 如上&#xff0c;接口状态很正常。 如上&#xff0c;互联设备ping不通。 二、锁定故障问题点 检查arp表&…

卷轴模式系统APP源码之产品分析:探索其设计精髓与市场潜力

在移动互联网的浪潮中&#xff0c;各类创新应用层出不穷&#xff0c;其中&#xff0c;“卷轴模式系统APP”作为一种融合了传统文化元素与现代交互设计的产品&#xff0c;正逐渐引起市场的关注。本文将从产品设计的角度&#xff0c;深入分析卷轴模式系统APP的源码特性、用户体验…

CVPR 2024最新论文分享┆YOLO-World:一种实时开放词汇目标检测方法

论文分享简介 本推文主要介绍了CVPR 2024上的一篇论文《YOLO-World: Real-Time Open-Vocabulary Object Detection》&#xff0c;论文的第一作者为Tianheng Cheng和Lin Song&#xff0c;该论文提出了一种开放词汇目标检测的新方法&#xff0c;名为YOLO-World。论文通过引入视觉…

思科IP访问控制列表4

#网络安全技术实现# #任务四命名访问控制列表的控制4# #1配置计算机的IP 地址、子网掩码和网关 #2配置Router-A的主机名称及其接口IP地址 Router>enable Router#conf t Router(config)#hostname Router-A Router-A(config)#int g0/1 Router-A(config-if)#ip add 192.1…

如何在算家云搭建Flux.1(AI绘画)

一、Flux.1简介 Flux.1 是黑森林实验室发布的 AI 绘图模型&#xff0c;也可以说是 SD 的原班人马打造。其表现出的效果已经超越了 SD3、DALLE3(HD)和 Midjourney v6.0&#xff0c;具有强大的出图能力&#xff0c;相比 SD3 拥有更优秀的提示词理解能力&#xff0c;更强的文字生…

内网渗透—横向移动非约束委派约束委派

前言 今天依旧是横向移动的内容&#xff0c;委派主要分为三类非约束委派、约束委派、资源委派。今天主要讲前面两个内容&#xff0c;资源委派留到最后再讲。 实验环境 Web&#xff1a;192.168.145.137&#xff0c;192.168.22.28 DC&#xff1a;192.168.22.30 非约束委派 原…

6.科学计算模块Numpy(3)对ndarray数组的常用操作

引言 众所周知&#xff0c;numpy能作为python中最受欢迎的数据处理模块&#xff0c;脱离不了它最核心的部件——ndarray数组。那么&#xff0c;我们今天就来了解一下numpy中对ndarray的常用操作。 通过阅读本篇博客你可以&#xff1a; 1.掌握ndarray数组的切片和copy 2.学会…