RabbitMQ快速入门 - 图像化界面的简单操作

目录

1、RabbitMQ的安装

2、RabbitMQ基本介绍

3、简单案例

4、数据隔离


1、RabbitMQ的安装

  • 官网链接:rabbitmq官网  (官网很详细,也可以在官网学习啦~)
    • 基础入门:
    • 自主学习:
    • 最新版本:
  • 安装我们是采取docker安装~
    • 安装命令:
      docker run -d --name mq \
       --restart=always \
       -e RABBITMQ_DEFAULT_USER=root \
       -e RABBITMQ_DEFAULT_PASS=1111 \
       -v ~/env/rabbitmq/lib:/var/lib/rabbitmq \
       -v ~/env/rabbitmq/log:/var/log/rabbitmq \
       -p 15672:15672 \
       -p 5672:5672 \
       rabbitmq:3.8-management
    • 命令解释:
      • docker run :创建并运行容器 ; -d:后台运行容器 ;
      • name:给容器起的名字; restart = always容器一直运行着
      • -e:是设置环境变量;第一个-e后面是设置了一个用户名root;第二个-e后面是设置了一个密码1111
      • -v:数据卷挂载;就是把rabbitmq下的目录映射到本机目录下的某个问题;
      • -p:端口映射;15672:控制台端口 - 图形化界面;5672:消息通信的端口
      • 最后一行是镜像名及版本号 (docker听不懂的可以去看我的docker专栏~)
    •  检查是否启动成功:
      • docker ps:
      • 浏览器访问:
        • 上述使用你命令中设置的用户名和密码进行登录就可以了~ 登陆成功后的页面:
    • 图形化界面解释:
      • 总览:就是大致的一些基本情况,后面遇到了在解释(其实很多字面意思大家都能理解什么意思)
      • 连接:发消息的人和收消息的人都是需要和rabbitmq建立连接的,在这里面进行连接操作
      • 通道:发消息使用的通道(例如你妈打电话叫你回家吃饭,这个手机就是一个通道)
      • 交换机、队列:文章下面会有解释
      • 管理员:就是一些用户管理相关的一些操作~

2、RabbitMQ基本介绍

 RabbitMQ的整体架构及核心概念:

  • publisher:消息发送者
  • consumer:消息的消费者
  • queue:队列、存储消息
  • exchange:交换机,负责路由消息
  • virtual-host:虚拟主机,起到数据隔离的作用

结合图来理解:

上图的解释:

  • 消息发送者不是直接把消息塞到队列中,而是先把消息发到交换机,由交换机把消息路由到队列中;
  • 由上图可以发现交换机可以只路由给一个队列,也可以路由给所有队列;
  • 消费者监听队列,就可以拿到消息了~
  • RabbitMQ的服务端(消息代理)就包括了交换机和队列两部分 ~
  • 虚拟主机怎么理解:RabbitMQ的并发量很高,就可以支持多个项目都在同一套RabbitMQ服务下,但这么多项目中的交换机和队列就可能会有冲突,为了解决这种冲突就提出了数据隔离,类似于一个数据库服务器下有多个Database,各个Database间是数据隔离的~

3、简单案例

 需求:在RabbitMQ的控制台(浏览器上的图形化界面)完成以下操作:

  •  新建队列hello.q1和hello.q2
  • 向默认的amp.fanout交换机发送一条消息
  • 查看消息是否到达hello.q1和hello.q2

步骤一:新建队列hello.q1和hello.q2

步骤二:向默认的amp.fanout交换机发送一条消息

报错了:

        报错原因:消息发送了,但是没有路由~ 回顾我们前面说的,消息发送者把消息发给交换机,交换机把消息路由到队列中,所以报错就是我们没有配置这个路由呢~

        解决:

然后我们再去发送消息,绑定了的队列就可以收到消息了,如下:

小结:

  • 交换机和队列绑定后才可以发消息,交换机不能存储消息,只能路由和转发消息

4、数据隔离

4.1、添加虚拟主机

前面提到了虚拟主机(类似于数据库中的Database),如何添加虚拟主机?操作如下:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/779434.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【3D->2D转换(1)】LSS(提升,投放,捕捉)

