php - 从 PHP 启动并发一次性 Heroku dynos
问题描述
我正在从命令行运行一个(分离的)PHP 脚本,该脚本本身用于shell_exec()
启动其他 PHP 脚本。我曾预计这些脚本中的每一个都会几乎立即启动,但它似乎正在等待一个完成,然后代码继续执行下一个。
这基本上就是我正在运行的。如何让我的脚本继续通过 foreach 循环而不等待每个循环shell_exec()
终止?
foreach ($rows as $row) {
$output = shell_exec("php path/to/file.php $estab_code") ;
}
真的,我在这里的预期结果是,每个都shell_exec()
应该触发一个新的一次性 Heroku dyno 来启动,所有这些都同时运行。但是,这似乎没有发生:执行的脚本似乎是从原始测功机运行的。
有任何想法吗?
解决方案
shell_exec 等待命令返回一些东西。为了使事情立即发生并为空,您可以在每个命令上添加以下内容:
> /dev/null 2>/dev/null &
像这样的东西:
foreach ($rows as $row) {
$output = shell_exec("php path/to/file.php $estab_code > /dev/null 2>/dev/null &");
}
推荐阅读
- c++ - 单 PID 双摆
- python - SCAPY FORM REQUEST 不返回任何数据
- python - Anaconda 每次在新的 conda 环境中安装软件包时都会下载软件包吗?
- python-3.x - 元组组件 16 中的形状不匹配。预期 [1,?,?,3],得到 [1,1,242,640,3]
- postgresql - PostgreSQL 因真空和自动真空而失败
- c++ - 错误 C2440:“正在初始化”:无法从“std::vector<_Ty>”转换为“std::vector<_Ty>”
- node.js - 使用 Vuejs 使用一个选项卡进行控制,另一个用于显示
- python - 如何在 Django Channels 消费者连接方法中执行获取请求?
- firebase - TypeORM + Express 部署到 Firebase 云功能无法连接到 Cloud SQL
- python - 如何解决重复使用估计模型的 def 函数时出现的这个 tensorflow saver 恢复错误