V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
zhidd
V2EX  ›  问与答

有一个 Python 脚本,运行后就一直死循环工作,怎么通过 http 启动这个脚本和关闭这个脚本,客户 A 和客户 B 只能启动一个脚本

  •  
  •   zhidd · 2018-11-18 17:30:59 +08:00 · 1951 次点击
    这是一个创建于 2231 天前的主题,其中的信息可能已经有所发展或是发生改变。
    现在用 php 调用 python,但是 php 是一直等待返回,因为 python 脚本一直在执行,没有执行完成,php 一直在等他执行完成,,,,,,如果另外再次访问这个 php,php 并没有执行 python 脚本,应该是第一次执行的原因,怎么实现这个效果
    5 条回复    2018-11-18 19:27:29 +08:00
    zhidd
        1
    zhidd  
    OP
       2018-11-18 17:35:40 +08:00
    我发现这个 python 脚本没有执行完成,所有 php 脚本的访问都挂了
    niubee1
        2
    niubee1  
       2018-11-18 17:42:43 +08:00
    我发现你都没说清楚你到底是想要干个什么, 是要 PHP 能一直等呢, 还是先要怎么着, 看来是真的很迷茫
    Tetsuchou
        3
    Tetsuchou  
       2018-11-18 18:06:18 +08:00 via iPhone
    用 supervisor 控制启动停止,再另开个 Python 脚本把 http 服务和 os.system 粘起来
    lgh
        4
    lgh  
       2018-11-18 19:23:46 +08:00 via iPhone
    如果你的 PHP 不需要关心 Python 的执行结果,那就用异步方式执行 Python 脚本,看看 celery 之类的框架。
    ThirdFlame
        5
    ThirdFlame  
       2018-11-18 19:27:29 +08:00
    system('python2 xxx.py 1>/dev/null 2>&1 &')
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2090 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 00:50 · PVG 08:50 · LAX 16:50 · JFK 19:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.