感谢 Menci 的帮助与提醒,感谢 Menci 与 t123yh 修好了 syzoj 莫名 System Error 的锅。

为了表述方便,我们用 n 表示你需要的 runner 服务个数。\text{id} \in [0, n)

  1. 首先停用之前的 runner 服务

    systemctl stop syzoj-judge-runner
  2. 拷贝原先的 /opt/syzoj/config/runner-instance.json/opt/syzoj/config/runner-instance-<id>.json ,填入以下内容:

    {
       "WorkingDirectory": "/opt/syzoj/sandbox/tmp<id>",
       "SandboxCgroup": "syzoj-<id>"
    }
  3. 新建 /etc/systemd/system/syzoj-judge-runner@.service 文件并填入以下内容

    [Unit]
    Description=SYZOJ judge runner service %I
    After=network.target rabbitmq-server.service redis-server.service
    Requires=rabbitmq-server.service redis-server.service
    [Service]
    Type=simple
    WorkingDirectory=/opt/syzoj/judge
    User=root
    Group=root
    ExecStart=/usr/bin/node /opt/syzoj/judge/lib/runner/index.js -s /opt/syzoj/config/runner-shared.json -i /opt/syzoj/config/runner-instance-%i.json
    [Install]
    WantedBy=multi-user.target
  4. 最后启动这些 runner

    systemctl start syzoj-judge-runner@<id>

已有 41 条评论

  1. Chang HsinChieh Chang HsinChieh

    你好,请问如何才能把自己的oj放到外网上

    1. 可以参考另一篇博文

  2. 那个mysql客户端怎么启动啊~~
    我输mysql显示:
    The program 'mysql' can be found in the following packages:

    mysql-client-core-5.7mariadb-client-core-10.0
    Try: apt install <selected package>

    嘤嘤嘤

    1. 你这是没装 mysql 吧 ...

      或者路径配置不对 。

      1. 但是我反复安装了n遍了,也在根目录和syzoj目录下安装过几遍了QAQ

        1. apt install mysql-client-core-5.7
          装上面的还不行的话,估计是环境变量出锅了
          另外,别用宝塔lnmp之类的一键

          1. 我觉得他的意思是,系统有两个应用叫mysql,不知道你要用哪一个??QAQ
            那个群管理员现在还没通过我,嘤嘤嘤

            1. 我觉得不是吧,

              您先看下这两个问题:

              1.你有没有装一键包

              2.你装了什么数据库

          2. 貌似他想装的是 mariadb 而不是 mysql ...

            不过按理来说这不科学啊 没搞懂这是什么操作 QAQ

        2. emm ... 您按照官方 Wiki 的教程安装的吗?

          按理来说不会啊,您可以去「LibreOJ开发群」问一下,我没遇到过这种情况。

  3. 不过...多线程有什么用...我突然发现好像不是并行的...

    1. 是的啊 QAQ

      您是不是配置的有问题 ...?

      1. ...同时运行到是同时运行了,但说我测试了一个TLE的程序,一个点跑1s,两个线程一起跑一共跑了2s(现实时间),按理来说应该1s出(是不是我对多线程或者并行理解有误啊qaq)

        1. emmm ... 也许是配置的问题?

          您可以到我的 OJ 测试一下,可以很明显的感受到多个测试点同时 judging ...

          1. 补充 多线程会对代码运行速度产生一定的影响

            不过应该和您说的这个没什么关系 QAQ ...

        2. 补充,测两个测试点两个线程一起跑了2s

  4. 终于有人教我怎么搞多线程了,感谢memset0

  5. 学生机唯一好处是便宜,100+能买到600+的东西

    1. 其实也不尽然

      如果的确还是挺不错的就是了

洛谷3732 [HAOI2017]供给侧改革
上一篇 «
洛谷5070 [Ynoi2015]即便看不到未来
» 下一篇