在线运行代码, 比如 http://jsrun.net 就是支持非常多种语言的支持。
他们是把用户提交上来的代码保存到一个文件里面, 如果是 c 语言就要先进行编译,然后再执行可执行文件,然后再发执行结果返加到用户看到的网页上面, 比如 http://c.jsrun.net 就是 c 语言的在线代码运行。
其中的过程其实非常复杂, 但是 JSRUN 的在线执行非常的快, 主要是用了 超高速 SSD 增加文件读写能力, 这种 SSD 一般需要 3GB/s 以上的读写速度才可以。
另外还要解决的安全性问题, 用户如果提交上来的是死循环,那么直接机器就卡死了。 如果提交上来的代码是删除整个硬盘,那么服务器就完蛋了。 中间要作非常的多的识别 来排除恶意代码的运行。
JSRUN 是非常好的一个网站,在国内已经是大龙头了, 建议你直接使用他们的服务就可以了。 做这些工作需要大量的精力维护,不建议再重复造轮子。
1
xiri 2020-04-06 18:46:45 +08:00 8
你这个广告打的有点不用心啊,至少换给 id 吧,首页上还能看到你的另一个帖子“我做了一个在线运行代码的网站叫 JSRUN, 大家有兴趣吗?”呢
|
2
renmu 2020-04-06 18:50:16 +08:00 via Android
自问自答 23333
|
3
myqoo 2020-04-06 18:51:44 +08:00
不错,可以用来挖门罗币
|
5
liuxey 2020-04-06 20:46:46 +08:00
恭喜用户 -1
|
6
zhuzhibin 2020-04-06 21:17:46 +08:00 via iPhone
老哥看了你的广告 我不再用 jsrun 了嘻嘻
|
7
Nugine0 2020-04-06 21:20:13 +08:00 via Android
道理我都懂,在线执行速度和 SSD 有啥关系?
|
8
sunnywqf 2020-04-06 22:12:49 +08:00
死循环,删库都已经拦截了,不知道还有什么其他的可以玩玩的?
|
9
yafoo 2020-04-06 23:09:27 +08:00 via Android
支持,老早就收藏了。不过这广告打的确实不用心
|
10
just1 2020-04-06 23:12:22 +08:00
报一个 bug 吧,首页的项目鼠标放预览图上会出现三个按钮,鼠标移到按钮上,预览图上方的白色遮罩会一直闪烁
|
11
lhx2008 2020-04-06 23:16:48 +08:00 via Android
就是 docker 呗
|
12
supercaizehua 2020-04-07 01:23:42 +08:00
建议发到广告节点
|
13
fengshils 2020-04-07 07:31:23 +08:00 via Android
恭喜用户 -1
|
14
daimiaopeng 2020-04-07 09:06:00 +08:00
已报警
|
21
deplives 2020-04-07 15:45:54 +08:00
看了下个人记录,emmm 把广告打得这么清新脱俗的我倒是第一次见
|
22
Eugene1024 2020-04-07 16:36:44 +08:00
话说是如何解决把不同的代码发送到不同的编译器里面去运行呢
|
24
lohiecan OP @Eugene1024 这个简单,调用不同编译器就可以了
|
25
noparking188 2020-04-08 12:44:20 +08:00
我竟然觉得这广告打的有点可爱
|