V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
Pencilrain
V2EX  ›  Linux

Linux 有没有自带的 process manager?

  •  
  •   Pencilrain · 2019-02-04 08:01:57 +08:00 · 4751 次点击
    这是一个创建于 2121 天前的主题,其中的信息可能已经有所发展或是发生改变。
    监控某个程序,若(任意原因)退出,就自动重新运行,可以加条件,如监控返回值 /输出、设置最多运行次数,最小时间间隔等

    功能类似于 npm 的 pm2/forever,这些也可以用,但想知道 Linux 有没有自带的命令(不要脚本),谢谢
    16 条回复    2019-02-05 00:33:12 +08:00
    est
        1
    est  
       2019-02-04 08:08:00 +08:00 via Android   ❤️ 1
    systemd

    实在不行自己写个脚本
    luozic
        2
    luozic  
       2019-02-04 09:03:10 +08:00 via iPhone
    有 python 版本的守护程序。
    yanzixuan
        3
    yanzixuan  
       2019-02-04 09:15:06 +08:00
    @luozic 你说的是 supervisor ?
    yuikns
        4
    yuikns  
       2019-02-04 09:21:22 +08:00
    http://supervisord.org/
    要是是在容器,也可以试试这个:
    https://github.com/ochinchina/supervisord
    anguiao
        5
    anguiao  
       2019-02-04 09:56:44 +08:00
    systemd 可以把 restart 设成 always,就可以自动重启了
    Cbdy
        6
    Cbdy  
       2019-02-04 09:57:51 +08:00 via Android
    systemd-run
    luozic
        7
    luozic  
       2019-02-04 10:19:10 +08:00
    @yanzixuan 是的,現在 gayhub 上有 rust or go 版本的。
    yanaraika
        8
    yanaraika  
       2019-02-04 10:59:32 +08:00 via Android
    systemd user unit file. pm2/supervisor 相对于 systemd/openrc/sysvinit 就是弟弟
    Pencilrain
        9
    Pencilrain  
    OP
       2019-02-04 11:31:24 +08:00
    目前来看 pm2 比较方便,除了需要 runtime
    libook
        10
    libook  
       2019-02-04 11:38:08 +08:00 via Android
    systemd 能满足需求
    jam1024
        11
    jam1024  
       2019-02-04 12:29:53 +08:00
    watch -n 3 "你要执行的程序"

    -n 为参数设置程序如果结束后自动多少秒重启
    Cbdy
        12
    Cbdy  
       2019-02-04 15:59:56 +08:00 via Android
    @Pencilrain
    目前我司用 PM2 来跑 Java 进程,效果良好
    没有持续发布需求可以考虑 systemd unit
    一步到位选 Docker ( k8s ),需要有一定运维能力
    我已经考察过了,开源世界没有其他更好的解决方案了
    Cbdy
        13
    Cbdy  
       2019-02-04 16:01:15 +08:00 via Android
    Linux 自带命令就是我 6 楼说的那个
    janxin
        14
    janxin  
       2019-02-04 23:26:36 +08:00
    @Cbdy 持续发布需求 systemd 也没什么问题呀
    Cbdy
        15
    Cbdy  
       2019-02-04 23:31:42 +08:00 via Android
    @janxin 没有 PM2 好用
    janxin
        16
    janxin  
       2019-02-05 00:33:12 +08:00
    @Cbdy 我觉得主要区别是 pm2 有个比较漂亮的前端,其他的功能似乎一样的呀,systemd 甚至更多一点
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1207 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 18:21 · PVG 02:21 · LAX 10:21 · JFK 13:21
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.