Linux安装RabbitMQ安装
1. RabbitMQ介绍
1.1 RabbitMQ关键特性
-
异步消息传递:允许应用程序在不直接进行网络调用的情况下交换消息。
-
可靠性:支持消息持久化,确保消息不会在系统故障时丢失。
-
灵活的路由:支持多种路由选项,包括直接、主题、扇出和头插交换机。
-
集群支持:可以跨多个服务器运行,以提高可用性和可伸缩性。
-
高可用性:通过镜像队列和故障转移机制,确保消息传递的高可用性。
-
多种协议支持:支持 AMQP 0-9-1、0-8、0-10,以及 STOMP、MQTT、HTTP 等。
-
多种语言客户端库:提供多种编程语言的客户端库,如 Java、.NET、Ruby、Python、PHP、JavaScript 等。
1.2 使用场景
- 解耦:将生产者和消费者解耦,使得它们可以独立地开发和部署。
- 扩展性:通过增加消费者的数量来处理更多的消息。
- 弹性:在消费者处理能力不足时,消息可以排队等待处理。
- 消息持久化:确保消息不会因为系统故障而丢失。
- 优先级消息:支持不同优先级的消息,使得重要消息可以优先处理。
1.3 与其他消息队列系统相比
-
与 Kafka 比较:Kafka 更注重高吞吐量的消息处理,适合用于大数据处理和日志聚合。而 RabbitMQ 提供了更丰富的消息路由功能和多种协议支持,适合需要复杂路由和多协议支持的场景 。
-
与 RocketMQ 比较:RocketMQ 也是高性能的分布式消息队列,但它更注重于延时消息和大规模消息处理。RabbitMQ 的社区支持和成熟度较高,适用于多种消息传递场景 。
-
与 ActiveMQ 比较:ActiveMQ 是 Apache 下的消息队列,与 RabbitMQ 相比,ActiveMQ 的社区活跃度和成熟度较低,但也是一个稳定的消息队列解决方案 。
2.安装依赖包
2.1 安装所需依赖包
yum install gcc glibc-devel make ncurses-devel openssl-devel xmlto
yum install fop.noarch
yum -y install ncurses-devel
yum -y install openssl-devel
yum -y install unixODBC-devel
yum -y install gcc-c++
yum install gtk2-devel.x86_64
yum -y install gtk2-devel binutils-devel
yum install mesa-libGL-devel mesa-libGLU-devel
yum install fop.noarch
2.2 安装 wxWidgets
wget https://netix.dl.sourceforge.net/project/wxwindows/3.0.1/wxWidgets-3.0.1.tar.bz2bzip2 -dkv wxWidgets-3.0.1.tar.bz2tar -xvf wxWidgets-3.0.1.tarcd wxWidgets-3.0.1/./configure --with-opengl --enable-debug --enable-unicodemake make install
3. 安装Erlang环境
3.1 Erlang包下载
wget -c http://erlang.org/download/otp_src_20.2.tar.gz
3.2 编译安装
tar -zxvf otp_src_20.2.tar.gz
cd otp_src_20.2/#出现no java compile found 加入--without-javac./configure --prefix=/usr/local/erlang --without-javac
make
make install
3.3 测试是否成功安装
cd /usr/local/erlang/bin/
./erl
halt(). #成功后退出
3.4 配置环境变量
#将 /usr/local/erlang/bin 加到后面,用:隔开
vi /root/.bash_profile
PATH=$PATH:$HOME/bin:/usr/local/erlang/bin
#重启
source /root/.bash_profile
4. RabbitMQ安装
4.1 下载最新安装包
wget -c http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.15/rabbitmq-server-generic-unixxz-3.6.15.tar.xz
4.2 编译安装
xz -d rabbitmq-server-generic-unix-3.6.15.tar.xz
tar -xvf rabbitmq-server-generic-unix-3.6.15.tar
cp -r ./rabbitmq_server-3.6.15 /usr/local/rabbitmpServer
4.3 加入环境变量
export PATH=$PATH:/usr/local/rabbitmq_server-3.6.15/sbin
4.4 rabbitmq操作指令
启动:rabbitmq-server -detached
关闭:rabbitmqctl stop
状态:rabbitmqctl status
4.5 开机启动
在/etc/init.d 目录下新建一个 rabbitmq
#!/bin/bash
#
# chkconfig: 2345 80 05
# description: rabbitmq
# processname: rabbitmq#RabbitMQ安装目录
RABBITMQ_HOME=/usr/local/rabbitmpServer
export RABBITMQ_HOMEcase "$1" instart)echo "Starting RabbitMQ ..."cd $RABBIT_HOME/sbinrabbitmq-server;;
stop)echo "Stopping RabbitMQ ..."cd $RABBIT_HOME/sbinrabbitmqctl stop;;
status)echo "Status RabbitMQ ..."cd $RABBIT_HOME/sbinrabbitmqctl status;;
restart)echo "Restarting RabbitMQ ..."cd $RABBIT_HOME/sbinrabbitmq-server;;*)echo "Usage: $prog {start|stop|status|restart}";;
esac
exit 0
4.6 配置rabbitmq网页管理插件
默认来宾用户:guest, 来宾用户密码:guest
rabbitmq-plugins enable rabbitmq_management
http://192.168.?.?:15672 端口默认为15672

