RabbitMQ开发环境搭建

以Ubuntu16.0.4系统为例,安装PHP7下的RabbitMQ开发环境。

RabbitMQ是使用erlang开发,在安装RabbitMQ之前先要安装Golang。

安装erlang

  • 下载erlang

下载页面:https://www.erlang.org/downloads

1
wget http://erlang.org/download/otp_src_22.0.tar.gz
  • 解压安装包
1
tar zxvf otp_src_22.0.tar.gz
  • 配置
1
2
3
# 移动到解压目录
cd zxvf otp_src_22.0
./configure --prefix=/usr/local/erlang --without-javac --without-wx
  • 编译安装
1
make && make install
  • 配置环境变量
1
2
3
vim /etc/profile
# Erlang
export PATH=$PATH:/usr/local/erlang/bin

安装RabbitMQ

  • 下载RabbitMQ

官方RabbitMQ安装教程:https://www.rabbitmq.com/install-generic-unix.html

1
2
# 下载rabbitmq
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.15/rabbitmq-server-generic-unix-3.7.15.tar.xz
  • 解压安装包
1
2
xz -d rabbitmq-server-generic-unix-3.7.15.tar.xz
tar xvf rabbitmq-server-generic-unix-3.7.15.tar
  • 安装

    RabbitMQ是基于erlang开发,解压之后,既可以使用,不过我还是习惯统一安装到/usr/local目录下。

1
cp -ra rabbitmq_server-3.7.15 /usr/local/rabbitmq
  • 启用rabbitmq开启web管理插件

进入rabbitmq安装目录下,执行如下命令:

1
rabbitmq-plugins enable rabbitmq-management

默认账号密码: guest/guest ,外网无法访问,可以通过nginx代理,端口15672。

安装librabbitmq

官方页面:https://github.com/alanxz/rabbitmq-c

  • 下载librabbitmq
1
wget https://github.com/alanxz/rabbitmq-c/archive/v0.9.0-master.tar.gz
  • 解压
1
tar zxvf v0.9.0-master.tar.gz
  • 编译/安装
1
2
3
4
5
6
7
cd rabbitmq-c-0.9.0
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/librabbitmq ..
cmake --bulid .
make
make install

安装PHP7 AMQP扩展

RabbitMQ实现了AMQP协议,我们需要安装AMQP扩展,由于AMQP扩展依赖librabbitmq,所以在这之前需要先安装librabbitmq。

官方页面:http://pecl.php.net/package/amqp

  • 下载
1
wget http://pecl.php.net/get/amqp-1.9.4.tgz
  • 解压
1
tar zxvf amqp-1.9.4.tgz
  • 编译安装
1
2
3
4
5
cd amqp-1.9.4
/usr/local/php7/bin/phpize
./configure --with-php-config=/usr/local/php7/bin/php-config --with-amqp --with-librabbitmq-dir=/usr/local/librabbitmq --with-libdir=/lib/x86_64-linux-gnu
make
make install
  • 配置扩展

修改php配置文件php.ini,增加amqp扩展库:

1
2
3
vim php.ini
# AMQP
extension=amqp

修改完成,重启php-fpm即可使用。

有用就打赏一下作者吧!