这是一个可以发送和接受消息的客户端,下面给大家演示一下发送和接受的操作,需要的朋友可以自行下载后尝试一下。
发送消息
<?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
相关文章
06 Aug 2024
随着现代软件开发的不断进步,我们用来与数据库交互的工具比以往任何时候都更加重要。在这些工具中,Prisma Client Python 已经成为一种强大的 ORM,它优先考虑类型安全和高效的数据库操作。
07 Jun 2016
客户端连接oracle数据库的方式总结 目录 Java程序连接一般使用jar驱动连接。。... 1 桌面GUI一般采取c语言驱动oci.dll1 直接连接... 1 间接连接(需要配置tns及其envi var)... 1 JDBC驱动的4种类型... 1 Java程序连接一般使用jar驱动连接。。 标识字符串为t
27 Nov 2024
使用 Go 客户端库监控 Kubernetes 服务更改Kubernetes 服务对于公开应用程序和管理流量至关重要。它是...
10 Feb 2024
我正在尝试从GolangWeb应用程序访问我的VertexAI端点(Web服务器/应用程序在云运行+构建上运行)。Web应用程序有一个表单,我正在提交详细信息,我的问题是,如何获取从Web应用程序接收到的结构并将其转换为aiplatformb.PredictRequest结构的Instances字段中接受的类型?typeSubmissionstruct{MonthlyIncomeint
25 Oct 2024
多样化的 Python SOAP 客户端库:浏览文档迷宫对于探索 SOAP 及其客户端库的 Python 新手开发人员来说,...
23 Aug 2023
通过使用mysqldump客户端程序,我们可以将所有数据库的备份保存到一个扩展名为.sql的文件中。以下示例可以帮助理解:示例在这个示例中,我们使用mysqldump客户端程序将所有数据库备份到一个名为'alldatabases.sql'的文件中。以下命令将完成此操作:C:\mysql\bin>mysqldump-uroot--all-databases>alldatabases.sql上述命令将创建一个名为alldatabases.sql的文件,其中包含所有数据库的转储信息。