laravel 队列实现 使用Beanstalk 报错

在使用队列时总报错
error":{"type":"Symfony\Component\Debug\Exception\FatalErrorException","message":"Class 'Pheanstalk_Pheanstalk' not found","file":"\/var\/www\/html\/fuxing\/vendor\/laravel\/framework\/src\/Illuminate\/Queue\/Connectors\/BeanstalkdConnector.php","line":16}}

BeanstalkdConnector.php里面是
<?php namespace Illuminate\Queue\Connectors;

use Illuminate\Queue\BeanstalkdQueue;
use Pheanstalk_Pheanstalk as Pheanstalk;

class BeanstalkdConnector implements ConnectorInterface {

/**
 * Establish a queue connection.
 *
 * @param  array  $config
 * @return \Illuminate\Queue\QueueInterface
 */
public function connect(array $config)
{
    $pheanstalk = new Pheanstalk($config['host']);

    return new BeanstalkdQueue(
        $pheanstalk, $config['queue'], array_get($config, 'ttr', Pheanstalk::DEFAULT_TTR)
    );
}

}

我是参照官方文档写的
在模型里面是这样
public function first($job,$data)
{
    $this->savefirst($data['user'], $data['keys'],  $data['items'], $data['type']);   //是模型里面写的处理工作的函数

    $job->delete();


}

在controller里面调用像这样`
Queue::push('Timeline@first',array('user'=>$user,'items'=>$items,'type'=>$type,'keys'=>$keys));

我在这两个文件的开头都有加
use Illuminate\Queue\QueueManager;
use Illuminate\Queue\BeanstalkdQueue;

为什么会报错呢?难道一定要像laravel自带的mail.php里面一样封装好对应的queue函数啊
这和官方网站上说好的不一样啊啊啊啊啊啊

求大神指点
已邀请:

可燃冰

赞同来自: FiveSay

最终折腾了好久
发现是Beanstalk版本的问题
原来composer里面require的是
"pda/pheanstalk": "dev-master",

估计那个分支可能不能用了
改成了
"pda/pheanstalk": "2.1",

再更新下
就不会报这种错了

要回复问题请先登录注册