Heim > PHP-Framework > Laravel > Hauptteil

Wozu dient das Apache Kafka-Erweiterungspaket in Laravel?

藏色散人
Freigeben: 2021-09-24 15:15:34
nach vorne
2047 Leute haben es durchsucht

Das Folgende ist das Apache Kafka-Erweiterungspaket, das in der LaravelTutorial-Kolumne empfohlen wird. Ich hoffe, es wird Freunden, die es benötigen, hilfreich sein.

Wozu dient das Apache Kafka-Erweiterungspaket in Laravel?

Das Laravel Kafka-Erweiterungspaket (https://github.com/mateusjunges/laravel-kafka) erleichtert die Verwendung von Apache Kafka-Produzenten und -Konsumenten in Laravel-Anwendungen. Mit der Methode publishOn können Sie Nachrichten reibungslos konfigurieren und veröffentlichen: publishOn 方法,可以让你流畅的配置和发布消息:

use Junges\Kafka\Facades\Kafka;

Kafka::publishOn('broker', 'topic')
    ->withConfigOption('property-name', 'property-value')
    ->withConfigOptions([
        'property-name' => 'property-value'
    ]);
Nach dem Login kopieren

下面展示如何通过这个包在 Laravel 应用中向 Kafka 发送消息:

use Junges\Kafka\Facades\Kafka;

/** @var \Junges\Kafka\Producers\ProducerBuilder $producer */
$producer = Kafka::publishOn('broker', 'topic')
    ->withConfigOptions(['key' => 'value'])
    ->withKafkaKey('your-kafka-key')
    ->withKafkaKey('kafka-key')
    ->withHeaders(['header-key' => 'header-value']);

$producer->send();
Nach dem Login kopieren

这里是消费者订阅消息的示例:

use Junges\Kafka\Facades\Kafka;

$consumer = Kafka::createConsumer('broker')->subscribe('topic');

// 通过回调函数处理:
$consumer->withHandler(function(\RdKafka\Message $message) {
    // 消息处理
});

// Invokable handler:
class Handler
{
    public function __invoke(\RdKafka\Message $message){
        //消息处理
    }
}

$consumer->withHandler(Handler::class)
Nach dem Login kopieren

这个包的其他功能请见 readme:(https://github.com/mateusjunges/laravel-kafka/blob/master/README.md)

  • 最大消息消费数量配置
  • 死信队列 - 维基百科 配置
  • 中间件配置
  • 在测试中使用 Kafka::fake()rrreee
  • Im Folgenden wird gezeigt, wie Sie über dieses Paket Nachrichten an Kafka in einer Laravel-Anwendung senden:
  • rrreee
  • Hier ist ein Beispiel für einen Verbraucher Abonnieren einer Nachricht:
  • rrreee
  • Weitere Funktionen dieses Pakets finden Sie in der Readme-Datei:(https://github.com/mateusjunges/laravel-kafka/blob/master/README.md)

    Maximaler Nachrichtenverbrauch Mengenkonfiguration

    Warteschlange für tote Briefe – Wikipedia-Konfiguration

    Middleware-Konfiguration

    Verwenden Sie die Methode Kafka::fake(), um den Kafka-Produzenten im Test zu simulieren
    🎜Debuggen im Entwicklungsmodus aktivieren 🎜🎜Konfigurierbarer Nachrichtentext 🎜 🎜🎜 Dieses Paket erfordert die rdkafka-Erweiterung, um einen effizienten PHP-Client auf Kafka-Generationsebene bereitzustellen. Eine ausführliche Installationsanleitung und den Quellcode für das Paket gibt es auf Github. 🎜🎜🎜Originaladresse: https://laravel-news.com/laravel-kafka-package🎜🎜Übersetzungsadresse: https://learnku.com/laravel/t/61072🎜🎜

Das obige ist der detaillierte Inhalt vonWozu dient das Apache Kafka-Erweiterungspaket in Laravel?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:learnku.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage