zxCoder
V2EX  ›  问与答

有什么管理服务器上多个执行程序的简单方法

  •  
  •   zxCoder · Jul 1, 2021 · 1612 views
    This topic created in 1833 days ago, the information mentioned may be changed or developed.

    感觉应该算不上运维,就是一个项目里需要几个可执行程序,有没有什么比较合适的方法可以管理这些进程的启动,停止,重启等等

    8 replies    2021-07-02 10:07:35 +08:00
    SingeeKing
        1
    SingeeKing  
    PRO
       Jul 1, 2021
    pm2 supervisor
    arischow
        2
    arischow  
       Jul 1, 2021 via iPhone
    screen / tmux

    supervisor

    systemd
    3dwelcome
        3
    3dwelcome  
       Jul 1, 2021
    我最初是用 http 的 cgi 控制的,一些代码初期比较弱,经常要重启服务,只能写 cgi 调用 linux shell 。

    因为可以对接 C 语言,写起来很方便,默认让 http server 直接调用 elf 文件即可。

    但是我看别的大厂发布,还是有比较正规的 Web 管理界面,都是几十个本地服务相互联动。
    dddd1919
        4
    dddd1919  
       Jul 1, 2021
    如果略懂 ruby 的话,可以看看 mina-deploy (实际使用时和 ruby 语法关系不大),看文档 DSL 配置即可,专门处理这种小规模定制化部署任务
    GeruzoniAnsasu
        5
    GeruzoniAnsasu  
       Jul 1, 2021
    d...docker compose? (
    felixcode
        6
    felixcode  
    PRO
       Jul 1, 2021 via Android
    systemd 很多情况够用了
    jim9606
        7
    jim9606  
       Jul 1, 2021
    systemd 可以满足大部分要求,就看你会不会写 service 单元文件了。什么按依赖顺序启动、自动重启、成功通知、集成日志管理统统都有。
    中文 service 文档 ( http://www.jinbuguo.com/systemd/systemd.service.html ) 将 unit 、service 、exec 、kill 、timer 五个文档全过一遍你就大概知道能实现什么程度的复杂控制了。
    allen0125
        8
    allen0125  
       Jul 2, 2021
    要简单快速上手的话 supervisor 真不错
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5656 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 54ms · UTC 01:43 · PVG 09:43 · LAX 18:43 · JFK 21:43
    ♥ Do have faith in what you're doing.