最近项目开发中需要使用 <code>Kafka</code> 消息队列。经过检索,PHP下面有通用的两种方式来调用 <code>Kafka</code> 。
以 PHP 扩展的形式进行使用是非常高效的。另外,该项目也提供了非常完备的 文档 。
不过在 Mac 环境中安装的过程中出现了以下报错:
开始以为是因为 <code>pecl</code> 安装缺少了一些依赖。然后使用了源码编译的方式进行安装:
同样报错了。后来仔细看文档才发现。这里有一个依赖:librdkafka 。
然后安装它:
再执行 <code>sudo pecl install rdkafka</code> ,执行OK。
然后将 <code>rdkafka.so</code> 添加到相应的 <code>/path/to/php.ini</code> 的末尾即可。
执行 <code>php -m | grep rdkafka</code> ,验证是否添加完成。
Kafka-php 使用纯粹的 PHP 编写的 <code>Kafka</code> 客户端,目前支持 <code>0.8.x</code> 以上版本的 <code>Kafka</code>。由于使用 PHP 语言编写所以不用编译任何的扩展就可以使用,降低了接入与维护成本。