安装依赖
sudo yum install -y gcc gcc-c++ glibc-devel make ncurses-devel openssl-devel autoconf java-1.8.0-openjdk-devel git
添加源
- 添加 erlang 源
curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | sudo bash
- 添加 rabbitmq-server 源
curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | sudo bash
- 清除 Yum 缓存
yum clean all
yum makecache
安装 Erlang
# 安装
sudo yum install -y erlang
# 查看Erlang版本
erl -version
# 返回信息:
# Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.4.1
# 查看发行版本
erl -eval 'erlang:display(erlang:system_info(otp_release)), halt().' -noshell
#返回信息:
"22"
安装 socat 网络工具
sudo yum install -y socat
安装 RabbitMQ 服务器
yum install -y rabbitmq-server
启动RabbitMQ服务及常用命令
# 启动RabbitMQ服务
sudo systemctl start rabbitmq-server
# 或者 service rabbitmq-server start
# 查看状态
sudo systemctl status rabbitmq-server
# 或者 rabbitmqctl status
# 设置为开机启动
sudo systemctl enable rabbitmq-server
# 重启服务
service rabbitmq-server restart
# 停止服务
rabbitmqctl stop
# 启用插件(WEB管理器, 访问 `http://ip:15672` 进入, 注意防火墙)
rabbitmq-plugins enable rabbitmq_management
# 快速测试WEB管理插件
curl localhost:15672
# 添加帐号: admin 密码: pass123456
rabbitmqctl add_user admin pass123456
# 赋予其administrator角色
# 角色可以为: administrator, monitoring, management
rabbitmqctl set_user_tags admin administrator
# 设置权限
rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
# 修改 admin 密码为: new123456
rabbitmqctl change_password admin new123456
# 显示所有的插件,每一行一个
rabbitmq-plugins list
# 显示所有的插件,并且显示插件的版本号和描述信息
rabbitmq-plugins list -v
# 显示所有名称含有 "management" 的插件
rabbitmq-plugins list -v management
# 显示所有显示或者隐式启动的插件
rabbitmq-plugins list -e rabbit
!! 提示 :
如果通过 localhost:15672 查看rabbitmq服务器的信息,
可以通过guest帐号来登录认证查看,
但是由于默认情况下 guest 帐号具有所有的操作权限,
并且还是默认帐号,处于安全因素的考虑,
guest 用户只能通过localhost登录使用。
所以最好是修改guest帐号的密码,
且创建新的帐号来管理查看rabbitmq服务器 。
RabbitMQ 所需端口号
- 4369 (epmd), 25672 (Erlang distribution)
- 5672, 5671 (AMQP 0-9-1 without and with TLS)
- 15672 (if management plugin is enabled)
- 61613, 61614 (if STOMP is enabled)
- 1883, 8883 (if MQTT is enabled)
安装 PHP-amqplib 扩展
Github 项目地址 https://github.com/php-amqplib/php-amqplib
安装依赖 (bcmath PHP扩展)
yum install -y php-bcmath
- 添加 php-amqplib 扩展
# cd 到php项目根目录
composer require php-amqplib/php-amqplib
[可选] 添加 Enqueue Dev -- AMQP Lib 扩展 ( 基于 php-amqplib )
- Enqueue Dev -- AMQP Lib (开箱即用的消息队列扩展)
- 官方介绍(英文) : https://php-enqueue.github.io/transport/amqp_lib/
- Github 项目地址: https://github.com/php-enqueue/enqueue-dev/blob/master/docs/transport/amqp_lib.md
# cd 到php项目根目录
composer require enqueue/amqp-lib