5. rabbitmq常用命令
查看状态
查看节点状态:rabbitmqctl status
查看节点详细信息:rabbitmqctl status -p
管理用户
添加用户:rabbitmqctl add_user username password
删除用户:rabbitmqctl delete_user username
设置用户权限:rabbitmqctl set_permissions -p vhost user "configure,write,read"
查看用户列表:rabbitmqctl list_users
管理队列
查看所有队列:rabbitmqctl list_queues
查看队列详细信息:rabbitmqctl list_queues -p vhost_name
删除队列:rabbitmqctl delete_queue vhost_name queue_name
清除队列消息:rabbitmqctl purge_queue vhost_name queue_name
管理权限
设置用户权限:rabbitmqctl set_permissions -p vhost user "configure,write,read" "resource"
查看用户权限:rabbitmqctl list_user_permissions user
管理交换器
查看所有交换器:rabbitmqctl list_exchanges
查看交换器详细信息:rabbitmqctl list_exchanges -p vhost_name
删除交换器:rabbitmqctl delete_exchange vhost_name exchange_name
管理绑定
查看绑定:rabbitmqctl list_bindings
查看特定交换器的绑定:rabbitmqctl list_bindings -p vhost_name e exchange_name
插件管理
启用插件:rabbitmq-plugins enable plugin_name
禁用插件:rabbitmq-plugins disable plugin_name
查看已启用的插件:rabbitmq-plugins list
6.最后
感谢大家,请大家多多支持!
相关文章:
Linux安装RabbitMQ安装
1. RabbitMQ介绍 1.1 RabbitMQ关键特性 异步消息传递:允许应用程序在不直接进行网络调用的情况下交换消息。 可靠性:支持消息持久化,确保消息不会在系统故障时丢失。 灵活的路由:支持多种路由选项,包括直接、主题、…...
SpringBoot驱动的社区医院信息管理平台
1系统概述 1.1 研究背景 随着计算机技术的发展以及计算机网络的逐渐普及,互联网成为人们查找信息的重要场所,二十一世纪是信息的时代,所以信息的管理显得特别重要。因此,使用计算机来管理社区医院信息平台的相关信息成为必然。开发…...
MyBatis-Plus如何分页查询?
MyBatis-Plus提供了一种简单而强大的分页查询功能,可以通过使用Page对象和Mapper接口中的方法来实现。以下是分页查询的基本步骤: 添加分页插件依赖 确保你的项目中已经添加了MyBatis-Plus的分页插件依赖。 <dependency><groupId>com.bao…...
云原生之容器编排实践-OpenEuler23.09离线安装Kubernetes与KubeSphere
背景 有互联网的日子确实美好,不过有时候,仅仅是有时候,你可能会面临离线部署 Kubernetes 与 KubeSphere 集群的要求。。 我们借助由青云开源的容器平台, KubeSphere 来进行可视化的服务部署。 KubeSphere 是在 Kubernetes 之上…...
构建企业数字化转型的战略基石——TOGAF框架的深度解析
数字化时代的企业变革需求 在全球范围内,数字化转型已成为企业提高竞争力、优化运营流程、提升客户体验的核心战略。数字技术的迅猛发展,不仅改变了传统行业的运作模式,也迫使企业重新思考其业务架构和技术基础设施。TOGAF(The O…...
docker -私有镜像仓库 - harbor安装
文章目录 1、镜像仓库简介2、Harbor简介3、下载与安装3.1、下载3.2、安装3.2.1、上传harbor-offline-installer-v2.8.2.tgz到虚拟机中解压并修改配置文件3.2.2、解压tgz包3.2.3、切换到解压缩后的目录下3.2.4、准备配置文件3.2.5、修改配置文件 4、启动Harbor5、启动关闭命令6、…...
头号积木玩家——软件工程专业职业生涯规划报告
说明:本报告为博主在浙江科技学院(现浙江科技大学)就读软件工程本科专业时,在必修课程《计算机导论》中撰写的报告。(报告主体2021年11月定稿,有删改) 标题说明:在电影《头号玩家》…...
Redis(初步认识和安装)
初识Redis 认识NoSQLSQL结构化:structure关联的:RelationalSQL查询ACID NoSQL非结构化无关联的非SQLBASE 认识Redis安装Redis 认识NoSQL SQL和NoSQL比较 SQL 结构化:structure 数据库中表的字段都有固定的结构 关联的:Relati…...
计算机网络:计算机网络概述:网络、互联网与因特网的区别
文章目录 网络、互联网与因特网的区别网络分类 互联网因特网基于 ISP 的多层次结构的互连网络因特网的标准化工作因特网管理机构因特网的组成 网络、互联网与因特网的区别 若干节点和链路互连形成网络,若干网络通过路由器互连形成互联网 互联网是全球范围内的网络…...
网络编程套接字TCP
前集回顾 上一篇博客中我们写了一个UDP的echo server,是一个回显服务器:请求是啥,响应就是啥 一个正常的服务器,要做三个事情: 读取请求并解析根据请求,计算响应把响应写回到客户端 DatagramPacket res…...
Git
Git-2.34.1-64-bitGit-2.34.1-64-bitTortoiseGit-2.4.0.2-64bitTortoiseGit-LanguagePack-2.4.0.0-64bit-zh_CN 下载Git-2.34.1-64-bit、TortoiseGit-2.4.0.2-64bit、TortoiseGit-LanguagePack-2.4.0.0-64bit-zh_CN,依次安装。 # 配置本地Git的用户名与邮箱 git c…...
【日常记录】现在遇到的Y7000P亮度无法调节问题,无需改动注册表进行调整的方法。
1、winR 2、输入:services.msc 3、找到下面红框内的服务 4、右键后,点击重启任务,重启任务后,再次按热键即可恢复亮度调节。...
ubuntu20.04.6 触摸屏一体机,外接视频流盒子开机输入登录密码触屏失灵问题解决方法
1. 首先直接运行xrandr命令,查看设备的相关信息: 运行之后会显示当前连接设备的屏幕信息,如下图,LVDS和VGA-0,而HDMI屏幕为disconnect,意为没有连接: 2. 设置开机主屏幕显示: xrand…...
师生健康信息管理:SpringBoot技术指南
第3章 系统分析 3.1 需求分析 师生健康信息管理系统主要是为了提高工作人员的工作效率和更方便快捷的满足用户,更好存储所有数据信息及快速方便的检索功能,对系统的各个模块是通过许多今天的发达系统做出合理的分析来确定考虑用户的可操作性,…...
手机/平板端 Wallpaper 动态壁纸文件获取及白嫖使用指南
Wallpaper 动态壁纸文件获取及使用指南 目录 壁纸文件获取手机 / 平板使用手机 / 平板效果预览注意事项PC/Mac 使用 1. 壁纸文件获取链接 链接:夸克网盘分享 复制链接到浏览器打开并转存下载即可。 (主页往期视频的 4K 原图和 mpkg 动态壁纸文件…...
【软件工程】模块化思想概述
一、定义 模块化(modularization),也称为模组化,是产品设计以及项目管理中被广泛使用的一种设计理念。 模块化是指解决一个复杂问题时自顶向下逐层把系统划分成若干模块的过程,有多种属性,分别反映其内部…...
解决方案:机器学习中,出现欠拟合和过拟合,这两种情况分别如何解决
文章目录 一、现象二、解决方案欠拟合(Underfitting)过拟合(Overfitting) 一、现象 在工作中,在机器学习中,出现欠拟合和过拟合的时候,需要有对应的解决方法,所以整理一下 二、解决…...
腾讯 25 届秋招算法工程师面经
最近已有不少大厂都在秋招宣讲了,也有一些在 Offer 发放阶段。 节前,我们邀请了一些互联网大厂朋友、今年参加社招和校招面试的同学。 针对新手如何入门算法岗、该如何准备面试攻略、面试常考点、大模型技术趋势、算法项目落地经验分享等热门话题进行了…...
MySQL 实验1:Windows 环境下 MySQL5.5 安装与配置
MySQL 实验1:Windows 环境下 MySQL5.5 安装与配置 目录 MySQL 实验1:Windows 环境下 MySQL5.5 安装与配置一、MySQL 软件的下载二、安装 MySQL三、配置 MySQL1、配置环境变量2、安装并启动 MySQL 服务3、设置 MySQL 字符集4、为 root 用户设置登录密码 一…...
开源黑科技!Fish Speech TTS模型完美支持8种语言
开源黑科技!Fish Speech TTS模型完美支持8种语言 Fish Speech是一款神奇的AI语音克隆工具🎤,可快速模仿用户声音,支持八种语言🌍,简单易用,适合所有人👶。它在客服、新闻播报和在线…...
Linux应用开发之网络套接字编程(实例篇)
服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …...
Appium+python自动化(十六)- ADB命令
简介 Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利,如安装和调试…...
MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例
一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...
(二)原型模式
原型的功能是将一个已经存在的对象作为源目标,其余对象都是通过这个源目标创建。发挥复制的作用就是原型模式的核心思想。 一、源型模式的定义 原型模式是指第二次创建对象可以通过复制已经存在的原型对象来实现,忽略对象创建过程中的其它细节。 📌 核心特点: 避免重复初…...
微服务商城-商品微服务
数据表 CREATE TABLE product (id bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 商品id,cateid smallint(6) UNSIGNED NOT NULL DEFAULT 0 COMMENT 类别Id,name varchar(100) NOT NULL DEFAULT COMMENT 商品名称,subtitle varchar(200) NOT NULL DEFAULT COMMENT 商…...
让AI看见世界:MCP协议与服务器的工作原理
让AI看见世界:MCP协议与服务器的工作原理 MCP(Model Context Protocol)是一种创新的通信协议,旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天,MCP正成为连接AI与现实世界的重要桥梁。…...
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南 在数字化营销时代,邮件列表效度、用户参与度和网站性能等指标往往决定着创业公司的增长成败。今天,我们将深入解析邮件打开率、网站可用性、页面参与时…...
AspectJ 在 Android 中的完整使用指南
一、环境配置(Gradle 7.0 适配) 1. 项目级 build.gradle // 注意:沪江插件已停更,推荐官方兼容方案 buildscript {dependencies {classpath org.aspectj:aspectjtools:1.9.9.1 // AspectJ 工具} } 2. 模块级 build.gradle plu…...
VM虚拟机网络配置(ubuntu24桥接模式):配置静态IP
编辑-虚拟网络编辑器-更改设置 选择桥接模式,然后找到相应的网卡(可以查看自己本机的网络连接) windows连接的网络点击查看属性 编辑虚拟机设置更改网络配置,选择刚才配置的桥接模式 静态ip设置: 我用的ubuntu24桌…...
JS手写代码篇----使用Promise封装AJAX请求
15、使用Promise封装AJAX请求 promise就有reject和resolve了,就不必写成功和失败的回调函数了 const BASEURL ./手写ajax/test.jsonfunction promiseAjax() {return new Promise((resolve, reject) > {const xhr new XMLHttpRequest();xhr.open("get&quo…...
