3
我目前正在使用PHP和Facebook API在Heroku上主持一个研究项目。它有点密集,所以它已经超过了Heroku 30秒的时间限制来回应。使用他们的支持,他们建议使用后台进程来做到这一点(https://devcenter.heroku.com/articles/background-jobs-queueing),但他们没有说我应该如何为PHP做这件事。有没有人有什么建议?Heroku PHP托管超时
我目前正在使用PHP和Facebook API在Heroku上主持一个研究项目。它有点密集,所以它已经超过了Heroku 30秒的时间限制来回应。使用他们的支持,他们建议使用后台进程来做到这一点(https://devcenter.heroku.com/articles/background-jobs-queueing),但他们没有说我应该如何为PHP做这件事。有没有人有什么建议?Heroku PHP托管超时
尝试Symfony 2 process component。它有一个漂亮和简单的面向过程的OO界面。
use Symfony\Component\Process\PhpProcess;
$command = file_get_contents('/hello_world.php');
if ($command) {
$process = new PhpProcess($command);
$process->run();
if ($process->isSuccessful()) {
$output = $process->getOutput();
// ...
}
else {
throw new Exception($process->getErrorOutput());
}
}
因此,我只是将我现在使用的代码包含在一个文件中,在您的示例hello_world.php中,然后就像你说的那样调用它,它不应该给我一个时间?我需要在Heroku上安装Symfony 2还是已经可用? –
您需要[安装process compontent](http://symfony.com/doc/2.0/components/process.html)到您的项目中。你不需要整个symfony2框架。你可以克隆[git repo](https://github.com/symfony/Process)或使用[composer](https://packagist.org/)。 – max
请把你下载的文件放在哪里?我一直在获取Class Symfony \ Component \ Process \ PhpProcess not found错误。 – Goaler444