类似于aliyun的ecs服务器,y总在服务器上(VM)虚拟出多个节点(虚拟机),y总应该没钱搞多个服务器搭建ecs云服务器集群系统,应该是vps,由于ip独立,虚拟机脱离服务器独立存在虚拟机与物理机,虚拟机的IP独立时是桥接模式,当我们用NAT模式时虚拟机与物理机是共用一个IP的,我们远程连接时如果是桥接直接上IP即可,如果是NAT我们需要用端口登录,我们可以通过远程连接(acwing/aliyun/xshell的账户登录)到y总服务器上的虚拟机(而acwing虚拟机的操作系统(docker镜像)是y总自己写的,就类似ubuntu镜像,制作完镜像之后,我们通过vm搭建虚拟机),实现云端虚拟操作系统。
我们先访问云服务器进程,登录时发送数据帧给云服务器,告诉它我们的请求,云服务器返回虚拟机数据包,我们就可以在浏览器中查看了,就相当于时远程登录虚拟机。
没登录我们访问y总服务器的acwing,就是一个网页oj(在y总服务器上部署的),在每个虚拟机中都部署了一个web服务(app),我们远程登录虚拟机的操作,改变数据,每台虚拟机内部的web数据不同,实现账户个性化。动态网页与静态网页的区别,访问虚拟机的ip+web服务器占用端口。
消息就是虚拟机之间的信息传输。
在线编译器就是代码和测试数据从虚拟机传到评测机,评测机判断之后返回结果比对输出。
相比于普通网站的目录储存用户信息,登录即将用户的信息包发过去下载合并添加呈现(类似切片合并),qq也是一样的拉取合并。
登录就相当于建立了一根通道(类似v2)在浏览器中呈现虚拟机vnc,就能看到虚拟机中web应用程序app,saber也是一个app。
web开发虚拟机都可以。那自然acwing也可以。
单方面上传时是client静态包无需返回数据针,故静态输入的大小非带宽。
虚拟机带宽与服务器一样,根据isp发放,带宽的大小根据交钱的多少,网线或无线通道优劣的不同。