php-rdkafka客戶端程式庫
這是一個可以發送和接受訊息的客戶端,下面給大家示範一下發送和接受的操作,需要的朋友可以自行下載後嘗試一下。
發送訊息
<?phptry { $rcf = new RdKafka\Conf(); $rcf->set('group.id', 'test'); $cf = new RdKafka\TopicConf(); $cf->set('offset.store.method', 'broker'); $cf->set('auto.offset.reset', 'smallest'); $rk = new RdKafka\Producer($rcf); $rk->setLogLevel(LOG_DEBUG); $rk->addBrokers("127.0.0.1"); $topic = $rk->newTopic("test", $cf); for($i = 0; $i < 1000; $i++) { $topic->produce(0,0,'test' . $i);//没有setMessge接口了,使用produce 参考:https://libraries.io/github/mentionapp/php-rdkafka } } catch (Exception $e) { echo $e->getMessage();
接收訊息
<?phptry { $rcf = new RdKafka\Conf(); $rcf->set('group.id', 'test'); $cf = new RdKafka\TopicConf();/* $cf->set('offset.store.method', 'file'); */ $cf->set('auto.offset.reset', 'smallest'); $cf->set('auto.commit.enable', true); $rk = new RdKafka\Consumer($rcf); $rk->setLogLevel(LOG_DEBUG); $rk->addBrokers("127.0.0.1"); $topic = $rk->newTopic("test", $cf); //$topic->consumeStart(0, RD_KAFKA_OFFSET_BEGINNING); while (true) { $topic->consumeStart(0, RD_KAFKA_OFFSET_STORED); $msg = $topic->consume(0, 1000); var_dump($msg); if ($msg->err) { echo $msg->errstr(), "\n"; break; } else { echo $msg->payload, "\n"; } $topic->consumeStop(0); sleep(1); } } catch (Exception $e) { echo $e->getMessage(); }
免責聲明
本站所有資源皆由網友貢獻或各大下載網站轉載。請自行檢查軟體的完整性!本站所有資源僅供學習參考。請不要將它們用於商業目的。否則,一切後果都由您負責!如有侵權,請聯絡我們刪除。聯絡方式:admin@php.cn
相關文章
如何使用Go客戶端程式庫監控Kubernetes服務變化?
27 Nov 2024
使用 Go 用戶端程式庫監控 Kubernetes 服務變更Kubernetes 服務對於公開應用程式和管理流量至關重要。它是...
如何修復'MySQL 客戶端庫版本不正確!” Rails 應用程式出錯?
02 Dec 2024
Rails 應用程式 MySQL 連線錯誤嘗試透過 Rails 應用程式連接到 MySQL 伺服器時,可能會發生錯誤:不正確...
如何使用假客戶端測試 Client-Go 程式碼?
24 Oct 2024
本文示範了使用假客戶端在 Kubernetes 中測試客戶端 Go 程式碼。它解決的主要問題是為與外部 API 互動的函數編寫單元測試的挑戰。提出的解決方案是利用假客戶端
Hot Tools
熱門文章
崩壞:星穹鐵道 - 所有金色替罪羊謎題解決方案
18 Jan 2025
手游攻略
印第安納瓊斯與大圈:高棉齒輪位置指南
27 Dec 2024
手游攻略
Tales Of Graces F 重製版:所有鎖定的寶箱密碼
18 Jan 2025
手游攻略
魯馬島:考古學家職業指南
03 Jan 2025
手游攻略
印第安納瓊斯與大圈:Gizeh 藥瓶位置指南
31 Dec 2024
手游攻略