Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从beanstalkd队列执行作业的单独php脚本。需要访问cakephp应用程序_Php_Cakephp_Cakephp 2.0_Beanstalkd - Fatal编程技术网

从beanstalkd队列执行作业的单独php脚本。需要访问cakephp应用程序

从beanstalkd队列执行作业的单独php脚本。需要访问cakephp应用程序,php,cakephp,cakephp-2.0,beanstalkd,Php,Cakephp,Cakephp 2.0,Beanstalkd,我正在使用beanstalkd对作业进行排队 我在app/Lib/Queue/Beanstalk/workers/DownloadFileWorker.php中编写了一个php脚本 <?php require_once(dirname(__DIR__) . DIRECTORY_SEPARATOR . 'config.php'); class DownloadS3FilesWorker extends PHPQueue\Worker { /** * @var \PHPQueue\Backe

我正在使用beanstalkd对作业进行排队

我在
app/Lib/Queue/Beanstalk/workers/DownloadFileWorker.php中编写了一个php脚本

<?php
require_once(dirname(__DIR__) . DIRECTORY_SEPARATOR . 'config.php');
class DownloadS3FilesWorker extends PHPQueue\Worker
{
/**
 * @var \PHPQueue\Backend\FS
 */
    static private $dataSource;
    public $factory = null;
    private $queueConfig = array();
    private $queueBackend = 'Beanstalkd';

    public function __construct()
    {
        parent::__construct();
        $this->queueConfig  = EPubConfig::getConfig($this->queueBackend);
        self::$dataSource = \PHPQueue\Base::backendFactory($this->queueBackend, $this->queueConfig);
    }

    /**
     * @param \PHPQueue\Job $jobObject
     */
    public function runJob($jobObject)
    {
        parent::runJob($jobObject);
        $jobData = $jobObject->data;
        App::uses('FileFactory', 'Lib/File');
        $this->factory = new FileFactory($jobData); 
        $this->factory->downloadAllFiles();
        $this->result_data = $jobData;
    }
}

FileFactory
本身将使用许多其他与蛋糕相关的类。

在Console/Command下作为Shell编写


问题解决了

我最近看到很多人真的对兔子大发雷霆。甚至CakePHP的核心贡献者MarkStory在2011年CakeFest上也谈到了它:可能有更多的文档和社区支持。只是想一想,祝你好运!谢谢@alairock我会仔细看的。只是一个简单的问题,你以前试过哪一个?@alairock复习完这篇文章后,我想我会选择beanstalk,因为我实际上使用的是工作队列,而不是消息队列。很抱歉,回复太晚(过去几天一直在旅行)。实际上,我们正在积极使用RabbitMQ在多个守护进程服务器上启动作业。它工作得非常好,并且配置和设置相当简单。
PHP Fatal error:  Class 'App' not found in /var/virtual/someapp/Lib/Queue/Beanstalk/workers/DownloadFileWorker.php on line 27