如何安装适用于 PHP 的 Kafka 扩展?

问题描述 投票:0回答:4

这是我尝试安装的扩展:https://github.com/EVODelavega/phpkafka

传递到队列的消息应为 JSON 格式。

目前,我遇到安装错误: 1. 说明要求我安装librdkafka。 2. 上述步骤的安装链接是this。我无法使用第一种和第四种方法安装。这是错误:

checking for librdkafka/rdkafka.h" in default path... not found
configure: error: Please reinstall the rdkafka distribution
php apache-kafka kafka-consumer-api kafka-producer-api
4个回答
17
投票

快速安装步骤:

第1步安装PHP pecl和pear命令:

sudo apt install php-pear

第2步安装librdkafka

sudo apt-get install -y librdkafka-dev

第3步安装PECL包

sudo pecl install rdkafka

Step4 在 PHP 配置中启用 PHP 扩展。添加到 php.ini

sudo nano /etc/php/7.4/cli/php.ini

extension=rdkafka.so

第4步重启apache服务器

sudo service apache2 restart

6
投票

因为你需要另一个包librdkafka,你应该先安装librdkafka

这样可以解决你的问题


5
投票

对于 Linux Debian Stretch (9.13) 实际流程是:

  1. 安装 PHP

    pecl
    pear
    命令:

    sudo apt install php-pear
    

    仅供参考:根据您安装的 PHP 版本,您可能需要使用具体版本包。例如:

    php7.2-pear

  2. 添加向后移植存储库。当前 ext-rdkafka 依赖于

    librdkafka
    版本 0.11.0 或更高版本。因此请遵循官方说明,但使用
    stretch-backports

  3. 从向后移植安装

    librdkafka-dev
    软件包:

    sudo apt -t stretch-backports install librdkafka-dev
    
  4. 更新apt:

    sudo apt update
    
  5. 安装 PECL 包:

    sudo pecl install rdkafka
    
  6. 在 PHP 配置中启用 PHP 扩展。添加到

    php.ini

    extension=rdkafka.so
    

    仅供参考:您需要重新启动

    php-fpm
    服务才能应用新的配置参数。


0
投票

我正在使用 Manjaro OS,并且我执行了以下步骤:

https://arnaud.le-blanc.net/php-rdkafka-doc/phpdoc/rdkafka.installation.html

$ git clone https://github.com/arnaud-lb/php-rdkafka.git
$ cd php-rdkafka
$ phpize
$ ./configure
$ make all -j 5
$ sudo make install

然后在我的 php.ini (在 /etc/php/php.ini 中)我添加了下一行:

extension=rdkafka.so

一切都正常。

© www.soinside.com 2019 - 2024. All rights reserved.