RabbitMQ简介及安装

RabbitMQ消息中间件

简介

RabbitMQ就是当前最主流的消息中间件之一。RabbitMQ是一个开源的AMQP实现,服务器端用Erlang语言编写,支持多种客户端,如:Python、Ruby、.NET、Java、JMS、C、PHP、ActionScript、XMPP、STOMP等,支持AJAX。用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。

官网: https://www.rabbitmq.com/

下载地址: https://www.rabbitmq.com/download.html

国内加速下载: https://www.newbe.pro/Mirrors/Mirrors-RabbitMQ/

消息队列服务、消息中间件(Broker)、消息服务

几款常用消息服务器:

  • Rabbitmq
  • Activemq
  • Rocketmq
  • Tubemq

mq服务器的地位,和Redis相当,现在分布式项目中,redis和mq服务应该是必备的

安装前提

c++等环境依赖

yum -y install gcc glibc-devel make ncurses-devel openssl-devel xmlto perl wget gtk2-devel binutils-devel

安装RabbitMQ

以下安装任选其一

直接安装

因为RabbitMQ是使用Erlang语言写的, 安装RabbitMQ之前请再安装以下两个依赖

1. socat

socat,一个多功能的网络工具,名字来源于SOcket CAT,是netcat的增强版,也就是netcat++(扩展了设计,并有新的实现)。

官网: http://www.dest-unreach.org/socat/

安装:

yum install socat.x86_64

2. Erlang

Erlang 是一种多用途编程语言,主要用于开发并发和分布式系统。它最初是一种专有的编程语言,Ericsson 使用它来开发电话和通信应用程序。

Erlang官网: https://www.erlang.org/

安装:

yum install erlang

安装rabbitmq

如果不考虑安装版本, 可使用如下方式

yum install rabbitmq-server.noarch

如果安装指定版本, 自行下载socat, erlang, rabbitMQ的rpm包等自行安装

官方yum安装

rpm --import https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc


# centos7 用这个
cat <<EOF > /etc/yum.repos.d/rabbitmq.repo
[bintray-rabbitmq-server]
name=bintray-rabbitmq-rpm
baseurl=https://dl.bintray.com/rabbitmq/rpm/rabbitmq-server/v3.8.x/el/7/
gpgcheck=0
repo_gpgcheck=0
enabled=1
EOF


# centos6 用这个
cat <<EOF > /etc/yum.repos.d/rabbitmq.repo
[bintray-rabbitmq-server]
name=bintray-rabbitmq-rpm
baseurl=https://dl.bintray.com/rabbitmq/rpm/rabbitmq-server/v3.8.x/el/6/
gpgcheck=0
repo_gpgcheck=0
enabled=1
EOF


yum makecache

yum install socat

wget https://github.com/rabbitmq/erlang-rpm/releases/download/v21.3.8.12/erlang-21.3.8.12-1.el7.x86_64.rpm
rpm -ivh erlang-21.3.8.12-1.el7.x86_64.rpm --force --nodeps

yum install rabbitmq-server

配置RabbitMQ

启动rabbitmq服务器

# 设置服务,开机自动启动
systemctl enable rabbitmq-server

# 启动服务
systemctl start rabbitmq-server

rabbitmq管理界面

启用管理界面

# 开启管理界面插件
rabbitmq-plugins enable rabbitmq_management

# 防火墙打开 15672 管理端口
firewall-cmd --zone=public --add-port=15672/tcp --permanent
firewall-cmd --reload

重启RabbitMQ服务

重启服务是为了让上面的管理界面生效

systemctl restart rabbitmq-server

访问测试

访问服务器的15672端口,例如: IP改为你的linux的ip或域名即可

http://192.168.64.140:15672

访问权限

用户管理可参考
https://www.cnblogs.com/AloneSword/p/4200051.html

开放客户端连接端口

# 打开客户端连接端口
firewall-cmd --zone=public --add-port=5672/tcp --permanent
firewall-cmd --reload

主要端口介绍

  • 4369 – erlang发现口
  • 5672 – client端通信口
  • 15672 – 管理界面ui端口
  • 25672 – server间内部通信口
posted @ 2020-08-26 21:00  zpk-aaron  阅读(469)  评论(0编辑  收藏  举报