【问题标题】:Heroku PHP hosting timeoutHeroku PHP 托管超时
【发布时间】:2012-10-28 05:24:44
【问题描述】:

我目前正在使用 PHP 和 Facebook API 主持一个关于 Heroku 的研究项目。它有点密集,所以它超过了 Heroku 的 30 秒响应时间限制。在他们的支持下,他们建议使用后台进程来执行此操作(https://devcenter.heroku.com/articles/background-jobs-queueing),但他们没有说明我应该如何为 PHP 执行此操作。有人有什么建议吗?

【问题讨论】:

    标签: php heroku background timeout facebook-apps


    【解决方案1】:

    试试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 还是已经可以安装?
    • 您需要install the process compontent 进入您的项目。你不需要整个 symfony2 框架。您可以克隆git repo 或使用composer
    • 请问你把下载的文件放在哪里?我不断收到 Class Symfony\Component\Process\PhpProcess not found 错误。
    猜你喜欢
    • 2012-11-27
    • 1970-01-01
    • 1970-01-01
    • 2018-05-22
    • 2018-07-03
    • 2014-12-20
    • 1970-01-01
    • 2013-05-25
    • 1970-01-01
    相关资源
    最近更新 更多