Laravel Kafka队列
关注Star一下:Github地址:github.com/chenpeng78/laravel-kafk...
安装
安装PHP依赖库
pecl install rdkafka
在PHP的初始化文件php.ini中添加以下一行语句以开启Kafka扩展。
extension=rdkafka.so
b. 检车 rdkafka 是否安装成功
注意:如果你想在 php-fpm 上运行它,请先重启你的 php-fpm
php -i | grep rdkafka
你的输出应该是这样的
rdkafka
rdkafka support => enabled
librdkafka version (runtime) => 1.6.1-38-g7f0929-dirty
librdkafka version (build) => 1.6.1.255
通过 Composer 安装这个包
composer require phpkafka/laravel-kafka
将 LaravelQueueKafkaServiceProvider 添加到providers数组中config/app.php
phpkafka\LaravelQueueKafka\LaravelQueueKafkaServiceProvider::class,
如果您使用 Lumen,请将其放入 bootstrap/app.php
$app->register(phpkafka\LaravelQueueKafka\LumenQueueKafkaServiceProvider::class);
将这些属性添加到.env 文件中
QUEUE_CONNECTION=kafka
选择配置
KAFKA_BROKERS=127.0.0.1:9092 #kafka地址,多个用,隔开
KAFKA_ERROR_SLEEP=5 #确定的秒数睡眠与kafka交流如果有一个错误(秒)
KAFKA_DEADLOCK_SLEEP=2 #睡眠时检测到死锁(秒)
KAFKA_QUEUE=default #默认队列名
KAFKA_CONSUMER_GROUP_ID=test #默认分组
如果你想为特定的消费者Group运行队列
export KAFKA_CONSUMER_GROUP_ID=”testgroup” && php artisan queue:work –sleep=3 –tries=3
多消费者 1629095586676.jpg1629095586676