iankibet/shkafka

Laravel kafka主题监听器

dev-main 2023-12-08 22:15 UTC

This package is auto-updated.

Last update: 2024-09-08 23:56:10 UTC


README

为laravel提供的简单Kafka客户端。

可以监听一个主题并从中消费消息。

也可以向主题发送消息。

要安装此软件包,请在您的终端中运行以下命令

composer require iankibet/shkafka

发布配置

php artisan vendor:publish --provider="Iankibet\Shkafka\ShKafkaServiceProvider"

用法

安装并发布配置后,您可以通过将以下内容添加到您的.env文件中来使用此软件包

您可以从您的kafka集群中获取这些值

如果您需要免费的kafka集群,您可以从upstash.com获取

KAFKA_BROKERS=
KAFKA_SASL_PLAIN_USERNAME=
KAFKA_SASL_PLAIN_PASSWORD=

要监听一个主题,首先为要监听的主题创建一个工作

例如,如果您想监听名为"test"的主题,创建一个名为TestJob的工作

然后转到shkafka.php配置文件,并将以下内容添加到topics数组中

您可以在数组中添加任意数量的主题

'test' => [
            \App\Jobs\TestJob::class,
        ],

然后在您的终端中运行以下命令

php artisan shkafka:listen

当有新消息发布到该主题时,工作将被调度。

要向主题发送消息,请使用以下代码

KafkaRepository::produce('test', [
            'message' => 'test message',
]);