我有一个nodejs脚本,它打开一个torrent流,然后我用它来抓取截图。目前我使用的bash脚本实际上并不是可扩展的。我决定通过使用方便的FFMpeg
包装器将大部分内容移至php。
问题是我似乎无法在没有阻止的情况下从php中启动nodejs脚本。这是我使用exec()
node ~/node/peerflix/app.js 'test.torrent' &> /dev/null &
无论我尝试什么,脚本都会挂起exec。我只是想把它发送到后台。换句话说,我如何异步执行nodejs脚本并将其发送到后台而不关心输出。
能够获得过程的PID也很好,所以我可以在完成后杀死它
我一直在研究ReactPHP,也许这将是一个解决方案,但我不知道如何实现这一目标。
答案 0 :(得分:0)
让我提出一些建议:
使用forever进行可管理的运行。
你可以在jash跑步者脚本中使用它作为bash(我的支持)
npm install forever -g
forever start ~/node/peerflix/app.js 'test.torrent' //in bash
这将永远运行app.js,并可以使用forever cli
进行监控