Lift, Splat, Shoot 这是一个端到端架构,直接从任意数量的摄像头数据提取给定图像场景的鸟瞰图表示。将每个图像分别“提升(lift)”到每个摄像头的视锥(frustum),然后将所有视锥“投放(splat&a…

ubuntu下载Nginx

一、Nginx下载安装(Ubuntu系统) 1.nginx下载 sudo apt-get install nginx2.nginx启动 启动命令 sudo nginx重新编译(每次更改完nginx配置文件后运行): sudo nginx -s reload3.测试nginx是否启动成功 打开浏览器访问本机80端口…

【Python进阶】函数的扩展

函数 目录 函数 一、容器知识补充 1、字典遍历方法 2、遍历字典元素 keys()方法: values()方法: items()方法: 3、公共运算符 4、公共方法 二、函数介绍 1、函数的概念 2、引入函数 3、函数定义与调用 4、函数的参数 5、函数…

[Leetcode 128][Medium] 最长连续序列

目录 题目描述 整体思路 具体代码 题目描述 原题链接 整体思路 首先看到找连续升序排序的最长序列长度,想到对数组进行排序预处理。但是排序算法时间复杂度需要O(nlogn),题目要求时间复杂度为O(n)。因此不能进行排序与处理 接着想到数据结构哈希表&a…

3ds Max渲染曝光过度怎么办?

3dmax效果图云渲染平台——渲染100 以3ds Max 2025、VR 6.2、CR 11.2等最新版本为基础,兼容fp、acescg等常用插件,同时LUT滤镜等参数也得到了同步支持。 注册填邀请码【7788】可领30元礼包和免费渲染券哦~ 遇到3ds Max渲染过程中曝光过度的问题&#xf…

【文献解析】一种像素级的激光雷达相机配准方法

大家好呀,我是一个SLAM方向的在读博士,深知SLAM学习过程一路走来的坎坷,也十分感谢各位大佬的优质文章和源码。随着知识的越来越多,越来越细,我准备整理一个自己的激光SLAM学习笔记专栏,从0带大家快速上手激…

openssh版本升级实战(修补ssh漏洞)基于RedHat8.4版本测试--已成功升级

升级前具有漏洞的的版本 通过命令查看目前系统的ssh和sshd版本: ssh -V sshd -V 注意:由于ssh是远程连接服务器的功能,在进行下面操作升级openssh前,请打开多个连接会话保持,如升级失败,可通过已连接的会话…

C#——密封类详情

密封类 密封类是密封方法的扩展,用于确保某个类不会被继承。在C#中,你可以使用sealed关键字来声明一个密封类。 public sealed class SealedClass {// 类成员定义 } 如果使用密封类继承的话,程序会报错!!&#xff0…

windows server2016搭建AD域服务器

文章目录 一、背景二、搭建AD域服务器步骤三、生成可供java程序使用的keystore文件四、导出某用户的keytab文件五、主机配置hosts文件六、主机确认是否能ping通本人其他相关文章链接 一、背景 亲测可用,之前搜索了很多博客,啥样的都有,就是不介绍报错以…

02浅谈大模型文本生成的背后逻辑

02浅谈大语言模型文本生成的背后逻辑 两个概念: 通俗理解大模型文本生成逻辑 假设有一个prompt:How are you ?,输入给大模型,那么大模型使怎么输出?

nginx 主备server自动切换配置

nginx.conf 配置详情: #user nobody; worker_processes 1;error_log logs/error.log;events {worker_connections 1024; }http {include mime.types;default_type application/octet-stream;client_max_body_size 2048m; # 设置最大上传限制为5Gproxy_b…

锂电池寿命预测 | Matlab基于改进的遗传算法优化BP神经网络的锂离子电池健康状态SOH估计

目录 预测效果基本介绍程序设计参考资料 预测效果 基本介绍 主要流程如下: 1、首先提取“放电截止电压时间”作为锂电池间接健康因子; 2、然后引入改进的遗传算法对BP神经网络的模型参数进行优化。 3、最后 NASA 卓越预测中心的锂电池数据集 B0005、B0006、B0007对…

【实战项目】:电商网站数据抓取分析||电商API数据采集

导语:在电商行业,了解市场动态和竞争对手的信息非常重要。通过抓取电商网站上的商品数据,我们可以进行市场分析、价格监控和产品趋势研究。本文将介绍如何构建一个系统,自动化抓取电商网站上的商品数据,并进行分析。 …

windows下编译ffmpeg 最详细教程

1 Ffmpeg下载地址:FFmpeg 使用命令下载 git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg 下载完成后会发现如下目录: 2 msys2下载地址:MSYS2 解压好后,选择一个非空路径安装,安装好后路径如下: 为…

短视频商城系统源码揭秘:架构设计与实现

在短视频平台和电商平台蓬勃发展的背景下,短视频商城系统应运而生,融合了短视频内容和电商功能,给用户带来了全新的购物体验。本文将揭示短视频商城系统的源码架构设计与实现,帮助开发者了解该系统的内部工作原理及其关键技术。 …

【密码学】密码学体系

密码学体系是信息安全领域的基石,它主要分为两大类:对称密码体制和非对称密码体制。 一、对称密码体制(Symmetric Cryptography) 在对称密码体制中,加密和解密使用相同的密钥。这意味着发送方和接收方都必须事先拥有这…

QT使用QGraphicsView绘图 重写QGraphicsObject类实现点在QPainterPath路径上移动动画效果

闲谈:眨眼间,2024年就过去了一半了,年前定下的计划一个都没完成,也是废了。天天刷龙王CP,倒是看得很开心。乘着有空,把之前学习的内容和示例先总结了。 目录 导读SVG 转QPainterPath 路径获取QPainterPath指…

FPGA_GTX:简要版

1. GTX介绍 Xilinx FPGA的GT意思是Gigabyte Transceiver。通常称呼为Serdes、高速收发器。GT在xilinx不同系列有着不同的产品,从7系列到UltraScale系列分别有GTP、GTX、GTZ、GTH、GTY和GTM。不同GT整体结构上类似,为了支持越来越高的line rate&#xff…

【HTML】-解决页面内容无法选择、复制问题

目录 1、网页内容无法选中 1.1、问题原因 1.2、解决脚本 1.2.1、开启控制台窗口 1.2.2、执行脚本命令 2、内容复制弹出阻止框 2.2、解决脚本 1、网页内容无法选中 1.1、问题原因 今天在访问某一网站平台,需要将内容进行选择、复制时发现不可使用。 在使用…

单选多选提交问卷,代码示例

element中 需要对接口返回的数据进行分析。多选问题使用checkbox,单选题使用radio。 多选时可以绑定min/ma&am…