您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關Apache Kafka擴展包在Laravel中的作用是什么,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
Laravel Kafka 擴展包(https://github.com/mateusjunges/laravel-kafka)讓你在 Laravel 應用中使用 Apache Kafka 生產(chǎn)者和消費者變得簡單。使用 publishOn
方法,可以讓你流暢的配置和發(fā)布消息:
use Junges\Kafka\Facades\Kafka; Kafka::publishOn('broker', 'topic') ->withConfigOption('property-name', 'property-value') ->withConfigOptions([ 'property-name' => 'property-value' ]);
下面展示如何通過這個包在 Laravel 應用中向 Kafka 發(fā)送消息:
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();
這里是消費者訂閱消息的示例:
use Junges\Kafka\Facades\Kafka; $consumer = Kafka::createConsumer('broker')->subscribe('topic'); // 通過回調(diào)函數(shù)處理: $consumer->withHandler(function(\RdKafka\Message $message) { // 消息處理 }); // Invokable handler: class Handler { public function __invoke(\RdKafka\Message $message){ //消息處理 } } $consumer->withHandler(Handler::class)
這個包的其他功能請見 readme:(https://github.com/mateusjunges/laravel-kafka/blob/master/README.md)
最大消息消費數(shù)量配置
死信隊列 - 維基百科 配置
中間件配置
在測試中使用 Kafka::fake()
方法模擬 Kafka 生產(chǎn)者
開發(fā)模式下開啟調(diào)試
消息體可配置
這個包需要 rdkafka 擴展提供 Kafka 生成級別高效的 PHP 客戶端。 Github 上有包詳細的安裝說明,和 源碼 。
以上就是Apache Kafka擴展包在Laravel中的作用是什么,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降摹OM隳芡ㄟ^這篇文章學到更多知識。更多詳情敬請關注億速云行業(yè)資訊頻道。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。