配置文件
'default' => [
'host' => 'redis://127.0.0.1:6379',
'options' => [
'auth' => '', // 密码,可选参数
'db' => 10, // 数据库
'max_attempts' => 5, // 消费失败后,重试次数
'retry_seconds' => 5, // 重试间隔,单位秒
]
],
'consumer' => [ //这个处理计算进程
'host' => 'redis://127.0.0.1:6379',
'options' => [
'auth' => '', // 密码,可选参数
'db' => 1, // 数据库
'max_attempts' => 5, // 消费失败后,重试次数
'retry_seconds' => 5, // 重试间隔,单位秒
]
],
这是配置的两个连接名 default 和 consumer
消息列表代码
use Webman\RedisQueue\Consumer;
class Queue1 implements Consumer
{
// 要消费的队列名
public $queue = "QUEUE_1";
// 连接名,对应 config/redis_queue.php 里的连接`
public $connection = 'default';//default 能执行,但改成 consumer 却执行不了,是什么原因?
// 消费
function consume($job_data){
var_dump("HELLO");
}
}
调用代码
$queue_name = "QUEUE_1";
$data_list = ['a'=>'b'];
Client::send($queue_name, $data_list);
为什么只有 $connection="default"才会执行consume方法?而改成consumer却不行?谢谢
修改完了,重启了吗?