RabbitMQ是一个开源的消息代理软件,主要用于在不同的应用程序之间进行异步通信。它遵循AMQP协议,提供了稳定可靠的消息传输服务,具有可靠性、灵活性、可扩展性和多语言支持等特点,因此在分布式系统、微服务架构等场景中得到了广泛应用。
RabbitMQ的核心概念包括队列、交换机、路由键、绑定、生产者和消费者。队列用于存储和转发消息,交换机用于实现消息路由,生产者将消息发送到队列,消费者从队列中取出并处理这些消息。RabbitMQ的架构基于生产者-消费者模型,通过队列实现消息的存储和转发。
今天我们就来介绍rabbitmq该怎么安装
1、环境准备
先安装一些编译工具以及一些内核开发工具,后续的编译依赖这些东西
yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel unixODBC unixODBC-devel httpd python-simplejson
rabbitMQ编译依赖erlang,所以我们还需要先安装erlang
下载安装erlng,顺便推荐一个好用下载工具Motrix
Index of /download/
rabbitMQ3.7.15要求erlang最低版本是20.3,我这里安装的22版本
上传下载的包到服务器,然后解压
tar -zxvf otp_src_22.0.tar.gz
进入解压后目录,然后编译安装
./configure --prefix=/usr/local/erlang --enable-smp-support --enable-threads --enable-sctp --enable-kernel-poll --enable-hipe --with-ssl --without-javac
make && make install
配置erlang环境变量
vim /etc/profile export PATH=$PATH:/usr/local/erlang/bin
配置生效,然后执行 erl 命令验证
source /etc/profile
2、下载rabbitmq
Release RabbitMQ 3.7.15 · rabbitmq/rabbitmq-server · GitHub
上传服务器后解压
tar -xJf rabbitmq-server-generic-unix-3.7.15.tar.xz
进入解压后的目录
cd /usr/local/rabbitmq_server-3.7.15/sbin
启动mq,加上 -detached表示后台运行
./rabbitmq-server -detached
查看服务是否启动
ps -aux |grep rabbit
然后在安装一些常用的插件
下载延迟队列插件
https://objects.githubusercontent.com/github-production-release-asset-2e65be/32327910/34bd5780-e6af-11e9-8246-8f328d1b4687?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=releaseassetproduction%2F20241115%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20241115T093353Z&X-Amz-Expires=300&X-Amz-Signature=3fb94628f08606453e6d6d21765b9e565dbaddb6c5d2b580c8c3a857f47ac980&X-Amz-SignedHeaders=host&response-content-disposition=attachment%3B%20filename%3Drabbitmq_delayed_message_exchange-3.8.0.ez&response-content-type=application%2Foctet-streamhttps://objects.githubusercontent.com/github-production-release-asset-2e65be/32327910/34bd5780-e6af-11e9-8246-8f328d1b4687?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=releaseassetproduction%2F20241115%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20241115T093353Z&X-Amz-Expires=300&X-Amz-Signature=3fb94628f08606453e6d6d21765b9e565dbaddb6c5d2b580c8c3a857f47ac980&X-Amz-SignedHeaders=host&response-content-disposition=attachment%3B%20filename%3Drabbitmq_delayed_message_exchange-3.8.0.ez&response-content-type=application%2Foctet-stream
把下载的插件上传到/usr/local/rabbitmq_server-3.7.15/plugins/目录下
./rabbitmq-plugins enable rabbitmq_management # 开启RabbitMQ控制台
./rabbitmq-plugins enable rabbitmq_shovel rabbitmq_shovel_management
./rabbitmq-plugins enable rabbitmq_mqtt # 开启RabbitMQmqtt支持
./rabbitmq-plugins enable rabbitmq_delayed_message_exchange # 启用延迟队列插件
新增用户并给用户设置角色
./rabbitmqctl add_user admin admin
./rabbitmqctl set_user_tags admin administrator