安装部署RabbitMQ
前言
RabbitMQ是一款使用Erlang语言开发,实现AMQP(高级消息队列协议)的开源消息中间件。RabbitMQ的特点:
- 可靠性。支持持久化,传输确认,发布确认等保证了MQ的可靠性。
- 灵活的分发消息策略。这应该是RabbitMQ的一大特点。在消息进入MQ前由Exchange(交换机)进行路由消息。分发消息策略有:简单模式、工作队列模式、发布订阅模式、路由模式、通配符模式。
- 支持集群。多台RabbitMQ服务器可以组成一个集群,形成一个逻辑Broker。
- 多种协议。RabbitMQ支持多种消息队列协议,比如 STOMP、MQTT 等等。
- 支持多种语言客户端。RabbitMQ几乎支持所有常用编程语言,包括 Java、.NET、Ruby 等等。
- 可视化管理界面。RabbitMQ提供了一个易用的用户界面,使得用户可以监控和管理消息 Broker。
- 插件机制。RabbitMQ提供了许多插件,可以通过插件进行扩展,也可以编写自己的插件。
环境准备:
- 系统版本:CentOS7
- IP:192.168.0.10
- 安装包:
- rabbitmq-server-generic-unix-3.8.9.tar.xz,官网地址:Releases · rabbitmq/rabbitmq-server · GitHub
- erlang安装包:otp_src_23.1.4.tar.gz,Erlang官网下载地址
步骤
安装erlang
- 安装依赖
yum install -y gcc glibc-devel make ncurses-devel openssl-devel xmlto
- 解压安装包
tar xf otp_src_23.1.4.tar.gz
cd otp_src_23.1.4
- 预编译 -> 编译 -> 编译安装
# 创建安装目录
mkdir -p /usr/local/erlang
# 预编译时如果提示缺少wxwidget什么的,非GUI可忽略
./configure --prefix=/usr/local/erlang
# 因为CPU为4核,故-j4加速编译
make -j4
make install -j4
- 验证
/url/local/erlang/bin/erl
1+1.
# 上述正常执行的话,即可退出
halt().
- 配置环境变量:
vim /etc/profile
export PATH=$PATH:/usr/local/erlang/bin
- 环境变量生效
source /etc/profile
安装rabbitmq
- 解压rabbit压缩包到指定目录
tar xf rabbitmq-server-generic-unix-3.8.9.tar.xz -C /usr/local
- (可选操作)将解压后的目录重命名为rabbitmq
- 添加
/usr/local/rabbitmq/sbin到环境变量中,并source生效 - 启动rabbitmq
rabbitmq-server -detached
# 查看rabbitmq服务状态:rabbitmqctl status
# 关闭rabbitmq:rabbitmqctl stop
- 安装网页管理插件
mkdir -p /etc/rabbitmq
# 启用网页管理插件
rabbitmq-plugins enable rabbitmq_management
# 访问 http://192.168.0.10:15672,默认用户guest,密码guest
- 配置远程访问控制
# 添加用户
rabbitmqctl add_user user233 pwd233
# 添加所有权限
rabbitmqctl set_permissions -p "/" user233 ".*" ".*" ".*"
# 修改用户角色为管理员
rabbitmqctl set_user_tags user233 administrator
# 网页登录测试
其它
安装插件RabbitMQ Delayed Message Plugin
- 到github上下载ez格式的插件包,github地址
- 将ez格式的文件放到
/usr/local/rabbitmq/plugins/中 - 执行
rabbitmq-plugins list,找到插件名(一般是rabbitmq_delayed_message_exchange,瞅一眼确认一下) - 启用插件
rabbitmq-plugins enable rabbitmq_delayed_message_exchange
踩坑记录
- 网页管理页面无法登录,页面底部显示
ReferenceError: disable_stats is not defined ReferenceError "rabbitmq"- Edge浏览器问题,换个浏览器试试。
安装部署RabbitMQ的更多相关文章
- Docker:安装部署RabbitMQ
前言 今天原本想讲解SpringBoot集成RabbitMQ的,临近开始写时才发现家里的电脑根本没有安装RabbitMQ呀.这下只好利用已有的阿里云服务器,直接Docker安装一下了,顺道记录下,算是 ...
- Linux下安装部署RabbitMQ
在写正文之前先啰嗦几句,RabbitMQ(消息队列)的安装让我费了半天劲啊!足足折腾了2天,最后写下这篇文章总结下,其实很简单,但是你找不到错在哪个环节就会费很多无用功,如果你也遇到了安装erl后 怎 ...
- Centos7安装部署Rabbitmq教程
依赖关系: 版本依赖一定要提前看清楚. RabbitMQ相关版本依赖关系查看 https://www.rabbitmq.com/which-erlang.html 可以看到要求版本Erlang21.3 ...
- Docker 安装部署RabbitMQ
获查询镜像 docker search rabbitmq:management 可以看到如下结果: 获取镜像 docker pull rabbitmq:management 运行镜像 docker r ...
- RabbitMQ消息队列系列教程(二)Windows下安装和部署RabbitMQ
摘要 本篇经验将和大家介绍Windows下安装和部署RabbitMQ消息队列服务器,希望对大家的工作和学习有所帮助! 目录 一.Erlang语言环境的搭建 二.RabbitMQ服务环境的搭建 三.Ra ...
- Linux 安装 RabbitMQ 3.7.8 安装部署
Linux 安装 rabbitmq 3.7.8 安装部署 安装 ncurses 1.安装GCC GCC-C++ Openssl等模块 yum -y install make gcc gcc-c++ k ...
- RabbitMQ的安装部署
RabbitMQ安装部署 一.软件准备 wget http://erlang.org/download/otp_src_19.3.tar.gz wget http://www.rabbitmq.com ...
- rabbitmq安装部署
本文主要介绍rabbitmq-server-3.6.12的安装部署 # 检查是否已经安装旧版本的软件 rpm -qa|grep erlang rpm -qa|grep rabbitmq # 如果之前 ...
- 10分钟学会RabbitMQ安装部署
一.单机版的 RabbitMQ 的安装部署 1.安装 Erlang 环境 wget http://erlang.org/download/otp_src_19.3.tar.gz tar -zxvf o ...
- 在Ubuntu 12.10 上安装部署Openstack
OpenStack系统有几个关键的项目,它们能够独立地安装但是能够在你的云计算中共同工作.这些项目包括:OpenStack Compute,OpenStack Object Storage,OpenS ...
随机推荐
- 音视频八股文(4)--ffmpeg常见命令(3)
17 FFmpeg滤镜 17.1 filter的分类 按照处理数据的类型,通常多媒体的filter分为: ● 音频filter ● 视频filter ● 字幕filter 另一种按照处于编解码器的位置 ...
- 2022-03-16:给你一个整数 n ,表示有 n 个专家从 0 到 n - 1 编号。 另外给一个下标从 0 开始的二维整数数组 meetings , 其中 meetings[i] = [xi,
2022-03-16:给你一个整数 n ,表示有 n 个专家从 0 到 n - 1 编号. 另外给一个下标从 0 开始的二维整数数组 meetings , 其中 meetings[i] = [xi, ...
- 2021-08-04:给定一个字符串str,当然可以生成很多子序列。返回有多少个子序列是回文子序列,空序列不算回文。比如,str = “aba”,回文子序列:{a}、{a}、 {a,a}、 {b}、{
2021-08-04:给定一个字符串str,当然可以生成很多子序列.返回有多少个子序列是回文子序列,空序列不算回文.比如,str = "aba",回文子序列:{a}.{a}. {a ...
- 限速神器RateLimiter源码解析
作者:京东科技 李玉亮 目录指引 限流场景 软件系统中一般有两种场景会用到限流: •场景一.高并发的用户端场景. 尤其是C端系统,经常面对海量用户请求,如不做限流,遇到瞬间高并发的场景,则可能压垮系统 ...
- 二进制部署k8s集群
部署k8s有多种方式,本章我们采取二进制的部署方式来部署k8s集群,二进制部署麻烦点,但是可以在我们通过部署各个组件的时候,也通知能让我们更好的深入了解组件之间的关联,也利于后期维护 主机环境 系统: ...
- 经纬度坐标为中心点生成米距离长度半径的圆形面,含java js源码+在线绘制,代码简单零依赖
目录 java版源码 js版源码 在线绘制预览效果 关于计算的精确度 前些时间在更新我的坐标边界查询工具的时候,需要用到经纬度坐标点的距离计算,和以坐标点为中心生成一个指定距离为半径的圆,搜了一下没有 ...
- 理解ASP.NET Core - 全球化&本地化&多语言(Globalization and Localization)
注:本文隶属于<理解ASP.NET Core>系列文章,请查看置顶博客或点击此处查看全文目录 概述 在众多知名品牌的网站中,比如微软官网.YouTube等,我们经常可以见到"切换 ...
- Python初学者友好丨详解参数传递类型
摘要: 本文清晰地解释了Python中的不同参数传递类型,并提供了示例代码来说明每种类型的用法.对于初学者或不清楚Python传参的读者们来说是非常有益的,文中提供了足够的信息来理解和使用Python ...
- Tab切换以及倒计时组件封装
1.Tab组件 功能 支持默认选中tab 子元素可以是文本或者图片 自定义tab的数量,并自适应展示 实现方式 用ul > li标签遍历传入的tabs数组参数渲染 判断是否传入背景,未传则显示文 ...
- Python asyncio 库源码分析
Python asyncio 库源码分析 前言 本着 「路漫漫其修远兮, 吾将上下而求索」 的精神.终于要开始深入研究 Python 中 asyncio 的源码实现啦. 本文章可能篇幅较长,因为是逐行 ...