linux 下安装 php kafka 扩展
我们使用官方推荐 php kafka 扩展 phpkafka,由于该扩展是基于 librdkafka 开发,所以我们首先需要安装 librdkafka
下载地址:http://kafka.apache.org/downloads
PHP 扩展:https://github.com/arnaud-lb/php-rdkafka
1、解压 librdkafka,执行 linux 下安装三部曲:./configure --> make --> make install ,此时在 /usr/local/lib 目录下我们可以看到生成的 kafka 库(注意:编译时请用 root 账号编译,否则 make 时会因为权限问题无法创建 kafka 软连接导致编译失败)
2、解压 phpkafka-master,按照 phpkfaka 目录下的 README.md 逐步安装:
(1)检测 librdkafka.so 安装位置:updatedb --> locate librdkafka.so.1
(2)将 librdkafka.so 的目录放入库文件搜索路径下,编辑 /etc/ld.so.conf.d 文件,将 /usr/local/lib 写在文件最后,如果系统中使用 /etc/ld.so.conf.d 目录,那么在该目录下创建一个新的 .conf 文件,由于我的系统中使用 /etc/ld.so.conf.d 目录,所以这里采用第二种方式
(3)更新:ldconfig
(4)加载 php 插件:phpize(注意:该文件在 php 安装目录/bin 文件夹下,如果未将 php 安装目录设置为环境变量,就需要用绝对路径来执行)
(5)配置:./configure --with-php-config=/php安装目录/bin/php-config && make && make install
(6)编译完成后,可以看到在 php 依赖目录下生成了 rdkafka.so 库文件
(7)在 php.ini 中增加扩展:echo extension=rdkafka.so >> php.ini
(8)测试:修改 php-master\example\producer.php 脚本,测试发送数据
具体步骤:
1、安装librdkafka
cd /usr/local/src #进入安装包存放目录
wget https://github.com/edenhill/librdkafka/archive/master.zip #下载
mv master.zip librdkafka-master.zip #修改包名
unzip librdkafka-master.zip #解压
cd librdkafka-master #进入安装文件夹
./configure #配置
make #编译
make install #安装
2、安装phpkafka
cd /usr/local/src #进入安装包存放目录
wget https://github.com/EVODelavega/phpkafka/archive/master.zip #下载
mv master.zip phpkafka-master.zip #修改包名
unzip phpkafka-master.zip #解压
cd phpkafka-master #进入安装文件夹
/usr/local/php/bin/phpize #加载php扩展模块
./configure --enable-kafka --with-php-config=/usr/local/php/bin/php-config #配置
make #编译
make install #安装
3、修改php配置文件
vi /usr/local/php/etc/php.ini #打开php配置文件,在最后一行添加下面的代码
extension="kafka.so"
:wq! #保存退出
4、测试
以下代码,保存为phpinfo.php
<?php
phpinfo();
?>
上传到网站目录,查找kafka,如下图所示,说明安装成功!
linux 下安装 php kafka 扩展的更多相关文章
- Linux下安装Redis php-redis扩展 redis重启shell脚本 超详细!
前言 前面刚写过nosql其中三款热门产品的对比,这次主要写关于Redis的一些事情,Redis的介绍.安装以及扩展(php-redis,因为我是phper)安装等等.同时是写给我的朋友(cccjjj ...
- linux 下安装php curl扩展
方法一 安装cURL wget https://curl.haxx.se/download/curl-7.53.1.tar.gz tar -zxf curl-7.17.1.tar.gz ./confi ...
- linux下安装memcached以及扩展(xampp环境)
网上有很多相关的文章,就不具体写了.(假设这里文件都上传到更目录下的tmp文件夹下) 1.大致流程先装 libevent 和 memcache http://www.cnblogs.com/zgx/a ...
- Linux下安装 php imagick扩展
今天小编 由于工作需求用到了 imagick 这个扩展 服务器环境是 lnmp 架构下面稍微来介绍下 这个 东东 imagick是一个PHP的扩展,用ImageMagick提供的API来进行图片的创 ...
- Linux下安装memcache PHP扩展
[root@centos memcache-2.2.4]# wget http://pecl.php.net/get/memcache-2.2.4.tgz [root@centos memcache- ...
- Linux下安装Pcntl PHP扩展
//解压源码包 [root@centos src]# tar -zxvf php-5.5.35.tar.gz //进入pcntl扩展库 [root@centos src]# cd php-5.5.35 ...
- linux下安装opcache扩展
linux下安装opcache扩展 参考:http://www.php.net/manual/zh/opcache.installation.php 1 2 3 4 5 6 7 wget http ...
- linux下Redis与phpredis扩展安装
++++++++++++++++++++++++++++++++++++++++++++++linux下Redis与phpredis扩展安装++++++++++++++++++++++++++++++ ...
- linux 下安装redis以及php Redis扩展
[php] view plaincopy在CODE上查看代码片派生到我的代码片 linux 下安装redis以及php Redis扩展 环境配置: centos6. nginx/ php/ mysql ...
随机推荐
- GC参考手册 —— GC 调优(工具篇)
JVM 在程序执行的过程中, 提供了GC行为的原生数据.那么, 我们就可以利用这些原生数据来生成各种报告.原生数据(raw data) 包括: 各个内存池的当前使用情况, 各个内存池的总容量, 每次G ...
- redis使用场景和java测试案例
redis数据结构和使用场景 strings lists sets sort sets hashes strings token session validateCode 分布锁 lists 最近联系 ...
- 强化学习(九)Deep Q-Learning进阶之Nature DQN
在强化学习(八)价值函数的近似表示与Deep Q-Learning中,我们讲到了Deep Q-Learning(NIPS 2013)的算法和代码,在这个算法基础上,有很多Deep Q-Learning ...
- 机器学习之决策树二-C4.5原理与代码实现
决策树之系列二—C4.5原理与代码实现 本文系作者原创,转载请注明出处:https://www.cnblogs.com/further-further-further/p/9435712.html I ...
- 微软开发者大会:VS 2019 Preview 发布;Windows UX 主要技术开源
美国当地时间12月4日,微软正式举行 Microsoft Connect(); 2018 开发者大会,本次大会的 slogan 是"Build the apps of tomorrow, t ...
- SpringCloud微服务如何优雅停机及源码分析
目录 方式一:kill -9 java进程id[不建议] 方式二:kill -15 java进程id 或 直接使用/shutdown 端点[不建议] kill 与/shutdown 的含义 Sprin ...
- Web前端 web的学习之路
零基础学习web前端的顺序 ( 转载自:https://blog.csdn.net/weixin_41780944/article/details/83751632) 怎么开始学习两条路:自学或者找培 ...
- yum方式安装kubernetes
环境准备 master01 node01 node02,连通网络,修改hosts文件,确认3台主机相互解析 vim /etc/hosts 127.0.0.1 localhost localhost.l ...
- 我的第一个python web开发框架(41)——总结
我的第一个python web开发框架系列博文从17年6.7月份开始写(存了近十章稿留到9月份才开始发布),到今天结束,一年多时间,想想真不容易啊. 整个过程断断续续,中间有段时间由于工作繁忙停了好长 ...
- Ruby入坑指南
1.1 简介 Ruby语言是由松本行弘(Matz)设计,是一门通用的.面向对象的.解释型语言. 1.2 Ruby?RUBY?ruby? 1.Ruby:用来表示编程的语言 2.ruby:是指一个计算机程 ...