rabbitmq Server安装
rabbitmq server安装很简单。
- 安装erlang环境 rpm -ihv erlang-18.1-1.el6.x86_64.rpm
- rpm -ihv rabbitmq-server-3.6.12-1.el6.noarch.rpm
- 启动 /sbin/service rabbitmq-server start
- 一些常用命令
rabbitmqctl start_app #启动rabbitmq rabbitmqctl stop_app #关闭rabbitmq rabbitmqctl reset #重置rabbitmq队列 rabbitmqctl list_queues #查看rabbitmq中队列 rabbitmqctl list_exchanges #查看rabbitmq中的交换机
rabbitmq php扩展
这就有点费事啦。先说整体过程
安装rabbit-c
下载:https://github.com/alanxz/rabbitmq-c/releases 这里我下载了v0.8.0版本
安装过程
tar -zxvf rabbitmq-c-0.8.0.tar.gz cd rabbitmq-c-0.8.0 yum install libtool autoconf #这里是我进行下一步报错,需要安装autoconf autoreconf -i ./configure --prefix=/usr/local/rabbitmq-c make && make install
安装amqp
去php pcel官网下载php扩展amqp,注意要与php版本相匹配,我的是php7.0.11,这里我选择了1.9.1版本。
安装过程:
tar & cd 解压&&进入目录 这里就不废话了 phpize 这里要找到phpize绝对路径 ./configure --with-php-config=/home/map/odp_warehouse/php/bin/php-config --with-amqp --with-librabbitmq-dir=/usr/local/rabbitmq-c #这里的rabbitmq-c路径是上一步安装的路径 make && make install
最后得到so文件路径。写入php.ini
extension=amqp.so
(由于我php.ini指定了extend_dir。所以直接写文件名就好啦)
测试
phpinfo()查看 如下代表安装成功啦!
php -r "phpinfo();" | grep amqp
安装过程问题与解决办法:
1. 在编译rabbit-c时提示 libssl.so.1.0.0需要被依赖,但是我的系统里没有。
/usr/lib64下没有libssl.so.1.0.0。需要安装
https://www.openssl.org/source/old/1.0.1/openssl-1.0.1e.tar.gz
tar解压
./config shared zlib-dynamic
make 生成所需要的文件。
libssl.so.1.0.0 libcrypto.so.1.0.0 将两个文件拷贝到/usr/lib64中
2. 在编译amqp提示各种错误。且不是依赖库的问题。这就应该用到老道的经验:版本不一致。
php版本跟扩展包的版本不一致!
php扩展去官网pecl 下载,且扩展包一定要与 php版本匹配