【问题标题】:PHP script timing out/not running to completionPHP脚本超时/未运行完成
【发布时间】:2014-07-20 21:55:52
【问题描述】:

我正在从事的项目的一部分意味着在云实例上运行大量基准测试。为了让我自己更轻松,我想让它们可以通过网络运行,并将输出直接打印到浏览器窗口。

这似乎工作正常,但是,脚本在运行大约 10 分钟后“停止”(即浏览器停止加载) - 不到我的基准测试的一半,我不知道为什么。通过 SSH 连接到服务器并调用 top 表明该进程也正在停止 - 但如果我从命令行调用 ./runscript.sh 它将完成。

<?php

set_time_limit(0);
ignore_user_abort(1);

header("Content-type: text/plain");


ob_implicit_flush(true);
ob_end_flush();

$old_path = getcwd();
chdir("UnixBench");
passthru("./runscript.sh");
chdir($old_path);
?>

在这种情况下,runscript.sh 很简单

#!/bin/bash

./Run &
wait $!

【问题讨论】:

  • 它也可能在网络服务器或浏览器端超时
  • 未考虑浏览器超时。我会尝试在 IE 中运行它(afaik 60 分钟超时),这可能是一个答案
  • 运行这么久的东西应该与浏览器无关,应该从cli运行
  • 不走运。大约在同一时间停止在 IE 中。
  • @Dagon 我意识到这是非常规的,但这纯粹是为了我的方便。如果我可以让它工作,真的有问题吗?

标签: php timeout


【解决方案1】:

在类似的情况下,我将脚本更改为每隔几秒发出一次空格

【讨论】:

  • 我实际上在运行时每 10-20 秒得到一些输出
猜你喜欢
  • 2011-09-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-12-22
  • 2015-12-30
  • 2022-10-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多