• 请不要在回答技术问题时复制粘贴 AI 生成的内容
xiangyuhahah
V2EX  ›  程序员

求问, 我在脚本里起 uwsgi uwsgi.ini 服务, 结果 uwsgi 的父进程是脚本, 导致阻塞了脚本, 我想让脚本不受阻塞

  •  
  •   xiangyuhahah · May 25, 2020 · 2720 views
    This topic created in 2362 days ago, the information mentioned may be changed or developed.

    www 4053 4046 3 16:06 ? 00:00:00 /opt/work/venv/bin/uwsgi xxxx 上面就是我出现的问题情况. 我起的 web 服务的父进程是脚本. 导致阻塞了脚本了.

    11 replies  •  2020-06-03 13:20:46 +08:00
    xiangyuhahah
    xiangyuhahah
    OP
    May 25, 2020
    1
    本身这个脚本就是一个子进程. 脚本中起的 web 服务变成脚本的子进程了. 我想 web 服务的父进程 PID 是 1. 怎么操作?
    ruanimal
    ruanimal
    May 25, 2020
    2
    nohup ?
    jimmyismagic
    jimmyismagic
    May 25, 2020
    3
    加个后台运行就好了 uwsgi.ini 里加一行
    daemonize=uwsgi.log
    xiangyuhahah
    xiangyuhahah
    OP
    May 25, 2020
    4
    @jimmyismagic daemonize=uwsgi.log 已经用了. 没有解决问题
    xiangyuhahah
    xiangyuhahah
    OP
    May 25, 2020
    5
    最后是& 解决的问题
    clino
    clino
    May 25, 2020 via Android
    6
    我一般用 supervisor 管理 daemon
    clino
    clino
    May 25, 2020 via Android
    7
    脚本如果用 python,用 os.popen,可以做到不挂起
    Sanko
    Sanko
    May 26, 2020 via Android
    8
    一般我用 nohup xxx &
    xiangyuhahah
    xiangyuhahah
    OP
    May 26, 2020
    9
    @clino 我也和 leader 推荐过 supervisor, leader 不想用
    julyclyde
    julyclyde
    May 26, 2020
    10
    所以说白了其实还是不应该在脚本里启动后台服务
    应该把后台服务托管给 init/systemd
    xiangyuhahah
    xiangyuhahah
    OP
    Jun 3, 2020
    11
    @julyclyde 嗯嗯, 可以用 setsid 来做这件事
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   952 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 21:45 · PVG 05:45 · LAX 13:45 · JFK 16:45
    ♥ Do have faith in what you're doing.